@importcsv/react 0.4.0 → 0.4.1
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/build/react/index.esm.js +5479 -3499
- package/build/react/index.esm.js.map +1 -1
- package/build/react/index.js +49 -36
- package/build/react/index.js.map +1 -1
- package/package.json +1 -1
package/build/react/index.js
CHANGED
|
@@ -1,102 +1,115 @@
|
|
|
1
|
-
(function(){"use strict";try{if(typeof document<"u"){var t=document.createElement("style");t.appendChild(document.createTextNode(`@import"https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,100..1000;1,9..40,100..1000&family=Geist:wght@100;200;300;400;500;600;700;800;900&family=Plus+Jakarta+Sans:wght@200;300;400;500;600;700;800&display=swap";.importcsv *,.importcsv :before,.importcsv :after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.importcsv ::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.importcsv *,.importcsv :before,.importcsv :after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}.importcsv :before,.importcsv :after{--tw-content: ""}.importcsv,.importcsv :host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Geist,Plus Jakarta Sans,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}.importcsv{margin:0;line-height:inherit}.importcsv hr{height:0;color:inherit;border-top-width:1px}.importcsv abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.importcsv h1,.importcsv h2,.importcsv h3,.importcsv h4,.importcsv h5,.importcsv h6{font-size:inherit;font-weight:inherit}.importcsv a{color:inherit;text-decoration:inherit}.importcsv b,.importcsv strong{font-weight:bolder}.importcsv code,.importcsv kbd,.importcsv samp,.importcsv pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}.importcsv small{font-size:80%}.importcsv sub,.importcsv sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.importcsv sub{bottom:-.25em}.importcsv sup{top:-.5em}.importcsv table{text-indent:0;border-color:inherit;border-collapse:collapse}.importcsv button,.importcsv input,.importcsv optgroup,.importcsv select,.importcsv textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}.importcsv button,.importcsv select{text-transform:none}.importcsv button,.importcsv input:where([type=button]),.importcsv input:where([type=reset]),.importcsv input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}.importcsv :-moz-focusring{outline:auto}.importcsv :-moz-ui-invalid{box-shadow:none}.importcsv progress{vertical-align:baseline}.importcsv ::-webkit-inner-spin-button,.importcsv ::-webkit-outer-spin-button{height:auto}.importcsv [type=search]{-webkit-appearance:textfield;outline-offset:-2px}.importcsv ::-webkit-search-decoration{-webkit-appearance:none}.importcsv ::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}.importcsv summary{display:list-item}.importcsv blockquote,.importcsv dl,.importcsv dd,.importcsv h1,.importcsv h2,.importcsv h3,.importcsv h4,.importcsv h5,.importcsv h6,.importcsv hr,.importcsv figure,.importcsv p,.importcsv pre{margin:0}.importcsv fieldset{margin:0;padding:0}.importcsv legend{padding:0}.importcsv ol,.importcsv ul,.importcsv menu{list-style:none;margin:0;padding:0}.importcsv dialog{padding:0}.importcsv textarea{resize:vertical}.importcsv input::-moz-placeholder,.importcsv textarea::-moz-placeholder{opacity:1;color:#9ca3af}.importcsv input::placeholder,.importcsv textarea::placeholder{opacity:1;color:#9ca3af}.importcsv button,.importcsv [role=button]{cursor:pointer}.importcsv :disabled{cursor:default}.importcsv img,.importcsv svg,.importcsv video,.importcsv canvas,.importcsv audio,.importcsv iframe,.importcsv embed,.importcsv object{display:block;vertical-align:middle}.importcsv img,.importcsv video{max-width:100%;height:auto}.importcsv [hidden]:where(:not([hidden=until-found])){display:none}.importcsv{font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5;color:#0f172a}.importcsv *{box-sizing:border-box}.importcsv .container{width:100%}@media (min-width: 640px){.importcsv .container{max-width:640px}}@media (min-width: 768px){.importcsv .container{max-width:768px}}@media (min-width: 1024px){.importcsv .container{max-width:1024px}}@media (min-width: 1280px){.importcsv .container{max-width:1280px}}@media (min-width: 1536px){.importcsv .container{max-width:1536px}}.importcsv .csv-importer{--background: 0 0% 100%;--foreground: 222.2 84% 4.9%;--card: 0 0% 100%;--card-foreground: 222.2 84% 4.9%;--popover: 0 0% 100%;--popover-foreground: 222.2 84% 4.9%;--primary: 221.2 83.2% 53.3%;--primary-foreground: 210 40% 98%;--secondary: 210 40% 96.1%;--secondary-foreground: 222.2 47.4% 11.2%;--muted: 210 40% 96.1%;--muted-foreground: 215.4 16.3% 46.9%;--accent: 210 40% 96.1%;--accent-foreground: 222.2 47.4% 11.2%;--destructive: 0 84.2% 60.2%;--destructive-foreground: 210 40% 98%;--border: 214.3 31.8% 91.4%;--input: 214.3 31.8% 91.4%;--ring: 221.2 83.2% 53.3%;--radius: .5rem;--color-primary: #2563eb;--color-primary-foreground: #ffffff;--color-secondary: #f3f4f6;--color-secondary-foreground: #111827;--color-border: #e5e7eb;--color-background: #ffffff;--color-text: #111827;--color-error: #ef4444;--color-error-foreground: #ffffff;--color-muted: #f3f4f6;--color-muted-foreground: #6b7280;--color-accent: #f3f4f6;--color-accent-foreground: #111827}.importcsv .csv-importer[data-theme=dark]{--background: 222.2 84% 4.9%;--foreground: 210 40% 98%;--card: 222.2 84% 4.9%;--card-foreground: 210 40% 98%;--popover: 222.2 84% 4.9%;--popover-foreground: 210 40% 98%;--primary: 217.2 91.2% 59.8%;--primary-foreground: 222.2 47.4% 11.2%;--secondary: 217.2 32.6% 17.5%;--secondary-foreground: 210 40% 98%;--muted: 217.2 32.6% 17.5%;--muted-foreground: 215 20.2% 65.1%;--accent: 217.2 32.6% 17.5%;--accent-foreground: 210 40% 98%;--destructive: 0 62.8% 30.6%;--destructive-foreground: 210 40% 98%;--border: 217.2 32.6% 17.5%;--input: 217.2 32.6% 17.5%;--ring: 224.3 76.3% 48%}.importcsv .not-sr-only{position:static;width:auto;height:auto;padding:0;margin:0;overflow:visible;clip:auto;white-space:normal}.importcsv .pointer-events-none{pointer-events:none}.importcsv .pointer-events-auto{pointer-events:auto}.importcsv .visible{visibility:visible}.importcsv .invisible{visibility:hidden}.importcsv .collapse{visibility:collapse}.importcsv .static{position:static}.importcsv .fixed{position:fixed}.importcsv .absolute{position:absolute}.importcsv .relative{position:relative}.importcsv .sticky{position:sticky}.importcsv .inset-0{inset:0}.importcsv .bottom-0{bottom:0}.importcsv .bottom-full{bottom:100%}.importcsv .left-0{left:0}.importcsv .left-1\\/2{left:50%}.importcsv .left-2{left:.5rem}.importcsv .left-3{left:.75rem}.importcsv .left-4{left:1rem}.importcsv .left-full{left:100%}.importcsv .right-0{right:0}.importcsv .right-2{right:.5rem}.importcsv .right-3{right:.75rem}.importcsv .right-4{right:1rem}.importcsv .right-full{right:100%}.importcsv .top-0{top:0}.importcsv .top-1{top:.25rem}.importcsv .top-1\\/2{top:50%}.importcsv .top-2{top:.5rem}.importcsv .top-4{top:1rem}.importcsv .top-auto{top:auto}.importcsv .top-full{top:100%}.importcsv .isolate{isolation:isolate}.importcsv .isolation-auto{isolation:auto}.importcsv .-z-10{z-index:-10}.importcsv .z-10{z-index:10}.importcsv .z-20{z-index:20}.importcsv .z-40{z-index:40}.importcsv .z-50{z-index:50}.importcsv .z-\\[100\\]{z-index:100}.importcsv .z-\\[101\\]{z-index:101}.importcsv .m-1{margin:.25rem}.importcsv .-mx-1{margin-left:-.25rem;margin-right:-.25rem}.importcsv .mx-2{margin-left:.5rem;margin-right:.5rem}.importcsv .mx-3{margin-left:.75rem;margin-right:.75rem}.importcsv .mx-4{margin-left:1rem;margin-right:1rem}.importcsv .mx-6{margin-left:1.5rem;margin-right:1.5rem}.importcsv .mx-auto{margin-left:auto;margin-right:auto}.importcsv .my-1{margin-top:.25rem;margin-bottom:.25rem}.importcsv .my-4{margin-top:1rem;margin-bottom:1rem}.importcsv .my-8{margin-top:2rem;margin-bottom:2rem}.importcsv .-ml-1{margin-left:-.25rem}.importcsv .-ml-px{margin-left:-1px}.importcsv .mb-1{margin-bottom:.25rem}.importcsv .mb-12{margin-bottom:3rem}.importcsv .mb-2{margin-bottom:.5rem}.importcsv .mb-3{margin-bottom:.75rem}.importcsv .mb-4{margin-bottom:1rem}.importcsv .mb-6{margin-bottom:1.5rem}.importcsv .mb-8{margin-bottom:2rem}.importcsv .ml-1{margin-left:.25rem}.importcsv .ml-1\\.5{margin-left:.375rem}.importcsv .ml-2{margin-left:.5rem}.importcsv .mr-2{margin-right:.5rem}.importcsv .mt-0{margin-top:0}.importcsv .mt-0\\.5{margin-top:.125rem}.importcsv .mt-1{margin-top:.25rem}.importcsv .mt-12{margin-top:3rem}.importcsv .mt-2{margin-top:.5rem}.importcsv .mt-3{margin-top:.75rem}.importcsv .mt-4{margin-top:1rem}.importcsv .mt-6{margin-top:1.5rem}.importcsv .box-border{box-sizing:border-box}.importcsv .line-clamp-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.importcsv .block{display:block}.importcsv .inline-block{display:inline-block}.importcsv .inline{display:inline}.importcsv .flex{display:flex}.importcsv .inline-flex{display:inline-flex}.importcsv .table{display:table}.importcsv .inline-table{display:inline-table}.importcsv .table-caption{display:table-caption}.importcsv .table-cell{display:table-cell}.importcsv .table-column{display:table-column}.importcsv .table-column-group{display:table-column-group}.importcsv .table-footer-group{display:table-footer-group}.importcsv .table-header-group{display:table-header-group}.importcsv .table-row-group{display:table-row-group}.importcsv .table-row{display:table-row}.importcsv .flow-root{display:flow-root}.importcsv .grid{display:grid}.importcsv .inline-grid{display:inline-grid}.importcsv .contents{display:contents}.importcsv .list-item{display:list-item}.importcsv .hidden{display:none}.importcsv .aspect-square{aspect-ratio:1 / 1}.importcsv .h-0{height:0px}.importcsv .h-0\\.5{height:.125rem}.importcsv .h-1{height:.25rem}.importcsv .h-1\\.5{height:.375rem}.importcsv .h-10{height:2.5rem}.importcsv .h-12{height:3rem}.importcsv .h-16{height:4rem}.importcsv .h-2{height:.5rem}.importcsv .h-20{height:5rem}.importcsv .h-3{height:.75rem}.importcsv .h-3\\.5{height:.875rem}.importcsv .h-4{height:1rem}.importcsv .h-5{height:1.25rem}.importcsv .h-6{height:1.5rem}.importcsv .h-7{height:1.75rem}.importcsv .h-8{height:2rem}.importcsv .h-9{height:2.25rem}.importcsv .h-\\[1px\\]{height:1px}.importcsv .h-\\[36px\\]{height:36px}.importcsv .h-auto{height:auto}.importcsv .h-fit{height:-moz-fit-content;height:fit-content}.importcsv .h-full{height:100%}.importcsv .h-px{height:1px}.importcsv .max-h-60{max-height:15rem}.importcsv .max-h-64{max-height:16rem}.importcsv .max-h-96{max-height:24rem}.importcsv .max-h-\\[300px\\]{max-height:300px}.importcsv .max-h-screen{max-height:100vh}.importcsv .min-h-0{min-height:0px}.importcsv .min-h-\\[220px\\]{min-height:220px}.importcsv .min-h-\\[320px\\]{min-height:320px}.importcsv .min-h-\\[380px\\]{min-height:380px}.importcsv .min-h-\\[400px\\]{min-height:400px}.importcsv .min-h-screen{min-height:100vh}.importcsv .w-0{width:0px}.importcsv .w-1\\.5{width:.375rem}.importcsv .w-1\\/3{width:33.333333%}.importcsv .w-10{width:2.5rem}.importcsv .w-11{width:2.75rem}.importcsv .w-12{width:3rem}.importcsv .w-16{width:4rem}.importcsv .w-2{width:.5rem}.importcsv .w-2\\/3{width:66.666667%}.importcsv .w-20{width:5rem}.importcsv .w-24{width:6rem}.importcsv .w-3{width:.75rem}.importcsv .w-3\\.5{width:.875rem}.importcsv .w-3\\/4{width:75%}.importcsv .w-4{width:1rem}.importcsv .w-5{width:1.25rem}.importcsv .w-6{width:1.5rem}.importcsv .w-8{width:2rem}.importcsv .w-\\[30\\%\\]{width:30%}.importcsv .w-\\[35\\%\\]{width:35%}.importcsv .w-full{width:100%}.importcsv .w-max{width:-moz-max-content;width:max-content}.importcsv .min-w-0{min-width:0px}.importcsv .min-w-\\[36px\\]{min-width:36px}.importcsv .min-w-\\[600px\\]{min-width:600px}.importcsv .min-w-full{min-width:100%}.importcsv .max-w-2xl{max-width:42rem}.importcsv .max-w-4xl{max-width:56rem}.importcsv .max-w-7xl{max-width:80rem}.importcsv .max-w-\\[1000px\\]{max-width:1000px}.importcsv .max-w-\\[100px\\]{max-width:100px}.importcsv .max-w-\\[1200px\\]{max-width:1200px}.importcsv .max-w-\\[120px\\]{max-width:120px}.importcsv .max-w-\\[200px\\]{max-width:200px}.importcsv .max-w-\\[250px\\]{max-width:250px}.importcsv .max-w-\\[300px\\]{max-width:300px}.importcsv .max-w-\\[320px\\]{max-width:320px}.importcsv .max-w-\\[440px\\]{max-width:440px}.importcsv .max-w-\\[660px\\]{max-width:660px}.importcsv .max-w-\\[800px\\]{max-width:800px}.importcsv .max-w-full{max-width:100%}.importcsv .max-w-lg{max-width:32rem}.importcsv .max-w-md{max-width:28rem}.importcsv .max-w-none{max-width:none}.importcsv .max-w-xs{max-width:20rem}.importcsv .flex-1{flex:1 1 0%}.importcsv .flex-shrink{flex-shrink:1}.importcsv .flex-shrink-0{flex-shrink:0}.importcsv .shrink{flex-shrink:1}.importcsv .shrink-0{flex-shrink:0}.importcsv .flex-grow,.importcsv .grow{flex-grow:1}.importcsv .border-collapse{border-collapse:collapse}.importcsv .-translate-x-1\\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.importcsv .-translate-y-1{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.importcsv .-translate-y-1\\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.importcsv .translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.importcsv .translate-x-5{--tw-translate-x: 1.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.importcsv .translate-x-full{--tw-translate-x: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.importcsv .scale-100{--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.importcsv .scale-105{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.importcsv .scale-95{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.importcsv .transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes ping{75%,to{transform:scale(2);opacity:0}}.importcsv .animate-ping{animation:ping 1s cubic-bezier(0,0,.2,1) infinite}@keyframes pulse{50%{opacity:.5}}.importcsv .animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.importcsv .animate-spin{animation:spin 1s linear infinite}.importcsv .cursor-default{cursor:default}.importcsv .cursor-help{cursor:help}.importcsv .cursor-not-allowed{cursor:not-allowed}.importcsv .cursor-pointer{cursor:pointer}.importcsv .touch-pinch-zoom{--tw-pinch-zoom: pinch-zoom;touch-action:var(--tw-pan-x) var(--tw-pan-y) var(--tw-pinch-zoom)}.importcsv .select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.importcsv .resize{resize:both}.importcsv .list-inside{list-style-position:inside}.importcsv .list-disc{list-style-type:disc}.importcsv .grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.importcsv .grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.importcsv .grid-cols-\\[320px_1fr\\]{grid-template-columns:320px 1fr}.importcsv .flex-row{flex-direction:row}.importcsv .flex-row-reverse{flex-direction:row-reverse}.importcsv .flex-col{flex-direction:column}.importcsv .flex-col-reverse{flex-direction:column-reverse}.importcsv .flex-wrap{flex-wrap:wrap}.importcsv .items-start{align-items:flex-start}.importcsv .items-end{align-items:flex-end}.importcsv .items-center{align-items:center}.importcsv .items-baseline{align-items:baseline}.importcsv .items-stretch{align-items:stretch}.importcsv .justify-start{justify-content:flex-start}.importcsv .justify-end{justify-content:flex-end}.importcsv .justify-center{justify-content:center}.importcsv .justify-between{justify-content:space-between}.importcsv .justify-around{justify-content:space-around}.importcsv .justify-evenly{justify-content:space-evenly}.importcsv .gap-0{gap:0px}.importcsv .gap-1{gap:.25rem}.importcsv .gap-1\\.5{gap:.375rem}.importcsv .gap-2{gap:.5rem}.importcsv .gap-3{gap:.75rem}.importcsv .gap-4{gap:1rem}.importcsv .gap-6{gap:1.5rem}.importcsv .gap-8{gap:2rem}.importcsv :is(.space-x-2>:not([hidden])~:not([hidden])){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.importcsv :is(.space-x-3>:not([hidden])~:not([hidden])){--tw-space-x-reverse: 0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.importcsv :is(.space-x-4>:not([hidden])~:not([hidden])){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.importcsv :is(.space-y-0>:not([hidden])~:not([hidden])){--tw-space-y-reverse: 0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}.importcsv :is(.space-y-0\\.5>:not([hidden])~:not([hidden])){--tw-space-y-reverse: 0;margin-top:calc(.125rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.125rem * var(--tw-space-y-reverse))}.importcsv :is(.space-y-1>:not([hidden])~:not([hidden])){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.importcsv :is(.space-y-1\\.5>:not([hidden])~:not([hidden])){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.importcsv :is(.space-y-2>:not([hidden])~:not([hidden])){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.importcsv :is(.space-y-3>:not([hidden])~:not([hidden])){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.importcsv :is(.space-y-4>:not([hidden])~:not([hidden])){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.importcsv :is(.space-y-6>:not([hidden])~:not([hidden])){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.importcsv :is(.space-y-reverse>:not([hidden])~:not([hidden])){--tw-space-y-reverse: 1}.importcsv :is(.space-x-reverse>:not([hidden])~:not([hidden])){--tw-space-x-reverse: 1}.importcsv :is(.divide-x>:not([hidden])~:not([hidden])){--tw-divide-x-reverse: 0;border-right-width:calc(1px * var(--tw-divide-x-reverse));border-left-width:calc(1px * calc(1 - var(--tw-divide-x-reverse)))}.importcsv :is(.divide-y>:not([hidden])~:not([hidden])){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.importcsv :is(.divide-y-reverse>:not([hidden])~:not([hidden])){--tw-divide-y-reverse: 1}.importcsv :is(.divide-x-reverse>:not([hidden])~:not([hidden])){--tw-divide-x-reverse: 1}.importcsv :is(.divide-gray-200>:not([hidden])~:not([hidden])){--tw-divide-opacity: 1;border-color:rgb(229 231 235 / var(--tw-divide-opacity, 1))}.importcsv .self-center{align-self:center}.importcsv .overflow-auto{overflow:auto}.importcsv .overflow-hidden{overflow:hidden}.importcsv .overflow-visible{overflow:visible}.importcsv .overflow-x-auto{overflow-x:auto}.importcsv .overflow-y-auto{overflow-y:auto}.importcsv .truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.importcsv .text-ellipsis{text-overflow:ellipsis}.importcsv .text-clip{text-overflow:clip}.importcsv .whitespace-normal{white-space:normal}.importcsv .whitespace-nowrap{white-space:nowrap}.importcsv .text-wrap{text-wrap:wrap}.importcsv .rounded{border-radius:.25rem}.importcsv .rounded-2xl{border-radius:1rem}.importcsv .rounded-full{border-radius:9999px}.importcsv .rounded-lg{border-radius:var(--radius)}.importcsv .rounded-md{border-radius:calc(var(--radius) - 2px)}.importcsv .rounded-sm{border-radius:calc(var(--radius) - 4px)}.importcsv .rounded-xl{border-radius:.75rem}.importcsv .rounded-b{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.importcsv .rounded-b-xl{border-bottom-right-radius:.75rem;border-bottom-left-radius:.75rem}.importcsv .rounded-e{border-start-end-radius:.25rem;border-end-end-radius:.25rem}.importcsv .rounded-l{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.importcsv .rounded-l-lg{border-top-left-radius:var(--radius);border-bottom-left-radius:var(--radius)}.importcsv .rounded-l-md{border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.importcsv .rounded-r{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.importcsv .rounded-r-md{border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.importcsv .rounded-s{border-start-start-radius:.25rem;border-end-start-radius:.25rem}.importcsv .rounded-t{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.importcsv .rounded-bl{border-bottom-left-radius:.25rem}.importcsv .rounded-br{border-bottom-right-radius:.25rem}.importcsv .rounded-ee{border-end-end-radius:.25rem}.importcsv .rounded-es{border-end-start-radius:.25rem}.importcsv .rounded-se{border-start-end-radius:.25rem}.importcsv .rounded-ss{border-start-start-radius:.25rem}.importcsv .rounded-tl{border-top-left-radius:.25rem}.importcsv .rounded-tr{border-top-right-radius:.25rem}.importcsv .border{border-width:1px}.importcsv .border-2{border-width:2px}.importcsv .border-x{border-left-width:1px;border-right-width:1px}.importcsv .border-y{border-top-width:1px;border-bottom-width:1px}.importcsv .border-b{border-bottom-width:1px}.importcsv .border-b-2{border-bottom-width:2px}.importcsv .border-e{border-inline-end-width:1px}.importcsv .border-l{border-left-width:1px}.importcsv .border-l-4{border-left-width:4px}.importcsv .border-r{border-right-width:1px}.importcsv .border-s{border-inline-start-width:1px}.importcsv .border-t{border-top-width:1px}.importcsv .border-dashed{border-style:dashed}.importcsv .border-none{border-style:none}.importcsv .border-amber-200{--tw-border-opacity: 1;border-color:rgb(253 230 138 / var(--tw-border-opacity, 1))}.importcsv .border-black{--tw-border-opacity: 1;border-color:rgb(0 0 0 / var(--tw-border-opacity, 1))}.importcsv .border-blue-100{--tw-border-opacity: 1;border-color:rgb(219 234 254 / var(--tw-border-opacity, 1))}.importcsv .border-blue-200{--tw-border-opacity: 1;border-color:rgb(191 219 254 / var(--tw-border-opacity, 1))}.importcsv .border-blue-300{--tw-border-opacity: 1;border-color:rgb(147 197 253 / var(--tw-border-opacity, 1))}.importcsv .border-blue-400{--tw-border-opacity: 1;border-color:rgb(96 165 250 / var(--tw-border-opacity, 1))}.importcsv .border-blue-50{--tw-border-opacity: 1;border-color:rgb(239 246 255 / var(--tw-border-opacity, 1))}.importcsv .border-blue-500{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.importcsv .border-blue-600{--tw-border-opacity: 1;border-color:rgb(37 99 235 / var(--tw-border-opacity, 1))}.importcsv .border-blue-700{--tw-border-opacity: 1;border-color:rgb(29 78 216 / var(--tw-border-opacity, 1))}.importcsv .border-blue-800{--tw-border-opacity: 1;border-color:rgb(30 64 175 / var(--tw-border-opacity, 1))}.importcsv .border-blue-900{--tw-border-opacity: 1;border-color:rgb(30 58 138 / var(--tw-border-opacity, 1))}.importcsv .border-destructive{border-color:hsl(var(--destructive))}.importcsv .border-destructive\\/50{border-color:hsl(var(--destructive) / .5)}.importcsv .border-gray-100{--tw-border-opacity: 1;border-color:rgb(243 244 246 / var(--tw-border-opacity, 1))}.importcsv .border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.importcsv .border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.importcsv .border-gray-400{--tw-border-opacity: 1;border-color:rgb(156 163 175 / var(--tw-border-opacity, 1))}.importcsv .border-gray-50{--tw-border-opacity: 1;border-color:rgb(249 250 251 / var(--tw-border-opacity, 1))}.importcsv .border-gray-500{--tw-border-opacity: 1;border-color:rgb(107 114 128 / var(--tw-border-opacity, 1))}.importcsv .border-gray-600{--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1))}.importcsv .border-gray-700{--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity, 1))}.importcsv .border-gray-800{--tw-border-opacity: 1;border-color:rgb(31 41 55 / var(--tw-border-opacity, 1))}.importcsv .border-gray-900{--tw-border-opacity: 1;border-color:rgb(17 24 39 / var(--tw-border-opacity, 1))}.importcsv .border-green-100{--tw-border-opacity: 1;border-color:rgb(220 252 231 / var(--tw-border-opacity, 1))}.importcsv .border-green-200{--tw-border-opacity: 1;border-color:rgb(187 247 208 / var(--tw-border-opacity, 1))}.importcsv .border-green-300{--tw-border-opacity: 1;border-color:rgb(134 239 172 / var(--tw-border-opacity, 1))}.importcsv .border-green-400{--tw-border-opacity: 1;border-color:rgb(74 222 128 / var(--tw-border-opacity, 1))}.importcsv .border-green-50{--tw-border-opacity: 1;border-color:rgb(240 253 244 / var(--tw-border-opacity, 1))}.importcsv .border-green-500{--tw-border-opacity: 1;border-color:rgb(34 197 94 / var(--tw-border-opacity, 1))}.importcsv .border-green-600{--tw-border-opacity: 1;border-color:rgb(22 163 74 / var(--tw-border-opacity, 1))}.importcsv .border-green-700{--tw-border-opacity: 1;border-color:rgb(21 128 61 / var(--tw-border-opacity, 1))}.importcsv .border-green-800{--tw-border-opacity: 1;border-color:rgb(22 101 52 / var(--tw-border-opacity, 1))}.importcsv .border-green-900{--tw-border-opacity: 1;border-color:rgb(20 83 45 / var(--tw-border-opacity, 1))}.importcsv .border-input{border-color:hsl(var(--input))}.importcsv .border-muted{border-color:hsl(var(--muted))}.importcsv .border-orange-500{--tw-border-opacity: 1;border-color:rgb(249 115 22 / var(--tw-border-opacity, 1))}.importcsv .border-primary{border-color:hsl(var(--primary))}.importcsv .border-purple-200{--tw-border-opacity: 1;border-color:rgb(233 213 255 / var(--tw-border-opacity, 1))}.importcsv .border-purple-300{--tw-border-opacity: 1;border-color:rgb(216 180 254 / var(--tw-border-opacity, 1))}.importcsv .border-purple-400{--tw-border-opacity: 1;border-color:rgb(192 132 252 / var(--tw-border-opacity, 1))}.importcsv .border-red-100{--tw-border-opacity: 1;border-color:rgb(254 226 226 / var(--tw-border-opacity, 1))}.importcsv .border-red-200{--tw-border-opacity: 1;border-color:rgb(254 202 202 / var(--tw-border-opacity, 1))}.importcsv .border-red-300{--tw-border-opacity: 1;border-color:rgb(252 165 165 / var(--tw-border-opacity, 1))}.importcsv .border-red-400{--tw-border-opacity: 1;border-color:rgb(248 113 113 / var(--tw-border-opacity, 1))}.importcsv .border-red-50{--tw-border-opacity: 1;border-color:rgb(254 242 242 / var(--tw-border-opacity, 1))}.importcsv .border-red-500{--tw-border-opacity: 1;border-color:rgb(239 68 68 / var(--tw-border-opacity, 1))}.importcsv .border-red-600{--tw-border-opacity: 1;border-color:rgb(220 38 38 / var(--tw-border-opacity, 1))}.importcsv .border-red-700{--tw-border-opacity: 1;border-color:rgb(185 28 28 / var(--tw-border-opacity, 1))}.importcsv .border-red-800{--tw-border-opacity: 1;border-color:rgb(153 27 27 / var(--tw-border-opacity, 1))}.importcsv .border-red-900{--tw-border-opacity: 1;border-color:rgb(127 29 29 / var(--tw-border-opacity, 1))}.importcsv .border-slate-100{--tw-border-opacity: 1;border-color:rgb(241 245 249 / var(--tw-border-opacity, 1))}.importcsv .border-slate-200{--tw-border-opacity: 1;border-color:rgb(226 232 240 / var(--tw-border-opacity, 1))}.importcsv .border-slate-300{--tw-border-opacity: 1;border-color:rgb(203 213 225 / var(--tw-border-opacity, 1))}.importcsv .border-slate-400{--tw-border-opacity: 1;border-color:rgb(148 163 184 / var(--tw-border-opacity, 1))}.importcsv .border-transparent{border-color:transparent}.importcsv .border-yellow-200{--tw-border-opacity: 1;border-color:rgb(254 240 138 / var(--tw-border-opacity, 1))}.importcsv .border-yellow-300{--tw-border-opacity: 1;border-color:rgb(253 224 71 / var(--tw-border-opacity, 1))}.importcsv .bg-amber-50{--tw-bg-opacity: 1;background-color:rgb(255 251 235 / var(--tw-bg-opacity, 1))}.importcsv .bg-background{background-color:hsl(var(--background))}.importcsv .bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.importcsv .bg-black\\/20{background-color:#0003}.importcsv .bg-blue-100{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.importcsv .bg-blue-200{--tw-bg-opacity: 1;background-color:rgb(191 219 254 / var(--tw-bg-opacity, 1))}.importcsv .bg-blue-300{--tw-bg-opacity: 1;background-color:rgb(147 197 253 / var(--tw-bg-opacity, 1))}.importcsv .bg-blue-400{--tw-bg-opacity: 1;background-color:rgb(96 165 250 / var(--tw-bg-opacity, 1))}.importcsv .bg-blue-50{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.importcsv .bg-blue-500{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.importcsv .bg-blue-600{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.importcsv .bg-blue-700{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1))}.importcsv .bg-blue-800{--tw-bg-opacity: 1;background-color:rgb(30 64 175 / var(--tw-bg-opacity, 1))}.importcsv .bg-blue-900{--tw-bg-opacity: 1;background-color:rgb(30 58 138 / var(--tw-bg-opacity, 1))}.importcsv .bg-card{background-color:hsl(var(--card))}.importcsv .bg-destructive{background-color:hsl(var(--destructive))}.importcsv .bg-emerald-100{--tw-bg-opacity: 1;background-color:rgb(209 250 229 / var(--tw-bg-opacity, 1))}.importcsv .bg-emerald-50{--tw-bg-opacity: 1;background-color:rgb(236 253 245 / var(--tw-bg-opacity, 1))}.importcsv .bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.importcsv .bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.importcsv .bg-gray-300{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity, 1))}.importcsv .bg-gray-400{--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity, 1))}.importcsv .bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.importcsv .bg-gray-500{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity, 1))}.importcsv .bg-gray-600{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.importcsv .bg-gray-700{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.importcsv .bg-gray-800{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.importcsv .bg-gray-900{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity, 1))}.importcsv .bg-green-100{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1))}.importcsv .bg-green-200{--tw-bg-opacity: 1;background-color:rgb(187 247 208 / var(--tw-bg-opacity, 1))}.importcsv .bg-green-300{--tw-bg-opacity: 1;background-color:rgb(134 239 172 / var(--tw-bg-opacity, 1))}.importcsv .bg-green-400{--tw-bg-opacity: 1;background-color:rgb(74 222 128 / var(--tw-bg-opacity, 1))}.importcsv .bg-green-50{--tw-bg-opacity: 1;background-color:rgb(240 253 244 / var(--tw-bg-opacity, 1))}.importcsv .bg-green-500{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.importcsv .bg-green-600{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity, 1))}.importcsv .bg-green-700{--tw-bg-opacity: 1;background-color:rgb(21 128 61 / var(--tw-bg-opacity, 1))}.importcsv .bg-green-800{--tw-bg-opacity: 1;background-color:rgb(22 101 52 / var(--tw-bg-opacity, 1))}.importcsv .bg-green-900{--tw-bg-opacity: 1;background-color:rgb(20 83 45 / var(--tw-bg-opacity, 1))}.importcsv .bg-input{background-color:hsl(var(--input))}.importcsv .bg-muted{background-color:hsl(var(--muted))}.importcsv .bg-orange-50{--tw-bg-opacity: 1;background-color:rgb(255 247 237 / var(--tw-bg-opacity, 1))}.importcsv .bg-popover{background-color:hsl(var(--popover))}.importcsv .bg-primary{background-color:hsl(var(--primary))}.importcsv .bg-purple-100{--tw-bg-opacity: 1;background-color:rgb(243 232 255 / var(--tw-bg-opacity, 1))}.importcsv .bg-purple-50{--tw-bg-opacity: 1;background-color:rgb(250 245 255 / var(--tw-bg-opacity, 1))}.importcsv .bg-purple-600{--tw-bg-opacity: 1;background-color:rgb(147 51 234 / var(--tw-bg-opacity, 1))}.importcsv .bg-purple-700{--tw-bg-opacity: 1;background-color:rgb(126 34 206 / var(--tw-bg-opacity, 1))}.importcsv .bg-red-100{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.importcsv .bg-red-200{--tw-bg-opacity: 1;background-color:rgb(254 202 202 / var(--tw-bg-opacity, 1))}.importcsv .bg-red-300{--tw-bg-opacity: 1;background-color:rgb(252 165 165 / var(--tw-bg-opacity, 1))}.importcsv .bg-red-400{--tw-bg-opacity: 1;background-color:rgb(248 113 113 / var(--tw-bg-opacity, 1))}.importcsv .bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.importcsv .bg-red-50\\/70{background-color:#fef2f2b3}.importcsv .bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.importcsv .bg-red-600{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.importcsv .bg-red-700{--tw-bg-opacity: 1;background-color:rgb(185 28 28 / var(--tw-bg-opacity, 1))}.importcsv .bg-red-800{--tw-bg-opacity: 1;background-color:rgb(153 27 27 / var(--tw-bg-opacity, 1))}.importcsv .bg-red-900{--tw-bg-opacity: 1;background-color:rgb(127 29 29 / var(--tw-bg-opacity, 1))}.importcsv .bg-slate-100{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1))}.importcsv .bg-slate-200{--tw-bg-opacity: 1;background-color:rgb(226 232 240 / var(--tw-bg-opacity, 1))}.importcsv .bg-slate-300{--tw-bg-opacity: 1;background-color:rgb(203 213 225 / var(--tw-bg-opacity, 1))}.importcsv .bg-slate-50{--tw-bg-opacity: 1;background-color:rgb(248 250 252 / var(--tw-bg-opacity, 1))}.importcsv .bg-slate-50\\/80{background-color:#f8fafccc}.importcsv .bg-slate-700{--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity, 1))}.importcsv .bg-slate-800{--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity, 1))}.importcsv .bg-slate-900\\/50{background-color:#0f172a80}.importcsv .bg-transparent{background-color:transparent}.importcsv .bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.importcsv .bg-yellow-50{--tw-bg-opacity: 1;background-color:rgb(254 252 232 / var(--tw-bg-opacity, 1))}.importcsv .bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.importcsv .bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.importcsv .bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.importcsv .from-blue-500{--tw-gradient-from: #3b82f6 var(--tw-gradient-from-position);--tw-gradient-to: rgb(59 130 246 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.importcsv .from-blue-600{--tw-gradient-from: #2563eb var(--tw-gradient-from-position);--tw-gradient-to: rgb(37 99 235 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.importcsv .from-gray-50{--tw-gradient-from: #f9fafb var(--tw-gradient-from-position);--tw-gradient-to: rgb(249 250 251 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.importcsv .from-green-500{--tw-gradient-from: #22c55e var(--tw-gradient-from-position);--tw-gradient-to: rgb(34 197 94 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.importcsv .from-orange-500{--tw-gradient-from: #f97316 var(--tw-gradient-from-position);--tw-gradient-to: rgb(249 115 22 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.importcsv .from-pink-100{--tw-gradient-from: #fce7f3 var(--tw-gradient-from-position);--tw-gradient-to: rgb(252 231 243 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.importcsv .from-pink-50{--tw-gradient-from: #fdf2f8 var(--tw-gradient-from-position);--tw-gradient-to: rgb(253 242 248 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.importcsv .from-purple-50{--tw-gradient-from: #faf5ff var(--tw-gradient-from-position);--tw-gradient-to: rgb(250 245 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.importcsv .from-purple-500{--tw-gradient-from: #a855f7 var(--tw-gradient-from-position);--tw-gradient-to: rgb(168 85 247 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.importcsv .from-purple-600{--tw-gradient-from: #9333ea var(--tw-gradient-from-position);--tw-gradient-to: rgb(147 51 234 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.importcsv .from-slate-50{--tw-gradient-from: #f8fafc var(--tw-gradient-from-position);--tw-gradient-to: rgb(248 250 252 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.importcsv .from-white{--tw-gradient-from: #fff var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.importcsv .to-blue-400{--tw-gradient-to: #60a5fa var(--tw-gradient-to-position)}.importcsv .to-blue-50{--tw-gradient-to: #eff6ff var(--tw-gradient-to-position)}.importcsv .to-blue-600{--tw-gradient-to: #2563eb var(--tw-gradient-to-position)}.importcsv .to-gray-100{--tw-gradient-to: #f3f4f6 var(--tw-gradient-to-position)}.importcsv .to-green-600{--tw-gradient-to: #16a34a var(--tw-gradient-to-position)}.importcsv .to-orange-600{--tw-gradient-to: #ea580c var(--tw-gradient-to-position)}.importcsv .to-pink-500{--tw-gradient-to: #ec4899 var(--tw-gradient-to-position)}.importcsv .to-purple-100{--tw-gradient-to: #f3e8ff var(--tw-gradient-to-position)}.importcsv .to-purple-50{--tw-gradient-to: #faf5ff var(--tw-gradient-to-position)}.importcsv .to-purple-600{--tw-gradient-to: #9333ea var(--tw-gradient-to-position)}.importcsv .to-slate-100{--tw-gradient-to: #f1f5f9 var(--tw-gradient-to-position)}.importcsv .to-slate-50\\/50{--tw-gradient-to: rgb(248 250 252 / .5) var(--tw-gradient-to-position)}.importcsv .bg-clip-text{-webkit-background-clip:text;background-clip:text}.importcsv .bg-repeat{background-repeat:repeat}.importcsv .stroke-2{stroke-width:2}.importcsv .stroke-\\[2\\.5\\]{stroke-width:2.5}.importcsv .p-0{padding:0}.importcsv .p-1{padding:.25rem}.importcsv .p-1\\.5{padding:.375rem}.importcsv .p-2{padding:.5rem}.importcsv .p-3{padding:.75rem}.importcsv .p-4{padding:1rem}.importcsv .p-5{padding:1.25rem}.importcsv .p-6{padding:1.5rem}.importcsv .p-8{padding:2rem}.importcsv .px-1{padding-left:.25rem;padding-right:.25rem}.importcsv .px-10{padding-left:2.5rem;padding-right:2.5rem}.importcsv .px-2{padding-left:.5rem;padding-right:.5rem}.importcsv .px-2\\.5{padding-left:.625rem;padding-right:.625rem}.importcsv .px-3{padding-left:.75rem;padding-right:.75rem}.importcsv .px-4{padding-left:1rem;padding-right:1rem}.importcsv .px-5{padding-left:1.25rem;padding-right:1.25rem}.importcsv .px-6{padding-left:1.5rem;padding-right:1.5rem}.importcsv .px-8{padding-left:2rem;padding-right:2rem}.importcsv .py-0\\.5{padding-top:.125rem;padding-bottom:.125rem}.importcsv .py-1{padding-top:.25rem;padding-bottom:.25rem}.importcsv .py-1\\.5{padding-top:.375rem;padding-bottom:.375rem}.importcsv .py-10{padding-top:2.5rem;padding-bottom:2.5rem}.importcsv .py-12{padding-top:3rem;padding-bottom:3rem}.importcsv .py-2{padding-top:.5rem;padding-bottom:.5rem}.importcsv .py-2\\.5{padding-top:.625rem;padding-bottom:.625rem}.importcsv .py-3{padding-top:.75rem;padding-bottom:.75rem}.importcsv .py-3\\.5{padding-top:.875rem;padding-bottom:.875rem}.importcsv .py-4{padding-top:1rem;padding-bottom:1rem}.importcsv .py-5{padding-top:1.25rem;padding-bottom:1.25rem}.importcsv .py-6{padding-top:1.5rem;padding-bottom:1.5rem}.importcsv .py-8{padding-top:2rem;padding-bottom:2rem}.importcsv .pb-0{padding-bottom:0}.importcsv .pb-2{padding-bottom:.5rem}.importcsv .pl-10{padding-left:2.5rem}.importcsv .pl-7{padding-left:1.75rem}.importcsv .pl-8{padding-left:2rem}.importcsv .pr-10{padding-right:2.5rem}.importcsv .pr-2{padding-right:.5rem}.importcsv .pr-8{padding-right:2rem}.importcsv .pt-0{padding-top:0}.importcsv .pt-4{padding-top:1rem}.importcsv .pt-5{padding-top:1.25rem}.importcsv .pt-6{padding-top:1.5rem}.importcsv .text-left{text-align:left}.importcsv .text-center{text-align:center}.importcsv .text-right{text-align:right}.importcsv .font-sans{font-family:Geist,Plus Jakarta Sans,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.importcsv .text-2xl{font-size:1.5rem;line-height:2rem}.importcsv .text-3xl{font-size:1.875rem;line-height:2.25rem}.importcsv .text-4xl{font-size:2.25rem;line-height:2.5rem}.importcsv .text-\\[11px\\]{font-size:11px}.importcsv .text-base{font-size:1rem;line-height:1.5rem}.importcsv .text-lg{font-size:1.125rem;line-height:1.75rem}.importcsv .text-sm{font-size:.875rem;line-height:1.25rem}.importcsv .text-xl{font-size:1.25rem;line-height:1.75rem}.importcsv .text-xs{font-size:.75rem;line-height:1rem}.importcsv .font-bold{font-weight:700}.importcsv .font-medium{font-weight:500}.importcsv .font-normal{font-weight:400}.importcsv .font-semibold{font-weight:600}.importcsv .uppercase{text-transform:uppercase}.importcsv .lowercase{text-transform:lowercase}.importcsv .capitalize{text-transform:capitalize}.importcsv .normal-case{text-transform:none}.importcsv .italic{font-style:italic}.importcsv .not-italic{font-style:normal}.importcsv .normal-nums{font-variant-numeric:normal}.importcsv .ordinal{--tw-ordinal: ordinal;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.importcsv .slashed-zero{--tw-slashed-zero: slashed-zero;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.importcsv .lining-nums{--tw-numeric-figure: lining-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.importcsv .oldstyle-nums{--tw-numeric-figure: oldstyle-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.importcsv .proportional-nums{--tw-numeric-spacing: proportional-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.importcsv .tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.importcsv .diagonal-fractions{--tw-numeric-fraction: diagonal-fractions;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.importcsv .stacked-fractions{--tw-numeric-fraction: stacked-fractions;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.importcsv .leading-none{line-height:1}.importcsv .leading-relaxed{line-height:1.625}.importcsv .tracking-tight{letter-spacing:-.025em}.importcsv .tracking-wide{letter-spacing:.025em}.importcsv .tracking-wider{letter-spacing:.05em}.importcsv .text-amber-500{--tw-text-opacity: 1;color:rgb(245 158 11 / var(--tw-text-opacity, 1))}.importcsv .text-amber-600{--tw-text-opacity: 1;color:rgb(217 119 6 / var(--tw-text-opacity, 1))}.importcsv .text-amber-800{--tw-text-opacity: 1;color:rgb(146 64 14 / var(--tw-text-opacity, 1))}.importcsv .text-black{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity, 1))}.importcsv .text-blue-100{--tw-text-opacity: 1;color:rgb(219 234 254 / var(--tw-text-opacity, 1))}.importcsv .text-blue-200{--tw-text-opacity: 1;color:rgb(191 219 254 / var(--tw-text-opacity, 1))}.importcsv .text-blue-300{--tw-text-opacity: 1;color:rgb(147 197 253 / var(--tw-text-opacity, 1))}.importcsv .text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.importcsv .text-blue-50{--tw-text-opacity: 1;color:rgb(239 246 255 / var(--tw-text-opacity, 1))}.importcsv .text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.importcsv .text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.importcsv .text-blue-700{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.importcsv .text-blue-800{--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity, 1))}.importcsv .text-blue-900{--tw-text-opacity: 1;color:rgb(30 58 138 / var(--tw-text-opacity, 1))}.importcsv .text-card-foreground{color:hsl(var(--card-foreground))}.importcsv .text-current{color:currentColor}.importcsv .text-destructive{color:hsl(var(--destructive))}.importcsv .text-destructive-foreground{color:hsl(var(--destructive-foreground))}.importcsv .text-emerald-600{--tw-text-opacity: 1;color:rgb(5 150 105 / var(--tw-text-opacity, 1))}.importcsv .text-emerald-700{--tw-text-opacity: 1;color:rgb(4 120 87 / var(--tw-text-opacity, 1))}.importcsv .text-foreground{color:hsl(var(--foreground))}.importcsv .text-foreground\\/50{color:hsl(var(--foreground) / .5)}.importcsv .text-gray-100{--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity, 1))}.importcsv .text-gray-200{--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.importcsv .text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.importcsv .text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.importcsv .text-gray-50{--tw-text-opacity: 1;color:rgb(249 250 251 / var(--tw-text-opacity, 1))}.importcsv .text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.importcsv .text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.importcsv .text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.importcsv .text-gray-800{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.importcsv .text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.importcsv .text-green-100{--tw-text-opacity: 1;color:rgb(220 252 231 / var(--tw-text-opacity, 1))}.importcsv .text-green-200{--tw-text-opacity: 1;color:rgb(187 247 208 / var(--tw-text-opacity, 1))}.importcsv .text-green-300{--tw-text-opacity: 1;color:rgb(134 239 172 / var(--tw-text-opacity, 1))}.importcsv .text-green-400{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.importcsv .text-green-50{--tw-text-opacity: 1;color:rgb(240 253 244 / var(--tw-text-opacity, 1))}.importcsv .text-green-500{--tw-text-opacity: 1;color:rgb(34 197 94 / var(--tw-text-opacity, 1))}.importcsv .text-green-600{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.importcsv .text-green-700{--tw-text-opacity: 1;color:rgb(21 128 61 / var(--tw-text-opacity, 1))}.importcsv .text-green-800{--tw-text-opacity: 1;color:rgb(22 101 52 / var(--tw-text-opacity, 1))}.importcsv .text-green-900{--tw-text-opacity: 1;color:rgb(20 83 45 / var(--tw-text-opacity, 1))}.importcsv .text-muted-foreground{color:hsl(var(--muted-foreground))}.importcsv .text-orange-500{--tw-text-opacity: 1;color:rgb(249 115 22 / var(--tw-text-opacity, 1))}.importcsv .text-pink-600{--tw-text-opacity: 1;color:rgb(219 39 119 / var(--tw-text-opacity, 1))}.importcsv .text-popover-foreground{color:hsl(var(--popover-foreground))}.importcsv .text-purple-100{--tw-text-opacity: 1;color:rgb(243 232 255 / var(--tw-text-opacity, 1))}.importcsv .text-purple-700{--tw-text-opacity: 1;color:rgb(126 34 206 / var(--tw-text-opacity, 1))}.importcsv .text-red-100{--tw-text-opacity: 1;color:rgb(254 226 226 / var(--tw-text-opacity, 1))}.importcsv .text-red-200{--tw-text-opacity: 1;color:rgb(254 202 202 / var(--tw-text-opacity, 1))}.importcsv .text-red-300{--tw-text-opacity: 1;color:rgb(252 165 165 / var(--tw-text-opacity, 1))}.importcsv .text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.importcsv .text-red-50{--tw-text-opacity: 1;color:rgb(254 242 242 / var(--tw-text-opacity, 1))}.importcsv .text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.importcsv .text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.importcsv .text-red-700{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity, 1))}.importcsv .text-red-800{--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity, 1))}.importcsv .text-red-900{--tw-text-opacity: 1;color:rgb(127 29 29 / var(--tw-text-opacity, 1))}.importcsv .text-slate-300{--tw-text-opacity: 1;color:rgb(203 213 225 / var(--tw-text-opacity, 1))}.importcsv .text-slate-400{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.importcsv .text-slate-500{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.importcsv .text-slate-600{--tw-text-opacity: 1;color:rgb(71 85 105 / var(--tw-text-opacity, 1))}.importcsv .text-slate-700{--tw-text-opacity: 1;color:rgb(51 65 85 / var(--tw-text-opacity, 1))}.importcsv .text-slate-800{--tw-text-opacity: 1;color:rgb(30 41 59 / var(--tw-text-opacity, 1))}.importcsv .text-slate-900{--tw-text-opacity: 1;color:rgb(15 23 42 / var(--tw-text-opacity, 1))}.importcsv .text-transparent{color:transparent}.importcsv .text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.importcsv .text-yellow-600{--tw-text-opacity: 1;color:rgb(202 138 4 / var(--tw-text-opacity, 1))}.importcsv .text-yellow-800{--tw-text-opacity: 1;color:rgb(133 77 14 / var(--tw-text-opacity, 1))}.importcsv .text-yellow-900{--tw-text-opacity: 1;color:rgb(113 63 18 / var(--tw-text-opacity, 1))}.importcsv .underline{text-decoration-line:underline}.importcsv .overline{text-decoration-line:overline}.importcsv .line-through{text-decoration-line:line-through}.importcsv .no-underline{text-decoration-line:none}.importcsv .underline-offset-4{text-underline-offset:4px}.importcsv .antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.importcsv .subpixel-antialiased{-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto}.importcsv .opacity-0{opacity:0}.importcsv .opacity-100{opacity:1}.importcsv .opacity-25{opacity:.25}.importcsv .opacity-30{opacity:.3}.importcsv .opacity-50{opacity:.5}.importcsv .opacity-70{opacity:.7}.importcsv .opacity-75{opacity:.75}.importcsv .opacity-90{opacity:.9}.importcsv .shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.importcsv .shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.importcsv .shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.importcsv .shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.importcsv .shadow-none{--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.importcsv .shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.importcsv .outline-none{outline:2px solid transparent;outline-offset:2px}.importcsv .\\!outline{outline-style:solid!important}.importcsv .outline{outline-style:solid}.importcsv .ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.importcsv .ring-0{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.importcsv .ring-2{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.importcsv .ring-inset{--tw-ring-inset: inset}.importcsv .ring-blue-500{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.importcsv .ring-gray-400{--tw-ring-opacity: 1;--tw-ring-color: rgb(156 163 175 / var(--tw-ring-opacity, 1))}.importcsv .ring-gray-600{--tw-ring-opacity: 1;--tw-ring-color: rgb(75 85 99 / var(--tw-ring-opacity, 1))}.importcsv .ring-pink-500{--tw-ring-opacity: 1;--tw-ring-color: rgb(236 72 153 / var(--tw-ring-opacity, 1))}.importcsv .ring-purple-400{--tw-ring-opacity: 1;--tw-ring-color: rgb(192 132 252 / var(--tw-ring-opacity, 1))}.importcsv .ring-ring{--tw-ring-color: hsl(var(--ring))}.importcsv .ring-offset-background{--tw-ring-offset-color: hsl(var(--background))}.importcsv .blur{--tw-blur: blur(8px);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)}.importcsv .drop-shadow{--tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / .1)) drop-shadow(0 1px 1px rgb(0 0 0 / .06));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)}.importcsv .grayscale{--tw-grayscale: grayscale(100%);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)}.importcsv .invert{--tw-invert: invert(100%);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)}.importcsv .sepia{--tw-sepia: sepia(100%);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)}.importcsv .filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.importcsv .backdrop-blur{--tw-backdrop-blur: blur(8px);-webkit-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);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)}.importcsv .backdrop-grayscale{--tw-backdrop-grayscale: grayscale(100%);-webkit-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);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)}.importcsv .backdrop-invert{--tw-backdrop-invert: invert(100%);-webkit-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);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)}.importcsv .backdrop-sepia{--tw-backdrop-sepia: sepia(100%);-webkit-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);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)}.importcsv .backdrop-filter{-webkit-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);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)}.importcsv .transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.importcsv .transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.importcsv .transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.importcsv .transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.importcsv .transition-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.importcsv .transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.importcsv .duration-200{transition-duration:.2s}.importcsv .duration-300{transition-duration:.3s}.importcsv .duration-500{transition-duration:.5s}.importcsv .ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.importcsv .ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.importcsv :is(.importcsv .scrollbar-thin)::-webkit-scrollbar{width:6px;height:6px}.importcsv :is(.importcsv .scrollbar-thin)::-webkit-scrollbar-track{border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.importcsv :is(.importcsv .scrollbar-thin)::-webkit-scrollbar-thumb{border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity, 1))}.importcsv :is(.importcsv .scrollbar-thin)::-webkit-scrollbar-thumb:hover{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity, 1))}.importcsv :is(.importcsv .animate-in){animation-duration:.3s;animation-fill-mode:both;animation-timing-function:cubic-bezier(.4,0,.2,1)}.importcsv :is(.importcsv .fade-in-0){animation-name:fadeIn}.importcsv :is(.importcsv .slide-in-from-top-2){animation-name:slideInFromTop}.importcsv :is(.importcsv .slide-in-from-bottom-2){animation-name:slideInFromBottom}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInFromTop{0%{transform:translateY(-.5rem);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideInFromBottom{0%{transform:translateY(.5rem);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.importcsv .mapping-row-animate{animation:fadeInUp .3s ease-out forwards;opacity:0;will-change:opacity,transform}@keyframes checkPulse{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}.importcsv .check-pulse{animation:checkPulse .3s ease-out}.importcsv :is(.importcsv .text-balance){text-wrap:balance}.importcsv :is(.importcsv .no-scrollbar)::-webkit-scrollbar{display:none}.importcsv :is(.importcsv .no-scrollbar){-ms-overflow-style:none;scrollbar-width:none}.importcsv dialog::backdrop{background-color:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.importcsv .modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.importcsv .modal-content{background-color:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 10px #0000001a;max-width:90%;max-height:90%;overflow:auto;position:relative}.importcsv .close-button{position:absolute;top:10px;right:10px;background:none;border:none;font-size:24px;cursor:pointer;color:#666}.importcsv :is(.importcsv .close-button):hover{color:#000}.importcsv .importer-container{width:100%;height:100%;display:flex;flex-direction:column;padding:20px;box-sizing:border-box}@media (max-width: 768px){.importcsv .importer-container{padding:10px}}.importcsv .importer-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:10px;border-bottom:1px solid #e0e0e0}.importcsv .importer-header .importcsv h2{font-size:24px;margin:0}@media (max-width: 480px){.importcsv .importer-header{flex-direction:column;align-items:flex-start}}.importer-.importcsv{flex:1;overflow:auto}.importcsv .steps-indicator{display:flex;justify-content:space-between;margin-bottom:30px;padding:0 20px}@media (max-width: 768px){.importcsv .steps-indicator{padding:0 10px;margin-bottom:20px}}.importcsv .step{flex:1;text-align:center;position:relative}.importcsv :is(.importcsv .step):after{content:"";position:absolute;top:15px;left:50%;width:100%;height:2px;background-color:#e0e0e0;z-index:-1}.importcsv :is(.importcsv .step):last-child:after{display:none}.importcsv :is(.importcsv .step).active .importcsv .step-number{background-color:#2563eb;color:#fff}.importcsv :is(.importcsv :is(.importcsv .step).active)~.step .step-number{background-color:#f0f0f0;color:#999}.importcsv :is(.importcsv .step).completed .importcsv .step-number{background-color:#10b981;color:#fff}.importcsv :is(.importcsv :is(.importcsv .step).completed):after{background-color:#10b981}.importcsv .step-number{width:30px;height:30px;border-radius:50%;background-color:#f0f0f0;color:#999;display:inline-flex;align-items:center;justify-content:center;font-weight:700;margin-bottom:5px;position:relative;z-index:1}.importcsv .step-label{font-size:12px;color:#666}@media (max-width: 480px){.importcsv .step-label{font-size:10px}}.importcsv .progress-bar{width:100%;height:8px;background-color:#e0e0e0;border-radius:4px;overflow:hidden;margin-bottom:20px}.importcsv .progress-fill{height:100%;background-color:#2563eb;transition:width .3s ease}.importcsv .upload-area{border:2px dashed #ccc;border-radius:8px;padding:40px;text-align:center;cursor:pointer;transition:border-color .3s ease}.importcsv :is(.importcsv .upload-area):hover,.importcsv :is(.importcsv .upload-area).drag-over{border-color:#2563eb}@media (max-width: 480px){.importcsv .upload-area{padding:20px}}.importcsv .upload-icon{font-size:48px;color:#999;margin-bottom:10px}@media (max-width: 480px){.importcsv .upload-icon{font-size:36px}}.importcsv .upload-text{font-size:16px;color:#666;margin-bottom:10px}@media (max-width: 480px){.importcsv .upload-text{font-size:14px}}.importcsv .upload-hint{font-size:14px;color:#999}@media (max-width: 480px){.importcsv .upload-hint{font-size:12px}}.importcsv .file-input{display:none}.importcsv .button{padding:10px 20px;border:none;border-radius:4px;font-size:14px;cursor:pointer;transition:background-color .3s ease}.importcsv .button-primary{background-color:#2563eb;color:#fff}.importcsv :is(.importcsv .button-primary):hover{background-color:#1d4ed8}.importcsv :is(.importcsv .button-primary):disabled{background-color:#93bbfc;cursor:not-allowed}.importcsv .button-secondary{background-color:#f0f0f0;color:#333}.importcsv :is(.importcsv .button-secondary):hover{background-color:#e0e0e0}.importcsv .button-group{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.importcsv .error-message{color:#ef4444;font-size:14px;margin-top:5px}.importcsv .success-message{color:#10b981;font-size:14px;margin-top:5px}.importcsv .data-preview{width:100%;overflow-x:auto;margin-top:20px}.importcsv .data-table{width:100%;border-collapse:collapse;font-size:14px}.importcsv .data-table .importcsv th,.importcsv .data-table .importcsv td{padding:8px 12px;text-align:left;border:1px solid #e0e0e0}.importcsv .data-table .importcsv th{background-color:#f8f8f8;font-weight:600}.importcsv .data-table .importcsv tr:nth-child(2n){background-color:#fafafa}@media (max-width: 768px){.importcsv .data-table{font-size:12px}.importcsv .data-table .importcsv th,.importcsv .data-table .importcsv td{padding:6px 8px}}.importcsv .mapping-container{display:grid;gap:20px;margin-top:20px}.importcsv .mapping-item{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px}@media (max-width: 768px){.importcsv .mapping-item{grid-template-columns:1fr;gap:5px}}.importcsv .mapping-source,.importcsv .mapping-target{padding:10px;border:1px solid #e0e0e0;border-radius:4px}.importcsv .mapping-arrow{color:#999;font-size:20px}@media (max-width: 768px){.importcsv .mapping-arrow{display:none}}.importcsv .mapping-select{width:100%;padding:8px;border:1px solid #e0e0e0;border-radius:4px;background-color:#fff}.importcsv .validation-summary{background-color:#fef2f2;border:1px solid #fecaca;border-radius:4px;padding:15px;margin-top:20px}.importcsv .validation-title{font-weight:600;color:#991b1b;margin-bottom:10px}.importcsv .validation-list{list-style:disc;margin-left:20px;color:#991b1b;font-size:14px}.importcsv .completion-container{text-align:center;padding:40px}@media (max-width: 480px){.importcsv .completion-container{padding:20px}}.importcsv .completion-icon{font-size:64px;color:#10b981;margin-bottom:20px}@media (max-width: 480px){.importcsv .completion-icon{font-size:48px}}.importcsv .completion-title{font-size:24px;font-weight:600;margin-bottom:10px}@media (max-width: 480px){.importcsv .completion-title{font-size:20px}}.importcsv .completion-message{font-size:16px;color:#666;margin-bottom:30px}@media (max-width: 480px){.importcsv .completion-message{font-size:14px}}.importcsv .stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:20px;margin-top:30px}@media (max-width: 480px){.importcsv .stats-grid{grid-template-columns:1fr;gap:15px}}.importcsv .stat-item{text-align:center;padding:15px;background-color:#f8f8f8;border-radius:4px}.importcsv .stat-value{font-size:24px;font-weight:600;color:#2563eb}.importcsv .stat-label{font-size:14px;color:#666;margin-top:5px}.importcsv .spinner{border:3px solid #f3f3f3;border-top:3px solid #2563eb;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin:20px auto}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.importcsv .tooltip{position:relative;display:inline-block;cursor:help}.importcsv .tooltip-text{visibility:hidden;width:200px;background-color:#333;color:#fff;text-align:center;border-radius:4px;padding:8px;position:absolute;z-index:1;bottom:125%;left:50%;margin-left:-100px;opacity:0;transition:opacity .3s;font-size:12px}.importcsv .tooltip:hover .tooltip-text{visibility:visible;opacity:1}.importcsv .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.importcsv button:focus-visible,.importcsv input:focus-visible,.importcsv select:focus-visible,.importcsv textarea:focus-visible{outline:2px solid #2563eb;outline-offset:2px}@media print{.importcsv .no-print{display:none}.importcsv .print-only{display:block}}@media (prefers-color-scheme: dark){.importcsv.auto-dark{background-color:#1f2937;color:#f3f4f6}}.importcsv .form-group{margin-bottom:15px}.importcsv .form-group label{display:block;margin-bottom:5px;font-weight:500}.importcsv .form-group input{width:100%;padding:8px 12px;border-radius:4px;border:1px solid #ccc;box-sizing:border-box}.importcsv .file\\:border-0::file-selector-button{border-width:0px}.importcsv .file\\:bg-transparent::file-selector-button{background-color:transparent}.importcsv .file\\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.importcsv .file\\:font-medium::file-selector-button{font-weight:500}.importcsv .placeholder\\:text-muted-foreground::-moz-placeholder{color:hsl(var(--muted-foreground))}.importcsv .placeholder\\:text-muted-foreground::placeholder{color:hsl(var(--muted-foreground))}.importcsv .backdrop\\:bg-black\\/50::backdrop{background-color:#00000080}.importcsv .before\\:absolute:before{content:var(--tw-content);position:absolute}.importcsv .before\\:inset-0:before{content:var(--tw-content);inset:0}.importcsv .before\\:-z-10:before{content:var(--tw-content);z-index:-10}.importcsv .before\\:rounded-full:before{content:var(--tw-content);border-radius:9999px}.importcsv .before\\:bg-green-500:before{content:var(--tw-content);--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.importcsv .before\\:content-\\[\\'\\'\\]:before{--tw-content: "";content:var(--tw-content)}.importcsv .after\\:absolute:after{content:var(--tw-content);position:absolute}.importcsv .after\\:left-\\[2px\\]:after{content:var(--tw-content);left:2px}.importcsv .after\\:top-\\[2px\\]:after{content:var(--tw-content);top:2px}.importcsv .after\\:h-5:after{content:var(--tw-content);height:1.25rem}.importcsv .after\\:w-5:after{content:var(--tw-content);width:1.25rem}.importcsv .after\\:rounded-full:after{content:var(--tw-content);border-radius:9999px}.importcsv .after\\:bg-white:after{content:var(--tw-content);--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.importcsv .after\\:transition-transform:after{content:var(--tw-content);transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.importcsv .after\\:duration-200:after{content:var(--tw-content);transition-duration:.2s}.importcsv .after\\:content-\\[\\'\\'\\]:after{--tw-content: "";content:var(--tw-content)}.importcsv .last\\:border-b-0:last-child{border-bottom-width:0px}.importcsv .hover\\:scale-105:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.importcsv .hover\\:border-blue-400:hover{--tw-border-opacity: 1;border-color:rgb(96 165 250 / var(--tw-border-opacity, 1))}.importcsv .hover\\:border-gray-400:hover{--tw-border-opacity: 1;border-color:rgb(156 163 175 / var(--tw-border-opacity, 1))}.importcsv .hover\\:border-gray-500:hover{--tw-border-opacity: 1;border-color:rgb(107 114 128 / var(--tw-border-opacity, 1))}.importcsv .hover\\:border-slate-300:hover{--tw-border-opacity: 1;border-color:rgb(203 213 225 / var(--tw-border-opacity, 1))}.importcsv .hover\\:bg-blue-100:hover{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:bg-blue-50:hover{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:bg-blue-50\\/50:hover{background-color:#eff6ff80}.importcsv .hover\\:bg-blue-700:hover{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:bg-gray-100:hover{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:bg-gray-200:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:bg-gray-600:hover{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:bg-gray-700:hover{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:bg-gray-800:hover{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:bg-green-700:hover{--tw-bg-opacity: 1;background-color:rgb(21 128 61 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:bg-purple-200:hover{--tw-bg-opacity: 1;background-color:rgb(233 213 255 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:bg-purple-50:hover{--tw-bg-opacity: 1;background-color:rgb(250 245 255 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:bg-purple-700:hover{--tw-bg-opacity: 1;background-color:rgb(126 34 206 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:bg-red-100:hover{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:bg-red-100\\/70:hover{background-color:#fee2e2b3}.importcsv .hover\\:bg-red-500:hover{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:bg-red-700:hover{--tw-bg-opacity: 1;background-color:rgb(185 28 28 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:bg-secondary:hover{background-color:hsl(var(--secondary))}.importcsv .hover\\:bg-slate-100:hover{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:bg-slate-200:hover{--tw-bg-opacity: 1;background-color:rgb(226 232 240 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:bg-slate-50:hover{--tw-bg-opacity: 1;background-color:rgb(248 250 252 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:bg-slate-800:hover{--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:from-blue-50:hover{--tw-gradient-from: #eff6ff var(--tw-gradient-from-position);--tw-gradient-to: rgb(239 246 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.importcsv .hover\\:from-purple-600:hover{--tw-gradient-from: #9333ea var(--tw-gradient-from-position);--tw-gradient-to: rgb(147 51 234 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.importcsv .hover\\:from-purple-700:hover{--tw-gradient-from: #7e22ce var(--tw-gradient-from-position);--tw-gradient-to: rgb(126 34 206 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.importcsv .hover\\:to-blue-700:hover{--tw-gradient-to: #1d4ed8 var(--tw-gradient-to-position)}.importcsv .hover\\:to-pink-600:hover{--tw-gradient-to: #db2777 var(--tw-gradient-to-position)}.importcsv .hover\\:to-slate-50:hover{--tw-gradient-to: #f8fafc var(--tw-gradient-to-position)}.importcsv .hover\\:text-blue-700:hover{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.importcsv .hover\\:text-foreground:hover{color:hsl(var(--foreground))}.importcsv .hover\\:text-gray-600:hover{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.importcsv .hover\\:text-gray-900:hover{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.importcsv .hover\\:text-slate-700:hover{--tw-text-opacity: 1;color:rgb(51 65 85 / var(--tw-text-opacity, 1))}.importcsv .hover\\:underline:hover{text-decoration-line:underline}.importcsv .hover\\:opacity-100:hover{opacity:1}.importcsv .hover\\:shadow-2xl:hover{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.importcsv .hover\\:shadow-lg:hover{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.importcsv .hover\\:shadow-blue-500\\/10:hover{--tw-shadow-color: rgb(59 130 246 / .1);--tw-shadow: var(--tw-shadow-colored)}.importcsv .focus\\:border-blue-400:focus{--tw-border-opacity: 1;border-color:rgb(96 165 250 / var(--tw-border-opacity, 1))}.importcsv .focus\\:border-blue-500:focus{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.importcsv .focus\\:bg-white:focus{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.importcsv .focus\\:opacity-100:focus{opacity:1}.importcsv .focus\\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.importcsv .focus\\:ring-1:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.importcsv .focus\\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.importcsv .focus\\:ring-blue-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.importcsv .focus\\:ring-blue-500\\/20:focus{--tw-ring-color: rgb(59 130 246 / .2)}.importcsv .focus\\:ring-blue-500\\/40:focus{--tw-ring-color: rgb(59 130 246 / .4)}.importcsv .focus\\:ring-gray-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(107 114 128 / var(--tw-ring-opacity, 1))}.importcsv .focus\\:ring-pink-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(236 72 153 / var(--tw-ring-opacity, 1))}.importcsv .focus\\:ring-purple-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(168 85 247 / var(--tw-ring-opacity, 1))}.importcsv .focus\\:ring-red-300:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(252 165 165 / var(--tw-ring-opacity, 1))}.importcsv .focus\\:ring-ring:focus{--tw-ring-color: hsl(var(--ring))}.importcsv .focus\\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.importcsv .focus-visible\\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.importcsv .focus-visible\\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.importcsv .focus-visible\\:ring-blue-500:focus-visible{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.importcsv .focus-visible\\:ring-gray-500:focus-visible{--tw-ring-opacity: 1;--tw-ring-color: rgb(107 114 128 / var(--tw-ring-opacity, 1))}.importcsv .focus-visible\\:ring-red-500:focus-visible{--tw-ring-opacity: 1;--tw-ring-color: rgb(239 68 68 / var(--tw-ring-opacity, 1))}.importcsv .focus-visible\\:ring-ring:focus-visible{--tw-ring-color: hsl(var(--ring))}.importcsv .focus-visible\\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.importcsv .disabled\\:pointer-events-none:disabled{pointer-events:none}.importcsv .disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.importcsv .disabled\\:bg-gray-400:disabled{--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity, 1))}.importcsv .disabled\\:bg-gray-50:disabled{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.importcsv .disabled\\:opacity-50:disabled{opacity:.5}.importcsv :is(.group:hover .group-hover\\:-translate-y-0\\.5){--tw-translate-y: -.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.importcsv :is(.group:hover .group-hover\\:translate-x-1){--tw-translate-x: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.importcsv :is(.group:hover .group-hover\\:scale-110){--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.importcsv :is(.group:hover .group-hover\\:border-blue-200){--tw-border-opacity: 1;border-color:rgb(191 219 254 / var(--tw-border-opacity, 1))}.importcsv :is(.group:hover .group-hover\\:text-blue-500){--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.importcsv :is(.group:hover .group-hover\\:text-blue-600){--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.importcsv :is(.group:hover .group-hover\\:text-blue-700){--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.importcsv :is(.group:hover .group-hover\\:shadow-md){--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.importcsv :is(.peer:checked~.peer-checked\\:border-blue-600){--tw-border-opacity: 1;border-color:rgb(37 99 235 / var(--tw-border-opacity, 1))}.importcsv :is(.peer:checked~.peer-checked\\:bg-blue-600){--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.importcsv :is(.peer:checked~.peer-checked\\:after\\:translate-x-5):after{content:var(--tw-content);--tw-translate-x: 1.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.importcsv :is(.peer:focus~.peer-focus\\:outline-none){outline:2px solid transparent;outline-offset:2px}.importcsv :is(.peer:focus~.peer-focus\\:ring-2){--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.importcsv :is(.peer:focus~.peer-focus\\:ring-blue-500){--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.importcsv :is(.peer:focus~.peer-focus\\:ring-offset-2){--tw-ring-offset-width: 2px}.importcsv :is(.peer:focus-visible~.peer-focus-visible\\:outline-none){outline:2px solid transparent;outline-offset:2px}.importcsv :is(.peer:focus-visible~.peer-focus-visible\\:ring-2){--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.importcsv :is(.peer:focus-visible~.peer-focus-visible\\:ring-blue-500){--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.importcsv :is(.peer:focus-visible~.peer-focus-visible\\:ring-offset-2){--tw-ring-offset-width: 2px}.importcsv :is(.peer:disabled~.peer-disabled\\:cursor-not-allowed){cursor:not-allowed}.importcsv :is(.peer:disabled~.peer-disabled\\:opacity-50){opacity:.5}.importcsv :is(.importcsv .data-\\[state\\=open\\]\\:animate-in[data-state=open]){animation-duration:.3s;animation-fill-mode:both;animation-timing-function:cubic-bezier(.4,0,.2,1)}.importcsv .dark\\:border-blue-800:is([data-theme=dark] *){--tw-border-opacity: 1;border-color:rgb(30 64 175 / var(--tw-border-opacity, 1))}.importcsv .dark\\:border-destructive:is([data-theme=dark] *){border-color:hsl(var(--destructive))}.importcsv .dark\\:border-gray-600:is([data-theme=dark] *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1))}.importcsv .dark\\:border-gray-700:is([data-theme=dark] *){--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity, 1))}.importcsv .dark\\:border-slate-700:is([data-theme=dark] *){--tw-border-opacity: 1;border-color:rgb(51 65 85 / var(--tw-border-opacity, 1))}.importcsv .dark\\:bg-black\\/50:is([data-theme=dark] *){background-color:#00000080}.importcsv .dark\\:bg-blue-500:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.importcsv .dark\\:bg-blue-900\\/20:is([data-theme=dark] *){background-color:#1e3a8a33}.importcsv .dark\\:bg-gray-700:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.importcsv .dark\\:bg-gray-800:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.importcsv .dark\\:bg-gray-900:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity, 1))}.importcsv .dark\\:bg-slate-700:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity, 1))}.importcsv .dark\\:bg-slate-800:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity, 1))}.importcsv .dark\\:bg-slate-900:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(15 23 42 / var(--tw-bg-opacity, 1))}.importcsv .dark\\:bg-slate-900\\/70:is([data-theme=dark] *){background-color:#0f172ab3}.importcsv .dark\\:text-amber-400:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(251 191 36 / var(--tw-text-opacity, 1))}.importcsv .dark\\:text-blue-400:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.importcsv .dark\\:text-gray-100:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity, 1))}.importcsv .dark\\:text-gray-200:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.importcsv .dark\\:text-gray-300:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.importcsv .dark\\:text-gray-400:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.importcsv .dark\\:text-green-400:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.importcsv .dark\\:text-slate-100:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(241 245 249 / var(--tw-text-opacity, 1))}.importcsv .dark\\:text-slate-300:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(203 213 225 / var(--tw-text-opacity, 1))}.importcsv .dark\\:text-slate-400:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.importcsv .dark\\:text-slate-600:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(71 85 105 / var(--tw-text-opacity, 1))}.importcsv .dark\\:hover\\:bg-blue-600:hover:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.importcsv .dark\\:hover\\:bg-gray-600:hover:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.importcsv .dark\\:hover\\:bg-gray-700:hover:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.importcsv .dark\\:hover\\:bg-gray-800:hover:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.importcsv .dark\\:hover\\:bg-slate-600:hover:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(71 85 105 / var(--tw-bg-opacity, 1))}.importcsv .dark\\:hover\\:bg-slate-700:hover:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity, 1))}.importcsv .dark\\:hover\\:bg-slate-800:hover:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity, 1))}.importcsv .dark\\:hover\\:text-blue-300:hover:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(147 197 253 / var(--tw-text-opacity, 1))}.importcsv .dark\\:hover\\:text-gray-100:hover:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity, 1))}@media (min-width: 640px){.importcsv .sm\\:bottom-0{bottom:0}.importcsv .sm\\:right-0{right:0}.importcsv .sm\\:top-auto{top:auto}.importcsv .sm\\:flex-row{flex-direction:row}.importcsv .sm\\:flex-col{flex-direction:column}.importcsv .sm\\:justify-end{justify-content:flex-end}.importcsv :is(.sm\\:space-x-2>:not([hidden])~:not([hidden])){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.importcsv .sm\\:px-6{padding-left:1.5rem;padding-right:1.5rem}.importcsv .sm\\:text-left{text-align:left}}@media (min-width: 768px){.importcsv .md\\:max-w-\\[420px\\]{max-width:420px}.importcsv .md\\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.importcsv .md\\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.importcsv .md\\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width: 1024px){.importcsv .lg\\:px-8{padding-left:2rem;padding-right:2rem}}.importcsv .\\[\\&\\.drag-active\\]\\:scale-\\[1\\.02\\].drag-active{--tw-scale-x: 1.02;--tw-scale-y: 1.02;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.importcsv .\\[\\&\\.drag-active\\]\\:border-blue-500.drag-active{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.importcsv .\\[\\&\\.drag-active\\]\\:bg-blue-50.drag-active{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.importcsv .\\[\\&\\.drag-active\\]\\:bg-gradient-to-b.drag-active{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.importcsv .\\[\\&\\.drag-active\\]\\:from-blue-50.drag-active{--tw-gradient-from: #eff6ff var(--tw-gradient-from-position);--tw-gradient-to: rgb(239 246 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.importcsv .\\[\\&\\.drag-active\\]\\:to-blue-100.drag-active{--tw-gradient-to: #dbeafe var(--tw-gradient-to-position)}.importcsv .\\[\\&\\.drag-active\\]\\:shadow-xl.drag-active{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.importcsv .\\[\\&\\.drag-active\\]\\:shadow-blue-500\\/20.drag-active{--tw-shadow-color: rgb(59 130 246 / .2);--tw-shadow: var(--tw-shadow-colored)}.importcsv :is(.\\[\\&\\>\\*\\]\\:min-w-\\[190px\\]>*){min-width:190px}.importcsv :is(.\\[\\&\\>\\*\\]\\:flex-1>*){flex:1 1 0%}.importcsv :is(.\\[\\&\\>div\\:nth-child\\(even\\)\\]\\:bg-gray-50>div:nth-child(2n)){--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.importcsv :is(.\\[\\&\\>svg\\+div\\]\\:translate-y-\\[-3px\\]>svg+div){--tw-translate-y: -3px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.importcsv :is(.\\[\\&\\>svg\\]\\:absolute>svg){position:absolute}.importcsv :is(.\\[\\&\\>svg\\]\\:left-4>svg){left:1rem}.importcsv :is(.\\[\\&\\>svg\\]\\:top-4>svg){top:1rem}.importcsv :is(.\\[\\&\\>svg\\]\\:text-destructive>svg){color:hsl(var(--destructive))}.importcsv :is(.\\[\\&\\>svg\\]\\:text-foreground>svg){color:hsl(var(--foreground))}.importcsv :is(.\\[\\&\\>svg\\~\\*\\]\\:pl-7>svg~*){padding-left:1.75rem}.importcsv :is(.\\[\\&\\[data-theme\\=\\'dark\\'\\]_\\&\\]\\:border-gray-600[data-theme=dark] .\\[\\&\\[data-theme\\=\\'dark\\'\\]_\\&\\]\\:border-gray-600){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1))}.importcsv :is(.\\[\\&\\[data-theme\\=\\'dark\\'\\]_\\&\\]\\:bg-blue-500[data-theme=dark] .\\[\\&\\[data-theme\\=\\'dark\\'\\]_\\&\\]\\:bg-blue-500){--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.importcsv :is(.\\[\\&\\[data-theme\\=\\'dark\\'\\]_\\&\\]\\:bg-gray-700[data-theme=dark] .\\[\\&\\[data-theme\\=\\'dark\\'\\]_\\&\\]\\:bg-gray-700){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.importcsv :is(.\\[\\&\\[data-theme\\=\\'dark\\'\\]_\\&\\]\\:bg-gray-800[data-theme=dark] .\\[\\&\\[data-theme\\=\\'dark\\'\\]_\\&\\]\\:bg-gray-800){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.importcsv :is(.\\[\\&\\[data-theme\\=\\'dark\\'\\]_\\&\\]\\:text-gray-100[data-theme=dark] .\\[\\&\\[data-theme\\=\\'dark\\'\\]_\\&\\]\\:text-gray-100){--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity, 1))}.importcsv :is(.\\[\\&\\[data-theme\\=\\'dark\\'\\]_\\&\\]\\:text-gray-200[data-theme=dark] .\\[\\&\\[data-theme\\=\\'dark\\'\\]_\\&\\]\\:text-gray-200){--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.importcsv :is(.\\[\\&\\[data-theme\\=\\'dark\\'\\]_\\&\\]\\:hover\\:bg-blue-600:hover[data-theme=dark] .\\[\\&\\[data-theme\\=\\'dark\\'\\]_\\&\\]\\:hover\\:bg-blue-600:hover){--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.importcsv :is(.\\[\\&\\[data-theme\\=\\'dark\\'\\]_\\&\\]\\:hover\\:bg-gray-600:hover[data-theme=dark] .\\[\\&\\[data-theme\\=\\'dark\\'\\]_\\&\\]\\:hover\\:bg-gray-600:hover){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.importcsv :is(.\\[\\&\\[data-theme\\=\\'dark\\'\\]_\\&\\]\\:hover\\:bg-gray-700:hover[data-theme=dark] .\\[\\&\\[data-theme\\=\\'dark\\'\\]_\\&\\]\\:hover\\:bg-gray-700:hover){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.importcsv :is(.\\[\\&_p\\]\\:leading-relaxed p){line-height:1.625}.importcsv :is(.drag-active .\\[\\.drag-active_\\&\\]\\:scale-125){--tw-scale-x: 1.25;--tw-scale-y: 1.25;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.importcsv :is(.drag-active .\\[\\.drag-active_\\&\\]\\:bg-blue-500){--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.importcsv :is(.drag-active .\\[\\.drag-active_\\&\\]\\:text-white){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.importcsv :is(.drag-active .\\[\\.drag-active_\\&\\]\\:shadow-lg){--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.importcsv .CSVImporter{border:none;background-color:transparent;padding:0 1rem;border-radius:1.2rem;color:inherit;cursor:pointer;font-weight:500;font-size:14px;display:inline-flex;gap:.5rem;align-items:center;transition:filter .2s ease-out}.importcsv .CSVImporter svg{display:block}.importcsv .CSVImporter svg path{stroke:currentColor!important}.importcsv .CSVImporter:hover,.importcsv .CSVImporter:active{filter:brightness(1.2)}.importcsv .CSVImporter-div{border:none;display:block;width:100%;height:auto;max-height:80vh;overflow-y:auto}@media (max-width: 768px){.importcsv .CSVImporter-dialog{width:95vw;min-width:unset;max-width:100%}}.importcsv [data-theme=dark]{--csv-bg-primary: #1a1a1a;--csv-bg-secondary: #2d2d2d;--csv-bg-hover: #363636;--csv-bg-input: #242424;--csv-text-primary: #ffffff;--csv-text-secondary: #a0a0a0;--csv-text-muted: #6b6b6b;--csv-border: #404040;--csv-border-subtle: #333333;background-color:var(--csv-bg-primary)!important;color:var(--csv-text-primary)!important}.importcsv [data-theme=dark] h1,.importcsv [data-theme=dark] h2,.importcsv [data-theme=dark] h3,.importcsv [data-theme=dark] h4{background-color:transparent!important;color:var(--csv-text-primary)!important}.importcsv [data-theme=dark] .text-gray-900,.importcsv [data-theme=dark] .text-gray-800{color:var(--csv-text-primary)!important}.importcsv [data-theme=dark] .text-gray-600,.importcsv [data-theme=dark] .text-gray-700{color:var(--csv-text-secondary)!important}.importcsv [data-theme=dark] .text-gray-500,.importcsv [data-theme=dark] .text-gray-400{color:var(--csv-text-muted)!important}.importcsv [data-theme=dark] .bg-white{background-color:var(--csv-bg-secondary)!important}.importcsv [data-theme=dark] .bg-gray-50,.importcsv [data-theme=dark] [class*=px-6][class*=py-]{background-color:transparent!important}.importcsv [data-theme=dark] table .bg-gray-50{background-color:var(--csv-bg-primary)!important}.importcsv [data-theme=dark] .bg-gray-100{background-color:var(--csv-bg-secondary)!important}.importcsv [data-theme=dark] .border-gray-200,.importcsv [data-theme=dark] .border-gray-300{border-color:var(--csv-border)!important}.importcsv :is(.importcsv [data-theme=dark] button).bg-blue-600{background-color:#3b82f6!important;color:#fff!important;border:1px solid #60a5fa!important}.importcsv :is(.importcsv :is(.importcsv [data-theme=dark] button).bg-blue-600):hover{background-color:#2563eb!important;border-color:#3b82f6!important}.importcsv :is(.importcsv [data-theme=dark] button)[class*=border][class*=border-gray]{background-color:transparent!important;border-color:var(--csv-border)!important;color:var(--csv-text-primary)!important}.importcsv :is(.importcsv :is(.importcsv [data-theme=dark] button)[class*=border][class*=border-gray]):hover{background-color:#ffffff0d!important;border-color:var(--csv-text-secondary)!important}.importcsv :is(.importcsv [data-theme=dark] button).bg-gray-100{background-color:var(--csv-bg-hover)!important;color:var(--csv-text-primary)!important}.importcsv :is(.importcsv :is(.importcsv [data-theme=dark] button).bg-gray-100):hover{background-color:#4d4d4d!important}.importcsv [data-theme=dark] input:not([type=checkbox]):not([type=radio]),.importcsv [data-theme=dark] select,.importcsv [data-theme=dark] textarea{background-color:var(--csv-bg-input)!important;border-color:var(--csv-border-subtle)!important;color:var(--csv-text-primary)!important}.importcsv :is(.importcsv [data-theme=dark] input:not([type=checkbox]):not([type=radio]),.importcsv [data-theme=dark] select,.importcsv [data-theme=dark] textarea)::-moz-placeholder{color:var(--csv-text-muted)!important}.importcsv :is(.importcsv [data-theme=dark] input:not([type=checkbox]):not([type=radio]),.importcsv [data-theme=dark] select,.importcsv [data-theme=dark] textarea)::placeholder{color:var(--csv-text-muted)!important}.importcsv :is(.importcsv [data-theme=dark] input:not([type=checkbox]):not([type=radio]),.importcsv [data-theme=dark] select,.importcsv [data-theme=dark] textarea):focus{border-color:#3b82f6!important;background-color:var(--csv-bg-secondary)!important;outline:none!important}.importcsv [data-theme=dark] option{background-color:var(--csv-bg-secondary)!important;color:var(--csv-text-primary)!important}.importcsv [data-theme=dark] table,.importcsv [data-theme=dark] table .importcsv thead{background-color:transparent!important}.importcsv [data-theme=dark] table .importcsv thead .importcsv th{background-color:transparent!important;color:var(--csv-text-primary)!important;border-color:var(--csv-border)!important}.importcsv [data-theme=dark] table t.importcsv{background-color:transparent!important}.importcsv [data-theme=dark] table t.importcsv .importcsv tr{background-color:transparent!important;border-color:var(--csv-border)!important}.importcsv :is(.importcsv [data-theme=dark] table t.importcsv .importcsv tr):hover{background-color:transparent!important}.importcsv [data-theme=dark] table t.importcsv .importcsv tr .importcsv td{background-color:transparent!important;border-color:var(--csv-border)!important;color:var(--csv-text-primary)!important}[data-theme=dark] table t.importcsv tr td:first-child{background-color:var(--csv-bg-secondary)!important;border-right:1px solid var(--csv-border)!important}.importcsv [data-theme=dark] dialog{background-color:var(--csv-bg-primary)!important;color:var(--csv-text-primary)!important}.importcsv :is(.importcsv [data-theme=dark] .rounded-lg,.importcsv [data-theme=dark] [class*=border][class*=rounded]).bg-white{background-color:var(--csv-bg-secondary)!important}.importcsv [data-theme=dark] .stepper-item{color:var(--csv-text-secondary)!important}.importcsv :is(.importcsv [data-theme=dark] .stepper-item).active{color:var(--csv-text-primary)!important}.importcsv :is(.importcsv [data-theme=dark] button[class*=rounded-md])[class*=bg-white][class*=shadow]{background-color:var(--csv-bg-hover)!important;color:var(--csv-text-primary)!important;border:1px solid var(--csv-border)!important}.importcsv [data-theme=dark] td input{background-color:transparent!important;border:none!important;color:var(--csv-text-primary)!important;padding:8px 12px!important}.importcsv :is(.importcsv [data-theme=dark] td input):focus{outline:2px solid #3b82f6!important;outline-offset:-2px!important;background-color:#3b82f61a!important}.importcsv :is(.importcsv [data-theme=dark] td input):hover:not(:focus){background-color:transparent!important}.importcsv [data-theme=dark] td:hover,.importcsv [data-theme=dark] td:hover input,.importcsv [data-theme=dark] .hover\\:bg-gray-50:hover,.importcsv [data-theme=dark] .hover\\:bg-gray-100:hover,.importcsv [data-theme=dark] [class*="hover:bg"]:hover{background-color:#ffffff05!important}.importcsv [data-theme=dark] .close-button,.importcsv [data-theme=dark] [aria-label=Close]{color:var(--csv-text-primary)!important}.importcsv [data-theme=dark] [class*=flex][class*=justify-between],.importcsv [data-theme=dark] [class*=flex][class*=items-center]{background-color:transparent!important}.importcsv [data-theme=dark] .bg-blue-50{background-color:#3b82f61a!important;border-color:#3b82f6!important}.importcsv [data-theme=dark] .bg-blue-50{background-color:#3b82f626!important}.importcsv [data-theme=dark] .text-blue-700,.importcsv [data-theme=dark] .text-blue-600{color:#93c5fd!important}.csv-importer-modal-overlay{position:fixed;inset:0;background-color:#000000d9;display:flex;align-items:center;justify-content:center;z-index:9999;animation:csv-importer-fade-in .2s ease-out}.csv-importer-modal-content{position:relative;background:#fff;border-radius:1rem;width:65vw;max-height:75vh;min-width:800px;max-width:1200px;overflow:hidden;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;animation:csv-importer-slide-up .3s ease-out;display:flex;flex-direction:column}.csv-importer-modal-content.csv-importer-modal-fullwidth{width:100%;max-width:100%;min-width:unset;max-height:unset;height:auto;border-radius:0}@keyframes csv-importer-fade-in{0%{opacity:0}to{opacity:1}}@keyframes csv-importer-slide-up{0%{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}.importcsv [data-theme=dark] .csv-importer-modal-content{background:#1a1a1a;color:#fff}.importcsv [data-theme=dark] .csv-importer-modal-overlay{background-color:#000000f2}@media (max-width: 1024px){.csv-importer-modal-content{width:80vw;min-width:unset}}@media (max-width: 768px){.csv-importer-modal-content{width:90vw;min-width:unset;max-width:calc(100% - 2rem)}}@media (max-width: 480px){.csv-importer-modal-content{width:92vw;min-width:unset;max-width:calc(100% - 1rem)}}.csv-importer-modal-content>div{max-height:75vh;overflow-y:auto;width:100%;height:100%}.csv-importer-modal-container{width:100%;height:100%;display:flex;flex-direction:column}.csv-importer-modal-container .importcsv{width:100%;height:100%;flex:1;display:flex;flex-direction:column}`)),document.head.appendChild(t)}}catch(r){console.error("vite-plugin-css-injected-by-js",r)}})();
|
|
2
|
-
"use strict";var
|
|
1
|
+
(function(){"use strict";try{if(typeof document<"u"){var t=document.createElement("style");t.appendChild(document.createTextNode(`@import"https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,100..1000;1,9..40,100..1000&family=Geist:wght@100;200;300;400;500;600;700;800;900&family=Plus+Jakarta+Sans:wght@200;300;400;500;600;700;800&display=swap";.importcsv *,.importcsv :before,.importcsv :after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.importcsv ::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.importcsv *,.importcsv :before,.importcsv :after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}.importcsv :before,.importcsv :after{--tw-content: ""}.importcsv,.importcsv :host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Geist,Plus Jakarta Sans,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}.importcsv{margin:0;line-height:inherit}.importcsv hr{height:0;color:inherit;border-top-width:1px}.importcsv abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.importcsv h1,.importcsv h2,.importcsv h3,.importcsv h4,.importcsv h5,.importcsv h6{font-size:inherit;font-weight:inherit}.importcsv a{color:inherit;text-decoration:inherit}.importcsv b,.importcsv strong{font-weight:bolder}.importcsv code,.importcsv kbd,.importcsv samp,.importcsv pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}.importcsv small{font-size:80%}.importcsv sub,.importcsv sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.importcsv sub{bottom:-.25em}.importcsv sup{top:-.5em}.importcsv table{text-indent:0;border-color:inherit;border-collapse:collapse}.importcsv button,.importcsv input,.importcsv optgroup,.importcsv select,.importcsv textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}.importcsv button,.importcsv select{text-transform:none}.importcsv button,.importcsv input:where([type=button]),.importcsv input:where([type=reset]),.importcsv input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}.importcsv :-moz-focusring{outline:auto}.importcsv :-moz-ui-invalid{box-shadow:none}.importcsv progress{vertical-align:baseline}.importcsv ::-webkit-inner-spin-button,.importcsv ::-webkit-outer-spin-button{height:auto}.importcsv [type=search]{-webkit-appearance:textfield;outline-offset:-2px}.importcsv ::-webkit-search-decoration{-webkit-appearance:none}.importcsv ::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}.importcsv summary{display:list-item}.importcsv blockquote,.importcsv dl,.importcsv dd,.importcsv h1,.importcsv h2,.importcsv h3,.importcsv h4,.importcsv h5,.importcsv h6,.importcsv hr,.importcsv figure,.importcsv p,.importcsv pre{margin:0}.importcsv fieldset{margin:0;padding:0}.importcsv legend{padding:0}.importcsv ol,.importcsv ul,.importcsv menu{list-style:none;margin:0;padding:0}.importcsv dialog{padding:0}.importcsv textarea{resize:vertical}.importcsv input::-moz-placeholder,.importcsv textarea::-moz-placeholder{opacity:1;color:#9ca3af}.importcsv input::placeholder,.importcsv textarea::placeholder{opacity:1;color:#9ca3af}.importcsv button,.importcsv [role=button]{cursor:pointer}.importcsv :disabled{cursor:default}.importcsv img,.importcsv svg,.importcsv video,.importcsv canvas,.importcsv audio,.importcsv iframe,.importcsv embed,.importcsv object{display:block;vertical-align:middle}.importcsv img,.importcsv video{max-width:100%;height:auto}.importcsv [hidden]:where(:not([hidden=until-found])){display:none}.importcsv{font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5;color:#0f172a}.importcsv *{box-sizing:border-box}.importcsv .container{width:100%}@media (min-width: 640px){.importcsv .container{max-width:640px}}@media (min-width: 768px){.importcsv .container{max-width:768px}}@media (min-width: 1024px){.importcsv .container{max-width:1024px}}@media (min-width: 1280px){.importcsv .container{max-width:1280px}}@media (min-width: 1536px){.importcsv .container{max-width:1536px}}.importcsv .csv-importer{--background: 0 0% 100%;--foreground: 222.2 84% 4.9%;--card: 0 0% 100%;--card-foreground: 222.2 84% 4.9%;--popover: 0 0% 100%;--popover-foreground: 222.2 84% 4.9%;--primary: 221.2 83.2% 53.3%;--primary-foreground: 210 40% 98%;--secondary: 210 40% 96.1%;--secondary-foreground: 222.2 47.4% 11.2%;--muted: 210 40% 96.1%;--muted-foreground: 215.4 16.3% 46.9%;--accent: 210 40% 96.1%;--accent-foreground: 222.2 47.4% 11.2%;--destructive: 0 84.2% 60.2%;--destructive-foreground: 210 40% 98%;--border: 214.3 31.8% 91.4%;--input: 214.3 31.8% 91.4%;--ring: 221.2 83.2% 53.3%;--radius: .5rem;--color-primary: #2563eb;--color-primary-foreground: #ffffff;--color-secondary: #f3f4f6;--color-secondary-foreground: #111827;--color-border: #e5e7eb;--color-background: #ffffff;--color-text: #111827;--color-error: #ef4444;--color-error-foreground: #ffffff;--color-muted: #f3f4f6;--color-muted-foreground: #6b7280;--color-accent: #f3f4f6;--color-accent-foreground: #111827}.importcsv .csv-importer[data-theme=dark]{--background: 222.2 84% 4.9%;--foreground: 210 40% 98%;--card: 222.2 84% 4.9%;--card-foreground: 210 40% 98%;--popover: 222.2 84% 4.9%;--popover-foreground: 210 40% 98%;--primary: 217.2 91.2% 59.8%;--primary-foreground: 222.2 47.4% 11.2%;--secondary: 217.2 32.6% 17.5%;--secondary-foreground: 210 40% 98%;--muted: 217.2 32.6% 17.5%;--muted-foreground: 215 20.2% 65.1%;--accent: 217.2 32.6% 17.5%;--accent-foreground: 210 40% 98%;--destructive: 0 62.8% 30.6%;--destructive-foreground: 210 40% 98%;--border: 217.2 32.6% 17.5%;--input: 217.2 32.6% 17.5%;--ring: 224.3 76.3% 48%}.importcsv .not-sr-only{position:static;width:auto;height:auto;padding:0;margin:0;overflow:visible;clip:auto;white-space:normal}.importcsv .pointer-events-none{pointer-events:none}.importcsv .pointer-events-auto{pointer-events:auto}.importcsv .visible{visibility:visible}.importcsv .invisible{visibility:hidden}.importcsv .collapse{visibility:collapse}.importcsv .static{position:static}.importcsv .fixed{position:fixed}.importcsv .absolute{position:absolute}.importcsv .relative{position:relative}.importcsv .sticky{position:sticky}.importcsv .inset-0{inset:0}.importcsv .bottom-0{bottom:0}.importcsv .bottom-full{bottom:100%}.importcsv .left-0{left:0}.importcsv .left-1\\/2{left:50%}.importcsv .left-2{left:.5rem}.importcsv .left-3{left:.75rem}.importcsv .left-4{left:1rem}.importcsv .left-full{left:100%}.importcsv .right-0{right:0}.importcsv .right-2{right:.5rem}.importcsv .right-3{right:.75rem}.importcsv .right-4{right:1rem}.importcsv .right-full{right:100%}.importcsv .top-0{top:0}.importcsv .top-1{top:.25rem}.importcsv .top-1\\/2{top:50%}.importcsv .top-2{top:.5rem}.importcsv .top-4{top:1rem}.importcsv .top-auto{top:auto}.importcsv .top-full{top:100%}.importcsv .isolate{isolation:isolate}.importcsv .isolation-auto{isolation:auto}.importcsv .-z-10{z-index:-10}.importcsv .z-10{z-index:10}.importcsv .z-20{z-index:20}.importcsv .z-40{z-index:40}.importcsv .z-50{z-index:50}.importcsv .z-\\[100\\]{z-index:100}.importcsv .z-\\[101\\]{z-index:101}.importcsv .m-1{margin:.25rem}.importcsv .m-auto{margin:auto}.importcsv .-mx-1{margin-left:-.25rem;margin-right:-.25rem}.importcsv .mx-2{margin-left:.5rem;margin-right:.5rem}.importcsv .mx-3{margin-left:.75rem;margin-right:.75rem}.importcsv .mx-4{margin-left:1rem;margin-right:1rem}.importcsv .mx-6{margin-left:1.5rem;margin-right:1.5rem}.importcsv .mx-auto{margin-left:auto;margin-right:auto}.importcsv .my-1{margin-top:.25rem;margin-bottom:.25rem}.importcsv .my-4{margin-top:1rem;margin-bottom:1rem}.importcsv .my-8{margin-top:2rem;margin-bottom:2rem}.importcsv .-ml-1{margin-left:-.25rem}.importcsv .-ml-px{margin-left:-1px}.importcsv .mb-1{margin-bottom:.25rem}.importcsv .mb-12{margin-bottom:3rem}.importcsv .mb-2{margin-bottom:.5rem}.importcsv .mb-3{margin-bottom:.75rem}.importcsv .mb-4{margin-bottom:1rem}.importcsv .mb-6{margin-bottom:1.5rem}.importcsv .mb-8{margin-bottom:2rem}.importcsv .ml-1{margin-left:.25rem}.importcsv .ml-1\\.5{margin-left:.375rem}.importcsv .ml-2{margin-left:.5rem}.importcsv .mr-2{margin-right:.5rem}.importcsv .mt-0{margin-top:0}.importcsv .mt-0\\.5{margin-top:.125rem}.importcsv .mt-1{margin-top:.25rem}.importcsv .mt-12{margin-top:3rem}.importcsv .mt-2{margin-top:.5rem}.importcsv .mt-3{margin-top:.75rem}.importcsv .mt-4{margin-top:1rem}.importcsv .mt-6{margin-top:1.5rem}.importcsv .box-border{box-sizing:border-box}.importcsv .line-clamp-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.importcsv .block{display:block}.importcsv .inline-block{display:inline-block}.importcsv .inline{display:inline}.importcsv .flex{display:flex}.importcsv .inline-flex{display:inline-flex}.importcsv .table{display:table}.importcsv .inline-table{display:inline-table}.importcsv .table-caption{display:table-caption}.importcsv .table-cell{display:table-cell}.importcsv .table-column{display:table-column}.importcsv .table-column-group{display:table-column-group}.importcsv .table-footer-group{display:table-footer-group}.importcsv .table-header-group{display:table-header-group}.importcsv .table-row-group{display:table-row-group}.importcsv .table-row{display:table-row}.importcsv .flow-root{display:flow-root}.importcsv .grid{display:grid}.importcsv .inline-grid{display:inline-grid}.importcsv .contents{display:contents}.importcsv .list-item{display:list-item}.importcsv .hidden{display:none}.importcsv .aspect-square{aspect-ratio:1 / 1}.importcsv .h-0{height:0px}.importcsv .h-0\\.5{height:.125rem}.importcsv .h-1{height:.25rem}.importcsv .h-1\\.5{height:.375rem}.importcsv .h-10{height:2.5rem}.importcsv .h-12{height:3rem}.importcsv .h-16{height:4rem}.importcsv .h-2{height:.5rem}.importcsv .h-20{height:5rem}.importcsv .h-3{height:.75rem}.importcsv .h-3\\.5{height:.875rem}.importcsv .h-4{height:1rem}.importcsv .h-5{height:1.25rem}.importcsv .h-6{height:1.5rem}.importcsv .h-7{height:1.75rem}.importcsv .h-8{height:2rem}.importcsv .h-9{height:2.25rem}.importcsv .h-\\[1px\\]{height:1px}.importcsv .h-\\[36px\\]{height:36px}.importcsv .h-auto{height:auto}.importcsv .h-fit{height:-moz-fit-content;height:fit-content}.importcsv .h-full{height:100%}.importcsv .h-px{height:1px}.importcsv .max-h-60{max-height:15rem}.importcsv .max-h-64{max-height:16rem}.importcsv .max-h-96{max-height:24rem}.importcsv .max-h-\\[300px\\]{max-height:300px}.importcsv .max-h-screen{max-height:100vh}.importcsv .min-h-0{min-height:0px}.importcsv .min-h-\\[220px\\]{min-height:220px}.importcsv .min-h-\\[320px\\]{min-height:320px}.importcsv .min-h-\\[380px\\]{min-height:380px}.importcsv .min-h-\\[400px\\]{min-height:400px}.importcsv .min-h-screen{min-height:100vh}.importcsv .w-0{width:0px}.importcsv .w-1\\.5{width:.375rem}.importcsv .w-1\\/3{width:33.333333%}.importcsv .w-10{width:2.5rem}.importcsv .w-11{width:2.75rem}.importcsv .w-12{width:3rem}.importcsv .w-16{width:4rem}.importcsv .w-2{width:.5rem}.importcsv .w-2\\/3{width:66.666667%}.importcsv .w-20{width:5rem}.importcsv .w-24{width:6rem}.importcsv .w-3{width:.75rem}.importcsv .w-3\\.5{width:.875rem}.importcsv .w-3\\/4{width:75%}.importcsv .w-4{width:1rem}.importcsv .w-5{width:1.25rem}.importcsv .w-6{width:1.5rem}.importcsv .w-8{width:2rem}.importcsv .w-\\[30\\%\\]{width:30%}.importcsv .w-\\[35\\%\\]{width:35%}.importcsv .w-full{width:100%}.importcsv .w-max{width:-moz-max-content;width:max-content}.importcsv .min-w-0{min-width:0px}.importcsv .min-w-\\[36px\\]{min-width:36px}.importcsv .min-w-\\[600px\\]{min-width:600px}.importcsv .min-w-full{min-width:100%}.importcsv .max-w-2xl{max-width:42rem}.importcsv .max-w-4xl{max-width:56rem}.importcsv .max-w-7xl{max-width:80rem}.importcsv .max-w-\\[1000px\\]{max-width:1000px}.importcsv .max-w-\\[100px\\]{max-width:100px}.importcsv .max-w-\\[1200px\\]{max-width:1200px}.importcsv .max-w-\\[120px\\]{max-width:120px}.importcsv .max-w-\\[200px\\]{max-width:200px}.importcsv .max-w-\\[250px\\]{max-width:250px}.importcsv .max-w-\\[300px\\]{max-width:300px}.importcsv .max-w-\\[320px\\]{max-width:320px}.importcsv .max-w-\\[440px\\]{max-width:440px}.importcsv .max-w-\\[660px\\]{max-width:660px}.importcsv .max-w-\\[800px\\]{max-width:800px}.importcsv .max-w-full{max-width:100%}.importcsv .max-w-lg{max-width:32rem}.importcsv .max-w-md{max-width:28rem}.importcsv .max-w-none{max-width:none}.importcsv .max-w-xs{max-width:20rem}.importcsv .flex-1{flex:1 1 0%}.importcsv .flex-shrink{flex-shrink:1}.importcsv .flex-shrink-0{flex-shrink:0}.importcsv .shrink{flex-shrink:1}.importcsv .shrink-0{flex-shrink:0}.importcsv .flex-grow,.importcsv .grow{flex-grow:1}.importcsv .border-collapse{border-collapse:collapse}.importcsv .-translate-x-1\\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.importcsv .-translate-y-1{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.importcsv .-translate-y-1\\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.importcsv .translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.importcsv .translate-x-5{--tw-translate-x: 1.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.importcsv .translate-x-full{--tw-translate-x: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.importcsv .scale-100{--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.importcsv .scale-105{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.importcsv .scale-95{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.importcsv .transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes ping{75%,to{transform:scale(2);opacity:0}}.importcsv .animate-ping{animation:ping 1s cubic-bezier(0,0,.2,1) infinite}@keyframes pulse{50%{opacity:.5}}.importcsv .animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.importcsv .animate-spin{animation:spin 1s linear infinite}.importcsv .cursor-default{cursor:default}.importcsv .cursor-help{cursor:help}.importcsv .cursor-not-allowed{cursor:not-allowed}.importcsv .cursor-pointer{cursor:pointer}.importcsv .touch-pinch-zoom{--tw-pinch-zoom: pinch-zoom;touch-action:var(--tw-pan-x) var(--tw-pan-y) var(--tw-pinch-zoom)}.importcsv .select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.importcsv .resize{resize:both}.importcsv .list-inside{list-style-position:inside}.importcsv .list-disc{list-style-type:disc}.importcsv .grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.importcsv .grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.importcsv .grid-cols-\\[320px_1fr\\]{grid-template-columns:320px 1fr}.importcsv .flex-row{flex-direction:row}.importcsv .flex-row-reverse{flex-direction:row-reverse}.importcsv .flex-col{flex-direction:column}.importcsv .flex-col-reverse{flex-direction:column-reverse}.importcsv .flex-wrap{flex-wrap:wrap}.importcsv .items-start{align-items:flex-start}.importcsv .items-end{align-items:flex-end}.importcsv .items-center{align-items:center}.importcsv .items-baseline{align-items:baseline}.importcsv .items-stretch{align-items:stretch}.importcsv .justify-start{justify-content:flex-start}.importcsv .justify-end{justify-content:flex-end}.importcsv .justify-center{justify-content:center}.importcsv .justify-between{justify-content:space-between}.importcsv .justify-around{justify-content:space-around}.importcsv .justify-evenly{justify-content:space-evenly}.importcsv .gap-0{gap:0px}.importcsv .gap-1{gap:.25rem}.importcsv .gap-1\\.5{gap:.375rem}.importcsv .gap-2{gap:.5rem}.importcsv .gap-3{gap:.75rem}.importcsv .gap-4{gap:1rem}.importcsv .gap-6{gap:1.5rem}.importcsv .gap-8{gap:2rem}.importcsv :is(.space-x-2>:not([hidden])~:not([hidden])){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.importcsv :is(.space-x-3>:not([hidden])~:not([hidden])){--tw-space-x-reverse: 0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.importcsv :is(.space-x-4>:not([hidden])~:not([hidden])){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.importcsv :is(.space-y-0>:not([hidden])~:not([hidden])){--tw-space-y-reverse: 0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}.importcsv :is(.space-y-0\\.5>:not([hidden])~:not([hidden])){--tw-space-y-reverse: 0;margin-top:calc(.125rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.125rem * var(--tw-space-y-reverse))}.importcsv :is(.space-y-1>:not([hidden])~:not([hidden])){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.importcsv :is(.space-y-1\\.5>:not([hidden])~:not([hidden])){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.importcsv :is(.space-y-2>:not([hidden])~:not([hidden])){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.importcsv :is(.space-y-3>:not([hidden])~:not([hidden])){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.importcsv :is(.space-y-4>:not([hidden])~:not([hidden])){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.importcsv :is(.space-y-6>:not([hidden])~:not([hidden])){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.importcsv :is(.space-y-reverse>:not([hidden])~:not([hidden])){--tw-space-y-reverse: 1}.importcsv :is(.space-x-reverse>:not([hidden])~:not([hidden])){--tw-space-x-reverse: 1}.importcsv :is(.divide-x>:not([hidden])~:not([hidden])){--tw-divide-x-reverse: 0;border-right-width:calc(1px * var(--tw-divide-x-reverse));border-left-width:calc(1px * calc(1 - var(--tw-divide-x-reverse)))}.importcsv :is(.divide-y>:not([hidden])~:not([hidden])){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.importcsv :is(.divide-y-reverse>:not([hidden])~:not([hidden])){--tw-divide-y-reverse: 1}.importcsv :is(.divide-x-reverse>:not([hidden])~:not([hidden])){--tw-divide-x-reverse: 1}.importcsv :is(.divide-gray-200>:not([hidden])~:not([hidden])){--tw-divide-opacity: 1;border-color:rgb(229 231 235 / var(--tw-divide-opacity, 1))}.importcsv .self-center{align-self:center}.importcsv .overflow-auto{overflow:auto}.importcsv .overflow-hidden{overflow:hidden}.importcsv .overflow-visible{overflow:visible}.importcsv .overflow-x-auto{overflow-x:auto}.importcsv .overflow-y-auto{overflow-y:auto}.importcsv .truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.importcsv .text-ellipsis{text-overflow:ellipsis}.importcsv .text-clip{text-overflow:clip}.importcsv .whitespace-normal{white-space:normal}.importcsv .whitespace-nowrap{white-space:nowrap}.importcsv .text-wrap{text-wrap:wrap}.importcsv .rounded{border-radius:.25rem}.importcsv .rounded-2xl{border-radius:1rem}.importcsv .rounded-full{border-radius:9999px}.importcsv .rounded-lg{border-radius:var(--radius)}.importcsv .rounded-md{border-radius:calc(var(--radius) - 2px)}.importcsv .rounded-sm{border-radius:calc(var(--radius) - 4px)}.importcsv .rounded-xl{border-radius:.75rem}.importcsv .rounded-b{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.importcsv .rounded-b-xl{border-bottom-right-radius:.75rem;border-bottom-left-radius:.75rem}.importcsv .rounded-e{border-start-end-radius:.25rem;border-end-end-radius:.25rem}.importcsv .rounded-l{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.importcsv .rounded-l-lg{border-top-left-radius:var(--radius);border-bottom-left-radius:var(--radius)}.importcsv .rounded-l-md{border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.importcsv .rounded-r{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.importcsv .rounded-r-md{border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.importcsv .rounded-s{border-start-start-radius:.25rem;border-end-start-radius:.25rem}.importcsv .rounded-t{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.importcsv .rounded-bl{border-bottom-left-radius:.25rem}.importcsv .rounded-br{border-bottom-right-radius:.25rem}.importcsv .rounded-ee{border-end-end-radius:.25rem}.importcsv .rounded-es{border-end-start-radius:.25rem}.importcsv .rounded-se{border-start-end-radius:.25rem}.importcsv .rounded-ss{border-start-start-radius:.25rem}.importcsv .rounded-tl{border-top-left-radius:.25rem}.importcsv .rounded-tr{border-top-right-radius:.25rem}.importcsv .border{border-width:1px}.importcsv .border-2{border-width:2px}.importcsv .border-x{border-left-width:1px;border-right-width:1px}.importcsv .border-y{border-top-width:1px;border-bottom-width:1px}.importcsv .border-b{border-bottom-width:1px}.importcsv .border-b-2{border-bottom-width:2px}.importcsv .border-e{border-inline-end-width:1px}.importcsv .border-l{border-left-width:1px}.importcsv .border-l-4{border-left-width:4px}.importcsv .border-r{border-right-width:1px}.importcsv .border-s{border-inline-start-width:1px}.importcsv .border-t{border-top-width:1px}.importcsv .border-dashed{border-style:dashed}.importcsv .border-none{border-style:none}.importcsv .border-amber-200{--tw-border-opacity: 1;border-color:rgb(253 230 138 / var(--tw-border-opacity, 1))}.importcsv .border-black{--tw-border-opacity: 1;border-color:rgb(0 0 0 / var(--tw-border-opacity, 1))}.importcsv .border-blue-100{--tw-border-opacity: 1;border-color:rgb(219 234 254 / var(--tw-border-opacity, 1))}.importcsv .border-blue-200{--tw-border-opacity: 1;border-color:rgb(191 219 254 / var(--tw-border-opacity, 1))}.importcsv .border-blue-300{--tw-border-opacity: 1;border-color:rgb(147 197 253 / var(--tw-border-opacity, 1))}.importcsv .border-blue-400{--tw-border-opacity: 1;border-color:rgb(96 165 250 / var(--tw-border-opacity, 1))}.importcsv .border-blue-50{--tw-border-opacity: 1;border-color:rgb(239 246 255 / var(--tw-border-opacity, 1))}.importcsv .border-blue-500{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.importcsv .border-blue-600{--tw-border-opacity: 1;border-color:rgb(37 99 235 / var(--tw-border-opacity, 1))}.importcsv .border-blue-700{--tw-border-opacity: 1;border-color:rgb(29 78 216 / var(--tw-border-opacity, 1))}.importcsv .border-blue-800{--tw-border-opacity: 1;border-color:rgb(30 64 175 / var(--tw-border-opacity, 1))}.importcsv .border-blue-900{--tw-border-opacity: 1;border-color:rgb(30 58 138 / var(--tw-border-opacity, 1))}.importcsv .border-destructive{border-color:hsl(var(--destructive))}.importcsv .border-destructive\\/50{border-color:hsl(var(--destructive) / .5)}.importcsv .border-gray-100{--tw-border-opacity: 1;border-color:rgb(243 244 246 / var(--tw-border-opacity, 1))}.importcsv .border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.importcsv .border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.importcsv .border-gray-400{--tw-border-opacity: 1;border-color:rgb(156 163 175 / var(--tw-border-opacity, 1))}.importcsv .border-gray-50{--tw-border-opacity: 1;border-color:rgb(249 250 251 / var(--tw-border-opacity, 1))}.importcsv .border-gray-500{--tw-border-opacity: 1;border-color:rgb(107 114 128 / var(--tw-border-opacity, 1))}.importcsv .border-gray-600{--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1))}.importcsv .border-gray-700{--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity, 1))}.importcsv .border-gray-800{--tw-border-opacity: 1;border-color:rgb(31 41 55 / var(--tw-border-opacity, 1))}.importcsv .border-gray-900{--tw-border-opacity: 1;border-color:rgb(17 24 39 / var(--tw-border-opacity, 1))}.importcsv .border-green-100{--tw-border-opacity: 1;border-color:rgb(220 252 231 / var(--tw-border-opacity, 1))}.importcsv .border-green-200{--tw-border-opacity: 1;border-color:rgb(187 247 208 / var(--tw-border-opacity, 1))}.importcsv .border-green-300{--tw-border-opacity: 1;border-color:rgb(134 239 172 / var(--tw-border-opacity, 1))}.importcsv .border-green-400{--tw-border-opacity: 1;border-color:rgb(74 222 128 / var(--tw-border-opacity, 1))}.importcsv .border-green-50{--tw-border-opacity: 1;border-color:rgb(240 253 244 / var(--tw-border-opacity, 1))}.importcsv .border-green-500{--tw-border-opacity: 1;border-color:rgb(34 197 94 / var(--tw-border-opacity, 1))}.importcsv .border-green-600{--tw-border-opacity: 1;border-color:rgb(22 163 74 / var(--tw-border-opacity, 1))}.importcsv .border-green-700{--tw-border-opacity: 1;border-color:rgb(21 128 61 / var(--tw-border-opacity, 1))}.importcsv .border-green-800{--tw-border-opacity: 1;border-color:rgb(22 101 52 / var(--tw-border-opacity, 1))}.importcsv .border-green-900{--tw-border-opacity: 1;border-color:rgb(20 83 45 / var(--tw-border-opacity, 1))}.importcsv .border-input{border-color:hsl(var(--input))}.importcsv .border-muted{border-color:hsl(var(--muted))}.importcsv .border-orange-500{--tw-border-opacity: 1;border-color:rgb(249 115 22 / var(--tw-border-opacity, 1))}.importcsv .border-primary{border-color:hsl(var(--primary))}.importcsv .border-purple-200{--tw-border-opacity: 1;border-color:rgb(233 213 255 / var(--tw-border-opacity, 1))}.importcsv .border-purple-300{--tw-border-opacity: 1;border-color:rgb(216 180 254 / var(--tw-border-opacity, 1))}.importcsv .border-purple-400{--tw-border-opacity: 1;border-color:rgb(192 132 252 / var(--tw-border-opacity, 1))}.importcsv .border-red-100{--tw-border-opacity: 1;border-color:rgb(254 226 226 / var(--tw-border-opacity, 1))}.importcsv .border-red-200{--tw-border-opacity: 1;border-color:rgb(254 202 202 / var(--tw-border-opacity, 1))}.importcsv .border-red-300{--tw-border-opacity: 1;border-color:rgb(252 165 165 / var(--tw-border-opacity, 1))}.importcsv .border-red-400{--tw-border-opacity: 1;border-color:rgb(248 113 113 / var(--tw-border-opacity, 1))}.importcsv .border-red-50{--tw-border-opacity: 1;border-color:rgb(254 242 242 / var(--tw-border-opacity, 1))}.importcsv .border-red-500{--tw-border-opacity: 1;border-color:rgb(239 68 68 / var(--tw-border-opacity, 1))}.importcsv .border-red-600{--tw-border-opacity: 1;border-color:rgb(220 38 38 / var(--tw-border-opacity, 1))}.importcsv .border-red-700{--tw-border-opacity: 1;border-color:rgb(185 28 28 / var(--tw-border-opacity, 1))}.importcsv .border-red-800{--tw-border-opacity: 1;border-color:rgb(153 27 27 / var(--tw-border-opacity, 1))}.importcsv .border-red-900{--tw-border-opacity: 1;border-color:rgb(127 29 29 / var(--tw-border-opacity, 1))}.importcsv .border-slate-100{--tw-border-opacity: 1;border-color:rgb(241 245 249 / var(--tw-border-opacity, 1))}.importcsv .border-slate-200{--tw-border-opacity: 1;border-color:rgb(226 232 240 / var(--tw-border-opacity, 1))}.importcsv .border-slate-300{--tw-border-opacity: 1;border-color:rgb(203 213 225 / var(--tw-border-opacity, 1))}.importcsv .border-slate-400{--tw-border-opacity: 1;border-color:rgb(148 163 184 / var(--tw-border-opacity, 1))}.importcsv .border-transparent{border-color:transparent}.importcsv .border-yellow-200{--tw-border-opacity: 1;border-color:rgb(254 240 138 / var(--tw-border-opacity, 1))}.importcsv .border-yellow-300{--tw-border-opacity: 1;border-color:rgb(253 224 71 / var(--tw-border-opacity, 1))}.importcsv .bg-amber-50{--tw-bg-opacity: 1;background-color:rgb(255 251 235 / var(--tw-bg-opacity, 1))}.importcsv .bg-background{background-color:hsl(var(--background))}.importcsv .bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.importcsv .bg-black\\/20{background-color:#0003}.importcsv .bg-blue-100{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.importcsv .bg-blue-200{--tw-bg-opacity: 1;background-color:rgb(191 219 254 / var(--tw-bg-opacity, 1))}.importcsv .bg-blue-300{--tw-bg-opacity: 1;background-color:rgb(147 197 253 / var(--tw-bg-opacity, 1))}.importcsv .bg-blue-400{--tw-bg-opacity: 1;background-color:rgb(96 165 250 / var(--tw-bg-opacity, 1))}.importcsv .bg-blue-50{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.importcsv .bg-blue-500{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.importcsv .bg-blue-600{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.importcsv .bg-blue-700{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1))}.importcsv .bg-blue-800{--tw-bg-opacity: 1;background-color:rgb(30 64 175 / var(--tw-bg-opacity, 1))}.importcsv .bg-blue-900{--tw-bg-opacity: 1;background-color:rgb(30 58 138 / var(--tw-bg-opacity, 1))}.importcsv .bg-card{background-color:hsl(var(--card))}.importcsv .bg-destructive{background-color:hsl(var(--destructive))}.importcsv .bg-emerald-100{--tw-bg-opacity: 1;background-color:rgb(209 250 229 / var(--tw-bg-opacity, 1))}.importcsv .bg-emerald-50{--tw-bg-opacity: 1;background-color:rgb(236 253 245 / var(--tw-bg-opacity, 1))}.importcsv .bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.importcsv .bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.importcsv .bg-gray-300{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity, 1))}.importcsv .bg-gray-400{--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity, 1))}.importcsv .bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.importcsv .bg-gray-500{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity, 1))}.importcsv .bg-gray-600{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.importcsv .bg-gray-700{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.importcsv .bg-gray-800{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.importcsv .bg-gray-900{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity, 1))}.importcsv .bg-green-100{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1))}.importcsv .bg-green-200{--tw-bg-opacity: 1;background-color:rgb(187 247 208 / var(--tw-bg-opacity, 1))}.importcsv .bg-green-300{--tw-bg-opacity: 1;background-color:rgb(134 239 172 / var(--tw-bg-opacity, 1))}.importcsv .bg-green-400{--tw-bg-opacity: 1;background-color:rgb(74 222 128 / var(--tw-bg-opacity, 1))}.importcsv .bg-green-50{--tw-bg-opacity: 1;background-color:rgb(240 253 244 / var(--tw-bg-opacity, 1))}.importcsv .bg-green-500{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.importcsv .bg-green-600{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity, 1))}.importcsv .bg-green-700{--tw-bg-opacity: 1;background-color:rgb(21 128 61 / var(--tw-bg-opacity, 1))}.importcsv .bg-green-800{--tw-bg-opacity: 1;background-color:rgb(22 101 52 / var(--tw-bg-opacity, 1))}.importcsv .bg-green-900{--tw-bg-opacity: 1;background-color:rgb(20 83 45 / var(--tw-bg-opacity, 1))}.importcsv .bg-input{background-color:hsl(var(--input))}.importcsv .bg-muted{background-color:hsl(var(--muted))}.importcsv .bg-orange-50{--tw-bg-opacity: 1;background-color:rgb(255 247 237 / var(--tw-bg-opacity, 1))}.importcsv .bg-popover{background-color:hsl(var(--popover))}.importcsv .bg-primary{background-color:hsl(var(--primary))}.importcsv .bg-purple-100{--tw-bg-opacity: 1;background-color:rgb(243 232 255 / var(--tw-bg-opacity, 1))}.importcsv .bg-purple-50{--tw-bg-opacity: 1;background-color:rgb(250 245 255 / var(--tw-bg-opacity, 1))}.importcsv .bg-purple-600{--tw-bg-opacity: 1;background-color:rgb(147 51 234 / var(--tw-bg-opacity, 1))}.importcsv .bg-purple-700{--tw-bg-opacity: 1;background-color:rgb(126 34 206 / var(--tw-bg-opacity, 1))}.importcsv .bg-red-100{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.importcsv .bg-red-200{--tw-bg-opacity: 1;background-color:rgb(254 202 202 / var(--tw-bg-opacity, 1))}.importcsv .bg-red-300{--tw-bg-opacity: 1;background-color:rgb(252 165 165 / var(--tw-bg-opacity, 1))}.importcsv .bg-red-400{--tw-bg-opacity: 1;background-color:rgb(248 113 113 / var(--tw-bg-opacity, 1))}.importcsv .bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.importcsv .bg-red-50\\/70{background-color:#fef2f2b3}.importcsv .bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.importcsv .bg-red-600{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.importcsv .bg-red-700{--tw-bg-opacity: 1;background-color:rgb(185 28 28 / var(--tw-bg-opacity, 1))}.importcsv .bg-red-800{--tw-bg-opacity: 1;background-color:rgb(153 27 27 / var(--tw-bg-opacity, 1))}.importcsv .bg-red-900{--tw-bg-opacity: 1;background-color:rgb(127 29 29 / var(--tw-bg-opacity, 1))}.importcsv .bg-slate-100{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1))}.importcsv .bg-slate-200{--tw-bg-opacity: 1;background-color:rgb(226 232 240 / var(--tw-bg-opacity, 1))}.importcsv .bg-slate-300{--tw-bg-opacity: 1;background-color:rgb(203 213 225 / var(--tw-bg-opacity, 1))}.importcsv .bg-slate-50{--tw-bg-opacity: 1;background-color:rgb(248 250 252 / var(--tw-bg-opacity, 1))}.importcsv .bg-slate-50\\/80{background-color:#f8fafccc}.importcsv .bg-slate-700{--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity, 1))}.importcsv .bg-slate-800{--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity, 1))}.importcsv .bg-slate-900\\/50{background-color:#0f172a80}.importcsv .bg-transparent{background-color:transparent}.importcsv .bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.importcsv .bg-yellow-50{--tw-bg-opacity: 1;background-color:rgb(254 252 232 / var(--tw-bg-opacity, 1))}.importcsv .bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.importcsv .bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.importcsv .bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.importcsv .from-blue-500{--tw-gradient-from: #3b82f6 var(--tw-gradient-from-position);--tw-gradient-to: rgb(59 130 246 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.importcsv .from-blue-600{--tw-gradient-from: #2563eb var(--tw-gradient-from-position);--tw-gradient-to: rgb(37 99 235 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.importcsv .from-gray-50{--tw-gradient-from: #f9fafb var(--tw-gradient-from-position);--tw-gradient-to: rgb(249 250 251 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.importcsv .from-green-500{--tw-gradient-from: #22c55e var(--tw-gradient-from-position);--tw-gradient-to: rgb(34 197 94 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.importcsv .from-orange-500{--tw-gradient-from: #f97316 var(--tw-gradient-from-position);--tw-gradient-to: rgb(249 115 22 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.importcsv .from-pink-100{--tw-gradient-from: #fce7f3 var(--tw-gradient-from-position);--tw-gradient-to: rgb(252 231 243 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.importcsv .from-pink-50{--tw-gradient-from: #fdf2f8 var(--tw-gradient-from-position);--tw-gradient-to: rgb(253 242 248 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.importcsv .from-purple-50{--tw-gradient-from: #faf5ff var(--tw-gradient-from-position);--tw-gradient-to: rgb(250 245 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.importcsv .from-purple-500{--tw-gradient-from: #a855f7 var(--tw-gradient-from-position);--tw-gradient-to: rgb(168 85 247 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.importcsv .from-purple-600{--tw-gradient-from: #9333ea var(--tw-gradient-from-position);--tw-gradient-to: rgb(147 51 234 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.importcsv .from-slate-50{--tw-gradient-from: #f8fafc var(--tw-gradient-from-position);--tw-gradient-to: rgb(248 250 252 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.importcsv .from-white{--tw-gradient-from: #fff var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.importcsv .to-blue-400{--tw-gradient-to: #60a5fa var(--tw-gradient-to-position)}.importcsv .to-blue-50{--tw-gradient-to: #eff6ff var(--tw-gradient-to-position)}.importcsv .to-blue-600{--tw-gradient-to: #2563eb var(--tw-gradient-to-position)}.importcsv .to-gray-100{--tw-gradient-to: #f3f4f6 var(--tw-gradient-to-position)}.importcsv .to-green-600{--tw-gradient-to: #16a34a var(--tw-gradient-to-position)}.importcsv .to-orange-600{--tw-gradient-to: #ea580c var(--tw-gradient-to-position)}.importcsv .to-pink-500{--tw-gradient-to: #ec4899 var(--tw-gradient-to-position)}.importcsv .to-purple-100{--tw-gradient-to: #f3e8ff var(--tw-gradient-to-position)}.importcsv .to-purple-50{--tw-gradient-to: #faf5ff var(--tw-gradient-to-position)}.importcsv .to-purple-600{--tw-gradient-to: #9333ea var(--tw-gradient-to-position)}.importcsv .to-slate-100{--tw-gradient-to: #f1f5f9 var(--tw-gradient-to-position)}.importcsv .to-slate-50\\/50{--tw-gradient-to: rgb(248 250 252 / .5) var(--tw-gradient-to-position)}.importcsv .bg-clip-text{-webkit-background-clip:text;background-clip:text}.importcsv .bg-repeat{background-repeat:repeat}.importcsv .stroke-2{stroke-width:2}.importcsv .stroke-\\[2\\.5\\]{stroke-width:2.5}.importcsv .p-0{padding:0}.importcsv .p-1{padding:.25rem}.importcsv .p-1\\.5{padding:.375rem}.importcsv .p-2{padding:.5rem}.importcsv .p-3{padding:.75rem}.importcsv .p-4{padding:1rem}.importcsv .p-5{padding:1.25rem}.importcsv .p-6{padding:1.5rem}.importcsv .p-8{padding:2rem}.importcsv .px-1{padding-left:.25rem;padding-right:.25rem}.importcsv .px-10{padding-left:2.5rem;padding-right:2.5rem}.importcsv .px-2{padding-left:.5rem;padding-right:.5rem}.importcsv .px-2\\.5{padding-left:.625rem;padding-right:.625rem}.importcsv .px-3{padding-left:.75rem;padding-right:.75rem}.importcsv .px-4{padding-left:1rem;padding-right:1rem}.importcsv .px-5{padding-left:1.25rem;padding-right:1.25rem}.importcsv .px-6{padding-left:1.5rem;padding-right:1.5rem}.importcsv .px-8{padding-left:2rem;padding-right:2rem}.importcsv .py-0\\.5{padding-top:.125rem;padding-bottom:.125rem}.importcsv .py-1{padding-top:.25rem;padding-bottom:.25rem}.importcsv .py-1\\.5{padding-top:.375rem;padding-bottom:.375rem}.importcsv .py-10{padding-top:2.5rem;padding-bottom:2.5rem}.importcsv .py-12{padding-top:3rem;padding-bottom:3rem}.importcsv .py-2{padding-top:.5rem;padding-bottom:.5rem}.importcsv .py-2\\.5{padding-top:.625rem;padding-bottom:.625rem}.importcsv .py-3{padding-top:.75rem;padding-bottom:.75rem}.importcsv .py-3\\.5{padding-top:.875rem;padding-bottom:.875rem}.importcsv .py-4{padding-top:1rem;padding-bottom:1rem}.importcsv .py-5{padding-top:1.25rem;padding-bottom:1.25rem}.importcsv .py-6{padding-top:1.5rem;padding-bottom:1.5rem}.importcsv .py-8{padding-top:2rem;padding-bottom:2rem}.importcsv .pb-0{padding-bottom:0}.importcsv .pb-2{padding-bottom:.5rem}.importcsv .pl-10{padding-left:2.5rem}.importcsv .pl-7{padding-left:1.75rem}.importcsv .pl-8{padding-left:2rem}.importcsv .pr-10{padding-right:2.5rem}.importcsv .pr-2{padding-right:.5rem}.importcsv .pr-8{padding-right:2rem}.importcsv .pt-0{padding-top:0}.importcsv .pt-4{padding-top:1rem}.importcsv .pt-5{padding-top:1.25rem}.importcsv .pt-6{padding-top:1.5rem}.importcsv .text-left{text-align:left}.importcsv .text-center{text-align:center}.importcsv .text-right{text-align:right}.importcsv .font-sans{font-family:Geist,Plus Jakarta Sans,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.importcsv .text-2xl{font-size:1.5rem;line-height:2rem}.importcsv .text-3xl{font-size:1.875rem;line-height:2.25rem}.importcsv .text-4xl{font-size:2.25rem;line-height:2.5rem}.importcsv .text-\\[11px\\]{font-size:11px}.importcsv .text-base{font-size:1rem;line-height:1.5rem}.importcsv .text-lg{font-size:1.125rem;line-height:1.75rem}.importcsv .text-sm{font-size:.875rem;line-height:1.25rem}.importcsv .text-xl{font-size:1.25rem;line-height:1.75rem}.importcsv .text-xs{font-size:.75rem;line-height:1rem}.importcsv .font-bold{font-weight:700}.importcsv .font-medium{font-weight:500}.importcsv .font-normal{font-weight:400}.importcsv .font-semibold{font-weight:600}.importcsv .uppercase{text-transform:uppercase}.importcsv .lowercase{text-transform:lowercase}.importcsv .capitalize{text-transform:capitalize}.importcsv .normal-case{text-transform:none}.importcsv .italic{font-style:italic}.importcsv .not-italic{font-style:normal}.importcsv .normal-nums{font-variant-numeric:normal}.importcsv .ordinal{--tw-ordinal: ordinal;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.importcsv .slashed-zero{--tw-slashed-zero: slashed-zero;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.importcsv .lining-nums{--tw-numeric-figure: lining-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.importcsv .oldstyle-nums{--tw-numeric-figure: oldstyle-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.importcsv .proportional-nums{--tw-numeric-spacing: proportional-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.importcsv .tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.importcsv .diagonal-fractions{--tw-numeric-fraction: diagonal-fractions;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.importcsv .stacked-fractions{--tw-numeric-fraction: stacked-fractions;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.importcsv .leading-none{line-height:1}.importcsv .leading-relaxed{line-height:1.625}.importcsv .tracking-tight{letter-spacing:-.025em}.importcsv .tracking-wide{letter-spacing:.025em}.importcsv .tracking-wider{letter-spacing:.05em}.importcsv .text-amber-500{--tw-text-opacity: 1;color:rgb(245 158 11 / var(--tw-text-opacity, 1))}.importcsv .text-amber-600{--tw-text-opacity: 1;color:rgb(217 119 6 / var(--tw-text-opacity, 1))}.importcsv .text-amber-800{--tw-text-opacity: 1;color:rgb(146 64 14 / var(--tw-text-opacity, 1))}.importcsv .text-black{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity, 1))}.importcsv .text-blue-100{--tw-text-opacity: 1;color:rgb(219 234 254 / var(--tw-text-opacity, 1))}.importcsv .text-blue-200{--tw-text-opacity: 1;color:rgb(191 219 254 / var(--tw-text-opacity, 1))}.importcsv .text-blue-300{--tw-text-opacity: 1;color:rgb(147 197 253 / var(--tw-text-opacity, 1))}.importcsv .text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.importcsv .text-blue-50{--tw-text-opacity: 1;color:rgb(239 246 255 / var(--tw-text-opacity, 1))}.importcsv .text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.importcsv .text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.importcsv .text-blue-700{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.importcsv .text-blue-800{--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity, 1))}.importcsv .text-blue-900{--tw-text-opacity: 1;color:rgb(30 58 138 / var(--tw-text-opacity, 1))}.importcsv .text-card-foreground{color:hsl(var(--card-foreground))}.importcsv .text-current{color:currentColor}.importcsv .text-destructive{color:hsl(var(--destructive))}.importcsv .text-destructive-foreground{color:hsl(var(--destructive-foreground))}.importcsv .text-emerald-600{--tw-text-opacity: 1;color:rgb(5 150 105 / var(--tw-text-opacity, 1))}.importcsv .text-emerald-700{--tw-text-opacity: 1;color:rgb(4 120 87 / var(--tw-text-opacity, 1))}.importcsv .text-foreground{color:hsl(var(--foreground))}.importcsv .text-foreground\\/50{color:hsl(var(--foreground) / .5)}.importcsv .text-gray-100{--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity, 1))}.importcsv .text-gray-200{--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.importcsv .text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.importcsv .text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.importcsv .text-gray-50{--tw-text-opacity: 1;color:rgb(249 250 251 / var(--tw-text-opacity, 1))}.importcsv .text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.importcsv .text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.importcsv .text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.importcsv .text-gray-800{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.importcsv .text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.importcsv .text-green-100{--tw-text-opacity: 1;color:rgb(220 252 231 / var(--tw-text-opacity, 1))}.importcsv .text-green-200{--tw-text-opacity: 1;color:rgb(187 247 208 / var(--tw-text-opacity, 1))}.importcsv .text-green-300{--tw-text-opacity: 1;color:rgb(134 239 172 / var(--tw-text-opacity, 1))}.importcsv .text-green-400{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.importcsv .text-green-50{--tw-text-opacity: 1;color:rgb(240 253 244 / var(--tw-text-opacity, 1))}.importcsv .text-green-500{--tw-text-opacity: 1;color:rgb(34 197 94 / var(--tw-text-opacity, 1))}.importcsv .text-green-600{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.importcsv .text-green-700{--tw-text-opacity: 1;color:rgb(21 128 61 / var(--tw-text-opacity, 1))}.importcsv .text-green-800{--tw-text-opacity: 1;color:rgb(22 101 52 / var(--tw-text-opacity, 1))}.importcsv .text-green-900{--tw-text-opacity: 1;color:rgb(20 83 45 / var(--tw-text-opacity, 1))}.importcsv .text-muted-foreground{color:hsl(var(--muted-foreground))}.importcsv .text-orange-500{--tw-text-opacity: 1;color:rgb(249 115 22 / var(--tw-text-opacity, 1))}.importcsv .text-pink-600{--tw-text-opacity: 1;color:rgb(219 39 119 / var(--tw-text-opacity, 1))}.importcsv .text-popover-foreground{color:hsl(var(--popover-foreground))}.importcsv .text-purple-100{--tw-text-opacity: 1;color:rgb(243 232 255 / var(--tw-text-opacity, 1))}.importcsv .text-purple-700{--tw-text-opacity: 1;color:rgb(126 34 206 / var(--tw-text-opacity, 1))}.importcsv .text-red-100{--tw-text-opacity: 1;color:rgb(254 226 226 / var(--tw-text-opacity, 1))}.importcsv .text-red-200{--tw-text-opacity: 1;color:rgb(254 202 202 / var(--tw-text-opacity, 1))}.importcsv .text-red-300{--tw-text-opacity: 1;color:rgb(252 165 165 / var(--tw-text-opacity, 1))}.importcsv .text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.importcsv .text-red-50{--tw-text-opacity: 1;color:rgb(254 242 242 / var(--tw-text-opacity, 1))}.importcsv .text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.importcsv .text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.importcsv .text-red-700{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity, 1))}.importcsv .text-red-800{--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity, 1))}.importcsv .text-red-900{--tw-text-opacity: 1;color:rgb(127 29 29 / var(--tw-text-opacity, 1))}.importcsv .text-slate-300{--tw-text-opacity: 1;color:rgb(203 213 225 / var(--tw-text-opacity, 1))}.importcsv .text-slate-400{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.importcsv .text-slate-500{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.importcsv .text-slate-600{--tw-text-opacity: 1;color:rgb(71 85 105 / var(--tw-text-opacity, 1))}.importcsv .text-slate-700{--tw-text-opacity: 1;color:rgb(51 65 85 / var(--tw-text-opacity, 1))}.importcsv .text-slate-800{--tw-text-opacity: 1;color:rgb(30 41 59 / var(--tw-text-opacity, 1))}.importcsv .text-slate-900{--tw-text-opacity: 1;color:rgb(15 23 42 / var(--tw-text-opacity, 1))}.importcsv .text-transparent{color:transparent}.importcsv .text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.importcsv .text-yellow-600{--tw-text-opacity: 1;color:rgb(202 138 4 / var(--tw-text-opacity, 1))}.importcsv .text-yellow-800{--tw-text-opacity: 1;color:rgb(133 77 14 / var(--tw-text-opacity, 1))}.importcsv .text-yellow-900{--tw-text-opacity: 1;color:rgb(113 63 18 / var(--tw-text-opacity, 1))}.importcsv .underline{text-decoration-line:underline}.importcsv .overline{text-decoration-line:overline}.importcsv .line-through{text-decoration-line:line-through}.importcsv .no-underline{text-decoration-line:none}.importcsv .underline-offset-4{text-underline-offset:4px}.importcsv .antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.importcsv .subpixel-antialiased{-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto}.importcsv .opacity-0{opacity:0}.importcsv .opacity-100{opacity:1}.importcsv .opacity-25{opacity:.25}.importcsv .opacity-30{opacity:.3}.importcsv .opacity-50{opacity:.5}.importcsv .opacity-70{opacity:.7}.importcsv .opacity-75{opacity:.75}.importcsv .opacity-90{opacity:.9}.importcsv .shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.importcsv .shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.importcsv .shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.importcsv .shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.importcsv .shadow-none{--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.importcsv .shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.importcsv .outline-none{outline:2px solid transparent;outline-offset:2px}.importcsv .\\!outline{outline-style:solid!important}.importcsv .outline{outline-style:solid}.importcsv .ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.importcsv .ring-0{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.importcsv .ring-2{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.importcsv .ring-inset{--tw-ring-inset: inset}.importcsv .ring-blue-500{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.importcsv .ring-gray-400{--tw-ring-opacity: 1;--tw-ring-color: rgb(156 163 175 / var(--tw-ring-opacity, 1))}.importcsv .ring-gray-600{--tw-ring-opacity: 1;--tw-ring-color: rgb(75 85 99 / var(--tw-ring-opacity, 1))}.importcsv .ring-pink-500{--tw-ring-opacity: 1;--tw-ring-color: rgb(236 72 153 / var(--tw-ring-opacity, 1))}.importcsv .ring-purple-400{--tw-ring-opacity: 1;--tw-ring-color: rgb(192 132 252 / var(--tw-ring-opacity, 1))}.importcsv .ring-ring{--tw-ring-color: hsl(var(--ring))}.importcsv .ring-offset-background{--tw-ring-offset-color: hsl(var(--background))}.importcsv .blur{--tw-blur: blur(8px);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)}.importcsv .drop-shadow{--tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / .1)) drop-shadow(0 1px 1px rgb(0 0 0 / .06));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)}.importcsv .grayscale{--tw-grayscale: grayscale(100%);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)}.importcsv .invert{--tw-invert: invert(100%);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)}.importcsv .sepia{--tw-sepia: sepia(100%);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)}.importcsv .filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.importcsv .backdrop-blur{--tw-backdrop-blur: blur(8px);-webkit-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);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)}.importcsv .backdrop-grayscale{--tw-backdrop-grayscale: grayscale(100%);-webkit-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);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)}.importcsv .backdrop-invert{--tw-backdrop-invert: invert(100%);-webkit-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);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)}.importcsv .backdrop-sepia{--tw-backdrop-sepia: sepia(100%);-webkit-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);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)}.importcsv .backdrop-filter{-webkit-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);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)}.importcsv .transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.importcsv .transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.importcsv .transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.importcsv .transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.importcsv .transition-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.importcsv .transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.importcsv .duration-200{transition-duration:.2s}.importcsv .duration-300{transition-duration:.3s}.importcsv .duration-500{transition-duration:.5s}.importcsv .ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.importcsv .ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.importcsv :is(.importcsv .scrollbar-thin)::-webkit-scrollbar{width:6px;height:6px}.importcsv :is(.importcsv .scrollbar-thin)::-webkit-scrollbar-track{border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.importcsv :is(.importcsv .scrollbar-thin)::-webkit-scrollbar-thumb{border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity, 1))}.importcsv :is(.importcsv .scrollbar-thin)::-webkit-scrollbar-thumb:hover{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity, 1))}.importcsv :is(.importcsv .animate-in){animation-duration:.3s;animation-fill-mode:both;animation-timing-function:cubic-bezier(.4,0,.2,1)}.importcsv :is(.importcsv .fade-in-0){animation-name:fadeIn}.importcsv :is(.importcsv .slide-in-from-top-2){animation-name:slideInFromTop}.importcsv :is(.importcsv .slide-in-from-bottom-2){animation-name:slideInFromBottom}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInFromTop{0%{transform:translateY(-.5rem);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideInFromBottom{0%{transform:translateY(.5rem);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.importcsv .mapping-row-animate{animation:fadeInUp .3s ease-out forwards;opacity:0;will-change:opacity,transform}@keyframes checkPulse{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}.importcsv .check-pulse{animation:checkPulse .3s ease-out}.importcsv :is(.importcsv .text-balance){text-wrap:balance}.importcsv :is(.importcsv .no-scrollbar)::-webkit-scrollbar{display:none}.importcsv :is(.importcsv .no-scrollbar){-ms-overflow-style:none;scrollbar-width:none}.importcsv dialog::backdrop{background-color:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.importcsv .modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.importcsv .modal-content{background-color:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 10px #0000001a;max-width:90%;max-height:90%;overflow:auto;position:relative}.importcsv .close-button{position:absolute;top:10px;right:10px;background:none;border:none;font-size:24px;cursor:pointer;color:#666}.importcsv :is(.importcsv .close-button):hover{color:#000}.importcsv .importer-container{width:100%;height:100%;display:flex;flex-direction:column;padding:20px;box-sizing:border-box}@media (max-width: 768px){.importcsv .importer-container{padding:10px}}.importcsv .importer-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:10px;border-bottom:1px solid #e0e0e0}.importcsv .importer-header .importcsv h2{font-size:24px;margin:0}@media (max-width: 480px){.importcsv .importer-header{flex-direction:column;align-items:flex-start}}.importer-.importcsv{flex:1;overflow:auto}.importcsv .steps-indicator{display:flex;justify-content:space-between;margin-bottom:30px;padding:0 20px}@media (max-width: 768px){.importcsv .steps-indicator{padding:0 10px;margin-bottom:20px}}.importcsv .step{flex:1;text-align:center;position:relative}.importcsv :is(.importcsv .step):after{content:"";position:absolute;top:15px;left:50%;width:100%;height:2px;background-color:#e0e0e0;z-index:-1}.importcsv :is(.importcsv .step):last-child:after{display:none}.importcsv :is(.importcsv .step).active .importcsv .step-number{background-color:#2563eb;color:#fff}.importcsv :is(.importcsv :is(.importcsv .step).active)~.step .step-number{background-color:#f0f0f0;color:#999}.importcsv :is(.importcsv .step).completed .importcsv .step-number{background-color:#10b981;color:#fff}.importcsv :is(.importcsv :is(.importcsv .step).completed):after{background-color:#10b981}.importcsv .step-number{width:30px;height:30px;border-radius:50%;background-color:#f0f0f0;color:#999;display:inline-flex;align-items:center;justify-content:center;font-weight:700;margin-bottom:5px;position:relative;z-index:1}.importcsv .step-label{font-size:12px;color:#666}@media (max-width: 480px){.importcsv .step-label{font-size:10px}}.importcsv .progress-bar{width:100%;height:8px;background-color:#e0e0e0;border-radius:4px;overflow:hidden;margin-bottom:20px}.importcsv .progress-fill{height:100%;background-color:#2563eb;transition:width .3s ease}.importcsv .upload-area{border:2px dashed #ccc;border-radius:8px;padding:40px;text-align:center;cursor:pointer;transition:border-color .3s ease}.importcsv :is(.importcsv .upload-area):hover,.importcsv :is(.importcsv .upload-area).drag-over{border-color:#2563eb}@media (max-width: 480px){.importcsv .upload-area{padding:20px}}.importcsv .upload-icon{font-size:48px;color:#999;margin-bottom:10px}@media (max-width: 480px){.importcsv .upload-icon{font-size:36px}}.importcsv .upload-text{font-size:16px;color:#666;margin-bottom:10px}@media (max-width: 480px){.importcsv .upload-text{font-size:14px}}.importcsv .upload-hint{font-size:14px;color:#999}@media (max-width: 480px){.importcsv .upload-hint{font-size:12px}}.importcsv .file-input{display:none}.importcsv .button{padding:10px 20px;border:none;border-radius:4px;font-size:14px;cursor:pointer;transition:background-color .3s ease}.importcsv .button-primary{background-color:#2563eb;color:#fff}.importcsv :is(.importcsv .button-primary):hover{background-color:#1d4ed8}.importcsv :is(.importcsv .button-primary):disabled{background-color:#93bbfc;cursor:not-allowed}.importcsv .button-secondary{background-color:#f0f0f0;color:#333}.importcsv :is(.importcsv .button-secondary):hover{background-color:#e0e0e0}.importcsv .button-group{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.importcsv .error-message{color:#ef4444;font-size:14px;margin-top:5px}.importcsv .success-message{color:#10b981;font-size:14px;margin-top:5px}.importcsv .data-preview{width:100%;overflow-x:auto;margin-top:20px}.importcsv .data-table{width:100%;border-collapse:collapse;font-size:14px}.importcsv .data-table .importcsv th,.importcsv .data-table .importcsv td{padding:8px 12px;text-align:left;border:1px solid #e0e0e0}.importcsv .data-table .importcsv th{background-color:#f8f8f8;font-weight:600}.importcsv .data-table .importcsv tr:nth-child(2n){background-color:#fafafa}@media (max-width: 768px){.importcsv .data-table{font-size:12px}.importcsv .data-table .importcsv th,.importcsv .data-table .importcsv td{padding:6px 8px}}.importcsv .mapping-container{display:grid;gap:20px;margin-top:20px}.importcsv .mapping-item{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px}@media (max-width: 768px){.importcsv .mapping-item{grid-template-columns:1fr;gap:5px}}.importcsv .mapping-source,.importcsv .mapping-target{padding:10px;border:1px solid #e0e0e0;border-radius:4px}.importcsv .mapping-arrow{color:#999;font-size:20px}@media (max-width: 768px){.importcsv .mapping-arrow{display:none}}.importcsv .mapping-select{width:100%;padding:8px;border:1px solid #e0e0e0;border-radius:4px;background-color:#fff}.importcsv .validation-summary{background-color:#fef2f2;border:1px solid #fecaca;border-radius:4px;padding:15px;margin-top:20px}.importcsv .validation-title{font-weight:600;color:#991b1b;margin-bottom:10px}.importcsv .validation-list{list-style:disc;margin-left:20px;color:#991b1b;font-size:14px}.importcsv .completion-container{text-align:center;padding:40px}@media (max-width: 480px){.importcsv .completion-container{padding:20px}}.importcsv .completion-icon{font-size:64px;color:#10b981;margin-bottom:20px}@media (max-width: 480px){.importcsv .completion-icon{font-size:48px}}.importcsv .completion-title{font-size:24px;font-weight:600;margin-bottom:10px}@media (max-width: 480px){.importcsv .completion-title{font-size:20px}}.importcsv .completion-message{font-size:16px;color:#666;margin-bottom:30px}@media (max-width: 480px){.importcsv .completion-message{font-size:14px}}.importcsv .stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:20px;margin-top:30px}@media (max-width: 480px){.importcsv .stats-grid{grid-template-columns:1fr;gap:15px}}.importcsv .stat-item{text-align:center;padding:15px;background-color:#f8f8f8;border-radius:4px}.importcsv .stat-value{font-size:24px;font-weight:600;color:#2563eb}.importcsv .stat-label{font-size:14px;color:#666;margin-top:5px}.importcsv .spinner{border:3px solid #f3f3f3;border-top:3px solid #2563eb;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin:20px auto}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.importcsv .tooltip{position:relative;display:inline-block;cursor:help}.importcsv .tooltip-text{visibility:hidden;width:200px;background-color:#333;color:#fff;text-align:center;border-radius:4px;padding:8px;position:absolute;z-index:1;bottom:125%;left:50%;margin-left:-100px;opacity:0;transition:opacity .3s;font-size:12px}.importcsv .tooltip:hover .tooltip-text{visibility:visible;opacity:1}.importcsv .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.importcsv button:focus-visible,.importcsv input:focus-visible,.importcsv select:focus-visible,.importcsv textarea:focus-visible{outline:2px solid #2563eb;outline-offset:2px}@media print{.importcsv .no-print{display:none}.importcsv .print-only{display:block}}@media (prefers-color-scheme: dark){.importcsv.auto-dark{background-color:#1f2937;color:#f3f4f6}}.importcsv .form-group{margin-bottom:15px}.importcsv .form-group label{display:block;margin-bottom:5px;font-weight:500}.importcsv .form-group input{width:100%;padding:8px 12px;border-radius:4px;border:1px solid #ccc;box-sizing:border-box}.importcsv .file\\:border-0::file-selector-button{border-width:0px}.importcsv .file\\:bg-transparent::file-selector-button{background-color:transparent}.importcsv .file\\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.importcsv .file\\:font-medium::file-selector-button{font-weight:500}.importcsv .placeholder\\:text-muted-foreground::-moz-placeholder{color:hsl(var(--muted-foreground))}.importcsv .placeholder\\:text-muted-foreground::placeholder{color:hsl(var(--muted-foreground))}.importcsv .backdrop\\:bg-black\\/50::backdrop{background-color:#00000080}.importcsv .before\\:absolute:before{content:var(--tw-content);position:absolute}.importcsv .before\\:inset-0:before{content:var(--tw-content);inset:0}.importcsv .before\\:-z-10:before{content:var(--tw-content);z-index:-10}.importcsv .before\\:rounded-full:before{content:var(--tw-content);border-radius:9999px}.importcsv .before\\:bg-green-500:before{content:var(--tw-content);--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.importcsv .before\\:content-\\[\\'\\'\\]:before{--tw-content: "";content:var(--tw-content)}.importcsv .after\\:absolute:after{content:var(--tw-content);position:absolute}.importcsv .after\\:left-\\[2px\\]:after{content:var(--tw-content);left:2px}.importcsv .after\\:top-\\[2px\\]:after{content:var(--tw-content);top:2px}.importcsv .after\\:h-5:after{content:var(--tw-content);height:1.25rem}.importcsv .after\\:w-5:after{content:var(--tw-content);width:1.25rem}.importcsv .after\\:rounded-full:after{content:var(--tw-content);border-radius:9999px}.importcsv .after\\:bg-white:after{content:var(--tw-content);--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.importcsv .after\\:transition-transform:after{content:var(--tw-content);transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.importcsv .after\\:duration-200:after{content:var(--tw-content);transition-duration:.2s}.importcsv .after\\:content-\\[\\'\\'\\]:after{--tw-content: "";content:var(--tw-content)}.importcsv .last\\:border-b-0:last-child{border-bottom-width:0px}.importcsv .hover\\:scale-105:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.importcsv .hover\\:border-blue-400:hover{--tw-border-opacity: 1;border-color:rgb(96 165 250 / var(--tw-border-opacity, 1))}.importcsv .hover\\:border-gray-400:hover{--tw-border-opacity: 1;border-color:rgb(156 163 175 / var(--tw-border-opacity, 1))}.importcsv .hover\\:border-gray-500:hover{--tw-border-opacity: 1;border-color:rgb(107 114 128 / var(--tw-border-opacity, 1))}.importcsv .hover\\:border-slate-300:hover{--tw-border-opacity: 1;border-color:rgb(203 213 225 / var(--tw-border-opacity, 1))}.importcsv .hover\\:bg-blue-100:hover{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:bg-blue-50:hover{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:bg-blue-50\\/50:hover{background-color:#eff6ff80}.importcsv .hover\\:bg-blue-700:hover{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:bg-gray-100:hover{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:bg-gray-200:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:bg-gray-600:hover{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:bg-gray-700:hover{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:bg-gray-800:hover{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:bg-green-700:hover{--tw-bg-opacity: 1;background-color:rgb(21 128 61 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:bg-purple-200:hover{--tw-bg-opacity: 1;background-color:rgb(233 213 255 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:bg-purple-50:hover{--tw-bg-opacity: 1;background-color:rgb(250 245 255 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:bg-purple-700:hover{--tw-bg-opacity: 1;background-color:rgb(126 34 206 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:bg-red-100:hover{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:bg-red-100\\/70:hover{background-color:#fee2e2b3}.importcsv .hover\\:bg-red-500:hover{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:bg-red-700:hover{--tw-bg-opacity: 1;background-color:rgb(185 28 28 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:bg-secondary:hover{background-color:hsl(var(--secondary))}.importcsv .hover\\:bg-slate-100:hover{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:bg-slate-200:hover{--tw-bg-opacity: 1;background-color:rgb(226 232 240 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:bg-slate-50:hover{--tw-bg-opacity: 1;background-color:rgb(248 250 252 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:bg-slate-800:hover{--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity, 1))}.importcsv .hover\\:from-blue-50:hover{--tw-gradient-from: #eff6ff var(--tw-gradient-from-position);--tw-gradient-to: rgb(239 246 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.importcsv .hover\\:from-purple-600:hover{--tw-gradient-from: #9333ea var(--tw-gradient-from-position);--tw-gradient-to: rgb(147 51 234 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.importcsv .hover\\:from-purple-700:hover{--tw-gradient-from: #7e22ce var(--tw-gradient-from-position);--tw-gradient-to: rgb(126 34 206 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.importcsv .hover\\:to-blue-700:hover{--tw-gradient-to: #1d4ed8 var(--tw-gradient-to-position)}.importcsv .hover\\:to-pink-600:hover{--tw-gradient-to: #db2777 var(--tw-gradient-to-position)}.importcsv .hover\\:to-slate-50:hover{--tw-gradient-to: #f8fafc var(--tw-gradient-to-position)}.importcsv .hover\\:text-blue-700:hover{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.importcsv .hover\\:text-foreground:hover{color:hsl(var(--foreground))}.importcsv .hover\\:text-gray-600:hover{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.importcsv .hover\\:text-gray-900:hover{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.importcsv .hover\\:text-slate-700:hover{--tw-text-opacity: 1;color:rgb(51 65 85 / var(--tw-text-opacity, 1))}.importcsv .hover\\:underline:hover{text-decoration-line:underline}.importcsv .hover\\:opacity-100:hover{opacity:1}.importcsv .hover\\:shadow-2xl:hover{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.importcsv .hover\\:shadow-lg:hover{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.importcsv .hover\\:shadow-blue-500\\/10:hover{--tw-shadow-color: rgb(59 130 246 / .1);--tw-shadow: var(--tw-shadow-colored)}.importcsv .focus\\:border-blue-400:focus{--tw-border-opacity: 1;border-color:rgb(96 165 250 / var(--tw-border-opacity, 1))}.importcsv .focus\\:border-blue-500:focus{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.importcsv .focus\\:bg-white:focus{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.importcsv .focus\\:opacity-100:focus{opacity:1}.importcsv .focus\\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.importcsv .focus\\:ring-1:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.importcsv .focus\\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.importcsv .focus\\:ring-blue-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.importcsv .focus\\:ring-blue-500\\/20:focus{--tw-ring-color: rgb(59 130 246 / .2)}.importcsv .focus\\:ring-blue-500\\/40:focus{--tw-ring-color: rgb(59 130 246 / .4)}.importcsv .focus\\:ring-gray-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(107 114 128 / var(--tw-ring-opacity, 1))}.importcsv .focus\\:ring-pink-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(236 72 153 / var(--tw-ring-opacity, 1))}.importcsv .focus\\:ring-purple-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(168 85 247 / var(--tw-ring-opacity, 1))}.importcsv .focus\\:ring-red-300:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(252 165 165 / var(--tw-ring-opacity, 1))}.importcsv .focus\\:ring-ring:focus{--tw-ring-color: hsl(var(--ring))}.importcsv .focus\\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.importcsv .focus-visible\\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.importcsv .focus-visible\\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.importcsv .focus-visible\\:ring-blue-500:focus-visible{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.importcsv .focus-visible\\:ring-gray-500:focus-visible{--tw-ring-opacity: 1;--tw-ring-color: rgb(107 114 128 / var(--tw-ring-opacity, 1))}.importcsv .focus-visible\\:ring-red-500:focus-visible{--tw-ring-opacity: 1;--tw-ring-color: rgb(239 68 68 / var(--tw-ring-opacity, 1))}.importcsv .focus-visible\\:ring-ring:focus-visible{--tw-ring-color: hsl(var(--ring))}.importcsv .focus-visible\\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.importcsv .disabled\\:pointer-events-none:disabled{pointer-events:none}.importcsv .disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.importcsv .disabled\\:bg-gray-400:disabled{--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity, 1))}.importcsv .disabled\\:bg-gray-50:disabled{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.importcsv .disabled\\:opacity-50:disabled{opacity:.5}.importcsv :is(.group:hover .group-hover\\:-translate-y-0\\.5){--tw-translate-y: -.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.importcsv :is(.group:hover .group-hover\\:translate-x-1){--tw-translate-x: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.importcsv :is(.group:hover .group-hover\\:scale-110){--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.importcsv :is(.group:hover .group-hover\\:border-blue-200){--tw-border-opacity: 1;border-color:rgb(191 219 254 / var(--tw-border-opacity, 1))}.importcsv :is(.group:hover .group-hover\\:text-blue-500){--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.importcsv :is(.group:hover .group-hover\\:text-blue-600){--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.importcsv :is(.group:hover .group-hover\\:text-blue-700){--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.importcsv :is(.group:hover .group-hover\\:shadow-md){--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.importcsv :is(.peer:checked~.peer-checked\\:border-blue-600){--tw-border-opacity: 1;border-color:rgb(37 99 235 / var(--tw-border-opacity, 1))}.importcsv :is(.peer:checked~.peer-checked\\:bg-blue-600){--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.importcsv :is(.peer:checked~.peer-checked\\:after\\:translate-x-5):after{content:var(--tw-content);--tw-translate-x: 1.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.importcsv :is(.peer:focus~.peer-focus\\:outline-none){outline:2px solid transparent;outline-offset:2px}.importcsv :is(.peer:focus~.peer-focus\\:ring-2){--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.importcsv :is(.peer:focus~.peer-focus\\:ring-blue-500){--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.importcsv :is(.peer:focus~.peer-focus\\:ring-offset-2){--tw-ring-offset-width: 2px}.importcsv :is(.peer:focus-visible~.peer-focus-visible\\:outline-none){outline:2px solid transparent;outline-offset:2px}.importcsv :is(.peer:focus-visible~.peer-focus-visible\\:ring-2){--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.importcsv :is(.peer:focus-visible~.peer-focus-visible\\:ring-blue-500){--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.importcsv :is(.peer:focus-visible~.peer-focus-visible\\:ring-offset-2){--tw-ring-offset-width: 2px}.importcsv :is(.peer:disabled~.peer-disabled\\:cursor-not-allowed){cursor:not-allowed}.importcsv :is(.peer:disabled~.peer-disabled\\:opacity-50){opacity:.5}.importcsv :is(.importcsv .data-\\[state\\=open\\]\\:animate-in[data-state=open]){animation-duration:.3s;animation-fill-mode:both;animation-timing-function:cubic-bezier(.4,0,.2,1)}.importcsv .dark\\:border-blue-800:is([data-theme=dark] *){--tw-border-opacity: 1;border-color:rgb(30 64 175 / var(--tw-border-opacity, 1))}.importcsv .dark\\:border-destructive:is([data-theme=dark] *){border-color:hsl(var(--destructive))}.importcsv .dark\\:border-gray-600:is([data-theme=dark] *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1))}.importcsv .dark\\:border-gray-700:is([data-theme=dark] *){--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity, 1))}.importcsv .dark\\:border-slate-700:is([data-theme=dark] *){--tw-border-opacity: 1;border-color:rgb(51 65 85 / var(--tw-border-opacity, 1))}.importcsv .dark\\:bg-black\\/50:is([data-theme=dark] *){background-color:#00000080}.importcsv .dark\\:bg-blue-500:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.importcsv .dark\\:bg-blue-900\\/20:is([data-theme=dark] *){background-color:#1e3a8a33}.importcsv .dark\\:bg-gray-700:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.importcsv .dark\\:bg-gray-800:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.importcsv .dark\\:bg-gray-900:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity, 1))}.importcsv .dark\\:bg-slate-700:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity, 1))}.importcsv .dark\\:bg-slate-800:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity, 1))}.importcsv .dark\\:bg-slate-900:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(15 23 42 / var(--tw-bg-opacity, 1))}.importcsv .dark\\:bg-slate-900\\/70:is([data-theme=dark] *){background-color:#0f172ab3}.importcsv .dark\\:text-amber-400:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(251 191 36 / var(--tw-text-opacity, 1))}.importcsv .dark\\:text-blue-400:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.importcsv .dark\\:text-gray-100:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity, 1))}.importcsv .dark\\:text-gray-200:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.importcsv .dark\\:text-gray-300:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.importcsv .dark\\:text-gray-400:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.importcsv .dark\\:text-green-400:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.importcsv .dark\\:text-slate-100:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(241 245 249 / var(--tw-text-opacity, 1))}.importcsv .dark\\:text-slate-300:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(203 213 225 / var(--tw-text-opacity, 1))}.importcsv .dark\\:text-slate-400:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.importcsv .dark\\:text-slate-600:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(71 85 105 / var(--tw-text-opacity, 1))}.importcsv .dark\\:hover\\:bg-blue-600:hover:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.importcsv .dark\\:hover\\:bg-gray-600:hover:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.importcsv .dark\\:hover\\:bg-gray-700:hover:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.importcsv .dark\\:hover\\:bg-gray-800:hover:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.importcsv .dark\\:hover\\:bg-slate-600:hover:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(71 85 105 / var(--tw-bg-opacity, 1))}.importcsv .dark\\:hover\\:bg-slate-700:hover:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity, 1))}.importcsv .dark\\:hover\\:bg-slate-800:hover:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity, 1))}.importcsv .dark\\:hover\\:text-blue-300:hover:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(147 197 253 / var(--tw-text-opacity, 1))}.importcsv .dark\\:hover\\:text-gray-100:hover:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity, 1))}@media (min-width: 640px){.importcsv .sm\\:bottom-0{bottom:0}.importcsv .sm\\:right-0{right:0}.importcsv .sm\\:top-auto{top:auto}.importcsv .sm\\:flex-row{flex-direction:row}.importcsv .sm\\:flex-col{flex-direction:column}.importcsv .sm\\:justify-end{justify-content:flex-end}.importcsv :is(.sm\\:space-x-2>:not([hidden])~:not([hidden])){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.importcsv .sm\\:px-6{padding-left:1.5rem;padding-right:1.5rem}.importcsv .sm\\:text-left{text-align:left}}@media (min-width: 768px){.importcsv .md\\:max-w-\\[420px\\]{max-width:420px}.importcsv .md\\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.importcsv .md\\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.importcsv .md\\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width: 1024px){.importcsv .lg\\:px-8{padding-left:2rem;padding-right:2rem}}.importcsv .\\[\\&\\.drag-active\\]\\:scale-\\[1\\.02\\].drag-active{--tw-scale-x: 1.02;--tw-scale-y: 1.02;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.importcsv .\\[\\&\\.drag-active\\]\\:border-blue-500.drag-active{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.importcsv .\\[\\&\\.drag-active\\]\\:bg-blue-50.drag-active{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.importcsv .\\[\\&\\.drag-active\\]\\:bg-gradient-to-b.drag-active{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.importcsv .\\[\\&\\.drag-active\\]\\:from-blue-50.drag-active{--tw-gradient-from: #eff6ff var(--tw-gradient-from-position);--tw-gradient-to: rgb(239 246 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.importcsv .\\[\\&\\.drag-active\\]\\:to-blue-100.drag-active{--tw-gradient-to: #dbeafe var(--tw-gradient-to-position)}.importcsv .\\[\\&\\.drag-active\\]\\:shadow-xl.drag-active{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.importcsv .\\[\\&\\.drag-active\\]\\:shadow-blue-500\\/20.drag-active{--tw-shadow-color: rgb(59 130 246 / .2);--tw-shadow: var(--tw-shadow-colored)}.importcsv :is(.\\[\\&\\>\\*\\]\\:min-w-\\[190px\\]>*){min-width:190px}.importcsv :is(.\\[\\&\\>\\*\\]\\:flex-1>*){flex:1 1 0%}.importcsv :is(.\\[\\&\\>div\\:nth-child\\(even\\)\\]\\:bg-gray-50>div:nth-child(2n)){--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.importcsv :is(.\\[\\&\\>svg\\+div\\]\\:translate-y-\\[-3px\\]>svg+div){--tw-translate-y: -3px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.importcsv :is(.\\[\\&\\>svg\\]\\:absolute>svg){position:absolute}.importcsv :is(.\\[\\&\\>svg\\]\\:left-4>svg){left:1rem}.importcsv :is(.\\[\\&\\>svg\\]\\:top-4>svg){top:1rem}.importcsv :is(.\\[\\&\\>svg\\]\\:text-destructive>svg){color:hsl(var(--destructive))}.importcsv :is(.\\[\\&\\>svg\\]\\:text-foreground>svg){color:hsl(var(--foreground))}.importcsv :is(.\\[\\&\\>svg\\~\\*\\]\\:pl-7>svg~*){padding-left:1.75rem}.importcsv :is(.\\[\\&\\[data-theme\\=\\'dark\\'\\]_\\&\\]\\:border-gray-600[data-theme=dark] .\\[\\&\\[data-theme\\=\\'dark\\'\\]_\\&\\]\\:border-gray-600){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1))}.importcsv :is(.\\[\\&\\[data-theme\\=\\'dark\\'\\]_\\&\\]\\:bg-blue-500[data-theme=dark] .\\[\\&\\[data-theme\\=\\'dark\\'\\]_\\&\\]\\:bg-blue-500){--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.importcsv :is(.\\[\\&\\[data-theme\\=\\'dark\\'\\]_\\&\\]\\:bg-gray-700[data-theme=dark] .\\[\\&\\[data-theme\\=\\'dark\\'\\]_\\&\\]\\:bg-gray-700){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.importcsv :is(.\\[\\&\\[data-theme\\=\\'dark\\'\\]_\\&\\]\\:bg-gray-800[data-theme=dark] .\\[\\&\\[data-theme\\=\\'dark\\'\\]_\\&\\]\\:bg-gray-800){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.importcsv :is(.\\[\\&\\[data-theme\\=\\'dark\\'\\]_\\&\\]\\:text-gray-100[data-theme=dark] .\\[\\&\\[data-theme\\=\\'dark\\'\\]_\\&\\]\\:text-gray-100){--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity, 1))}.importcsv :is(.\\[\\&\\[data-theme\\=\\'dark\\'\\]_\\&\\]\\:text-gray-200[data-theme=dark] .\\[\\&\\[data-theme\\=\\'dark\\'\\]_\\&\\]\\:text-gray-200){--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.importcsv :is(.\\[\\&\\[data-theme\\=\\'dark\\'\\]_\\&\\]\\:hover\\:bg-blue-600:hover[data-theme=dark] .\\[\\&\\[data-theme\\=\\'dark\\'\\]_\\&\\]\\:hover\\:bg-blue-600:hover){--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.importcsv :is(.\\[\\&\\[data-theme\\=\\'dark\\'\\]_\\&\\]\\:hover\\:bg-gray-600:hover[data-theme=dark] .\\[\\&\\[data-theme\\=\\'dark\\'\\]_\\&\\]\\:hover\\:bg-gray-600:hover){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.importcsv :is(.\\[\\&\\[data-theme\\=\\'dark\\'\\]_\\&\\]\\:hover\\:bg-gray-700:hover[data-theme=dark] .\\[\\&\\[data-theme\\=\\'dark\\'\\]_\\&\\]\\:hover\\:bg-gray-700:hover){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.importcsv :is(.\\[\\&_p\\]\\:leading-relaxed p){line-height:1.625}.importcsv :is(.drag-active .\\[\\.drag-active_\\&\\]\\:scale-125){--tw-scale-x: 1.25;--tw-scale-y: 1.25;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.importcsv :is(.drag-active .\\[\\.drag-active_\\&\\]\\:bg-blue-500){--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.importcsv :is(.drag-active .\\[\\.drag-active_\\&\\]\\:text-white){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.importcsv :is(.drag-active .\\[\\.drag-active_\\&\\]\\:shadow-lg){--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.importcsv .CSVImporter{border:none;background-color:transparent;padding:0 1rem;border-radius:1.2rem;color:inherit;cursor:pointer;font-weight:500;font-size:14px;display:inline-flex;gap:.5rem;align-items:center;transition:filter .2s ease-out}.importcsv .CSVImporter svg{display:block}.importcsv .CSVImporter svg path{stroke:currentColor!important}.importcsv .CSVImporter:hover,.importcsv .CSVImporter:active{filter:brightness(1.2)}.importcsv .CSVImporter-div{border:none;display:block;width:100%;height:auto;max-height:80vh;overflow-y:auto}@media (max-width: 768px){.importcsv .CSVImporter-dialog{width:95vw;min-width:unset;max-width:100%}}.importcsv [data-theme=dark]{--csv-bg-primary: #1a1a1a;--csv-bg-secondary: #2d2d2d;--csv-bg-hover: #363636;--csv-bg-input: #242424;--csv-text-primary: #ffffff;--csv-text-secondary: #a0a0a0;--csv-text-muted: #6b6b6b;--csv-border: #404040;--csv-border-subtle: #333333;background-color:var(--csv-bg-primary)!important;color:var(--csv-text-primary)!important}.importcsv [data-theme=dark] h1,.importcsv [data-theme=dark] h2,.importcsv [data-theme=dark] h3,.importcsv [data-theme=dark] h4{background-color:transparent!important;color:var(--csv-text-primary)!important}.importcsv [data-theme=dark] .text-gray-900,.importcsv [data-theme=dark] .text-gray-800{color:var(--csv-text-primary)!important}.importcsv [data-theme=dark] .text-gray-600,.importcsv [data-theme=dark] .text-gray-700{color:var(--csv-text-secondary)!important}.importcsv [data-theme=dark] .text-gray-500,.importcsv [data-theme=dark] .text-gray-400{color:var(--csv-text-muted)!important}.importcsv [data-theme=dark] .bg-white{background-color:var(--csv-bg-secondary)!important}.importcsv [data-theme=dark] .bg-gray-50,.importcsv [data-theme=dark] [class*=px-6][class*=py-]{background-color:transparent!important}.importcsv [data-theme=dark] table .bg-gray-50{background-color:var(--csv-bg-primary)!important}.importcsv [data-theme=dark] .bg-gray-100{background-color:var(--csv-bg-secondary)!important}.importcsv [data-theme=dark] .border-gray-200,.importcsv [data-theme=dark] .border-gray-300{border-color:var(--csv-border)!important}.importcsv :is(.importcsv [data-theme=dark] button).bg-blue-600{background-color:#3b82f6!important;color:#fff!important;border:1px solid #60a5fa!important}.importcsv :is(.importcsv :is(.importcsv [data-theme=dark] button).bg-blue-600):hover{background-color:#2563eb!important;border-color:#3b82f6!important}.importcsv :is(.importcsv [data-theme=dark] button)[class*=border][class*=border-gray]{background-color:transparent!important;border-color:var(--csv-border)!important;color:var(--csv-text-primary)!important}.importcsv :is(.importcsv :is(.importcsv [data-theme=dark] button)[class*=border][class*=border-gray]):hover{background-color:#ffffff0d!important;border-color:var(--csv-text-secondary)!important}.importcsv :is(.importcsv [data-theme=dark] button).bg-gray-100{background-color:var(--csv-bg-hover)!important;color:var(--csv-text-primary)!important}.importcsv :is(.importcsv :is(.importcsv [data-theme=dark] button).bg-gray-100):hover{background-color:#4d4d4d!important}.importcsv [data-theme=dark] input:not([type=checkbox]):not([type=radio]),.importcsv [data-theme=dark] select,.importcsv [data-theme=dark] textarea{background-color:var(--csv-bg-input)!important;border-color:var(--csv-border-subtle)!important;color:var(--csv-text-primary)!important}.importcsv :is(.importcsv [data-theme=dark] input:not([type=checkbox]):not([type=radio]),.importcsv [data-theme=dark] select,.importcsv [data-theme=dark] textarea)::-moz-placeholder{color:var(--csv-text-muted)!important}.importcsv :is(.importcsv [data-theme=dark] input:not([type=checkbox]):not([type=radio]),.importcsv [data-theme=dark] select,.importcsv [data-theme=dark] textarea)::placeholder{color:var(--csv-text-muted)!important}.importcsv :is(.importcsv [data-theme=dark] input:not([type=checkbox]):not([type=radio]),.importcsv [data-theme=dark] select,.importcsv [data-theme=dark] textarea):focus{border-color:#3b82f6!important;background-color:var(--csv-bg-secondary)!important;outline:none!important}.importcsv [data-theme=dark] option{background-color:var(--csv-bg-secondary)!important;color:var(--csv-text-primary)!important}.importcsv [data-theme=dark] table,.importcsv [data-theme=dark] table .importcsv thead{background-color:transparent!important}.importcsv [data-theme=dark] table .importcsv thead .importcsv th{background-color:transparent!important;color:var(--csv-text-primary)!important;border-color:var(--csv-border)!important}.importcsv [data-theme=dark] table t.importcsv{background-color:transparent!important}.importcsv [data-theme=dark] table t.importcsv .importcsv tr{background-color:transparent!important;border-color:var(--csv-border)!important}.importcsv :is(.importcsv [data-theme=dark] table t.importcsv .importcsv tr):hover{background-color:transparent!important}.importcsv [data-theme=dark] table t.importcsv .importcsv tr .importcsv td{background-color:transparent!important;border-color:var(--csv-border)!important;color:var(--csv-text-primary)!important}[data-theme=dark] table t.importcsv tr td:first-child{background-color:var(--csv-bg-secondary)!important;border-right:1px solid var(--csv-border)!important}.importcsv [data-theme=dark] dialog{background-color:var(--csv-bg-primary)!important;color:var(--csv-text-primary)!important}.importcsv :is(.importcsv [data-theme=dark] .rounded-lg,.importcsv [data-theme=dark] [class*=border][class*=rounded]).bg-white{background-color:var(--csv-bg-secondary)!important}.importcsv [data-theme=dark] .stepper-item{color:var(--csv-text-secondary)!important}.importcsv :is(.importcsv [data-theme=dark] .stepper-item).active{color:var(--csv-text-primary)!important}.importcsv :is(.importcsv [data-theme=dark] button[class*=rounded-md])[class*=bg-white][class*=shadow]{background-color:var(--csv-bg-hover)!important;color:var(--csv-text-primary)!important;border:1px solid var(--csv-border)!important}.importcsv [data-theme=dark] td input{background-color:transparent!important;border:none!important;color:var(--csv-text-primary)!important;padding:8px 12px!important}.importcsv :is(.importcsv [data-theme=dark] td input):focus{outline:2px solid #3b82f6!important;outline-offset:-2px!important;background-color:#3b82f61a!important}.importcsv :is(.importcsv [data-theme=dark] td input):hover:not(:focus){background-color:transparent!important}.importcsv [data-theme=dark] td:hover,.importcsv [data-theme=dark] td:hover input,.importcsv [data-theme=dark] .hover\\:bg-gray-50:hover,.importcsv [data-theme=dark] .hover\\:bg-gray-100:hover,.importcsv [data-theme=dark] [class*="hover:bg"]:hover{background-color:#ffffff05!important}.importcsv [data-theme=dark] .close-button,.importcsv [data-theme=dark] [aria-label=Close]{color:var(--csv-text-primary)!important}.importcsv [data-theme=dark] [class*=flex][class*=justify-between],.importcsv [data-theme=dark] [class*=flex][class*=items-center]{background-color:transparent!important}.importcsv [data-theme=dark] .bg-blue-50{background-color:#3b82f61a!important;border-color:#3b82f6!important}.importcsv [data-theme=dark] .bg-blue-50{background-color:#3b82f626!important}.importcsv [data-theme=dark] .text-blue-700,.importcsv [data-theme=dark] .text-blue-600{color:#93c5fd!important}.csv-importer-modal-overlay{position:fixed;inset:0;background-color:#000000d9;display:flex;align-items:center;justify-content:center;z-index:9999;animation:csv-importer-fade-in .2s ease-out}.csv-importer-modal-content{position:relative;background:#fff;border-radius:1rem;width:65vw;max-height:75vh;min-width:800px;max-width:1200px;overflow:hidden;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;animation:csv-importer-slide-up .3s ease-out;display:flex;flex-direction:column}.csv-importer-modal-content.csv-importer-modal-fullwidth{width:100%;max-width:100%;min-width:unset;max-height:unset;height:auto;border-radius:0}@keyframes csv-importer-fade-in{0%{opacity:0}to{opacity:1}}@keyframes csv-importer-slide-up{0%{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}.importcsv [data-theme=dark] .csv-importer-modal-content{background:#1a1a1a;color:#fff}.importcsv [data-theme=dark] .csv-importer-modal-overlay{background-color:#000000f2}@media (max-width: 1024px){.csv-importer-modal-content{width:80vw;min-width:unset}}@media (max-width: 768px){.csv-importer-modal-content{width:90vw;min-width:unset;max-width:calc(100% - 2rem)}}@media (max-width: 480px){.csv-importer-modal-content{width:92vw;min-width:unset;max-width:calc(100% - 1rem)}}.csv-importer-modal-content>div{max-height:75vh;overflow-y:auto;width:100%;height:100%}.csv-importer-modal-container{width:100%;height:100%;display:flex;flex-direction:column}.csv-importer-modal-container .importcsv{width:100%;height:100%;flex:1;display:flex;flex-direction:column}`)),document.head.appendChild(t)}}catch(r){console.error("vite-plugin-css-injected-by-js",r)}})();
|
|
2
|
+
"use strict";var Ht=Object.create;var so=Object.defineProperty;var Gt=Object.getOwnPropertyDescriptor;var Kt=Object.getOwnPropertyNames;var Xt=Object.getPrototypeOf,Jt=Object.prototype.hasOwnProperty;var Qt=(o,e,r,t)=>{if(e&&typeof e=="object"||typeof e=="function")for(let a of Kt(e))!Jt.call(o,a)&&a!==r&&so(o,a,{get:()=>e[a],enumerable:!(t=Gt(e,a))||t.enumerable});return o};var ea=(o,e,r)=>(r=o!=null?Ht(Xt(o)):{},Qt(e||!o||!o.__esModule?so(r,"default",{value:o,enumerable:!0}):r,o));Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const h=require("react"),rt=require("react-dom");function ot(o){const e=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(o){for(const r in o)if(r!=="default"){const t=Object.getOwnPropertyDescriptor(o,r);Object.defineProperty(e,r,t.get?t:{enumerable:!0,get:()=>o[r]})}}return e.default=o,Object.freeze(e)}const nr=ot(h),ra=ot(rt);function tt(o){return o&&o.__esModule&&Object.prototype.hasOwnProperty.call(o,"default")?o.default:o}var Ir={exports:{}},kr={},io;function oa(){if(io)return kr;io=1;/**
|
|
3
|
+
* @license React
|
|
4
|
+
* react-jsx-dev-runtime.development.js
|
|
5
|
+
*
|
|
6
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
7
|
+
*
|
|
8
|
+
* This source code is licensed under the MIT license found in the
|
|
9
|
+
* LICENSE file in the root directory of this source tree.
|
|
10
|
+
*/return(function(){function o(m){if(m==null)return null;if(typeof m=="function")return m.$$typeof===C?null:m.displayName||m.name||null;if(typeof m=="string")return m;switch(m){case E:return"Fragment";case j:return"Profiler";case k:return"StrictMode";case K:return"Suspense";case $:return"SuspenseList";case p:return"Activity"}if(typeof m=="object")switch(typeof m.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),m.$$typeof){case x:return"Portal";case de:return m.displayName||"Context";case F:return(m._context.displayName||"Context")+".Consumer";case me:var D=m.render;return m=m.displayName,m||(m=D.displayName||D.name||"",m=m!==""?"ForwardRef("+m+")":"ForwardRef"),m;case b:return D=m.displayName||null,D!==null?D:o(m.type)||"Memo";case u:D=m._payload,m=m._init;try{return o(m(D))}catch{}}return null}function e(m){return""+m}function r(m){try{e(m);var D=!1}catch{D=!0}if(D){D=console;var g=D.error,I=typeof Symbol=="function"&&Symbol.toStringTag&&m[Symbol.toStringTag]||m.constructor.name||"Object";return g.call(D,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",I),e(m)}}function t(m){if(m===E)return"<>";if(typeof m=="object"&&m!==null&&m.$$typeof===u)return"<...>";try{var D=o(m);return D?"<"+D+">":"<...>"}catch{return"<...>"}}function a(){var m=_.A;return m===null?null:m.getOwner()}function n(){return Error("react-stack-top-frame")}function l(m){if(O.call(m,"key")){var D=Object.getOwnPropertyDescriptor(m,"key").get;if(D&&D.isReactWarning)return!1}return m.key!==void 0}function s(m,D){function g(){te||(te=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",D))}g.isReactWarning=!0,Object.defineProperty(m,"key",{get:g,configurable:!0})}function c(){var m=o(this.type);return A[m]||(A[m]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),m=this.props.ref,m!==void 0?m:null}function i(m,D,g,I,Q,z){var V=g.ref;return m={$$typeof:v,type:m,key:D,props:g,_owner:I},(V!==void 0?V:null)!==null?Object.defineProperty(m,"ref",{enumerable:!1,get:c}):Object.defineProperty(m,"ref",{enumerable:!1,value:null}),m._store={},Object.defineProperty(m._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(m,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(m,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:Q}),Object.defineProperty(m,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:z}),Object.freeze&&(Object.freeze(m.props),Object.freeze(m)),m}function f(m,D,g,I,Q,z){var V=D.children;if(V!==void 0)if(I)if(Z(V)){for(I=0;I<V.length;I++)T(V[I]);Object.freeze&&Object.freeze(V)}else console.error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else T(V);if(O.call(D,"key")){V=o(m);var M=Object.keys(D).filter(function(L){return L!=="key"});I=0<M.length?"{key: someKey, "+M.join(": ..., ")+": ...}":"{key: someKey}",se[V+I]||(M=0<M.length?"{"+M.join(": ..., ")+": ...}":"{}",console.error(`A props object containing a "key" prop is being spread into JSX:
|
|
11
|
+
let props = %s;
|
|
12
|
+
<%s {...props} />
|
|
13
|
+
React keys must be passed directly to JSX without using spread:
|
|
14
|
+
let props = %s;
|
|
15
|
+
<%s key={someKey} {...props} />`,I,V,M,V),se[V+I]=!0)}if(V=null,g!==void 0&&(r(g),V=""+g),l(D)&&(r(D.key),V=""+D.key),"key"in D){g={};for(var S in D)S!=="key"&&(g[S]=D[S])}else g=D;return V&&s(g,typeof m=="function"?m.displayName||m.name||"Unknown":m),i(m,V,g,a(),Q,z)}function T(m){w(m)?m._store&&(m._store.validated=1):typeof m=="object"&&m!==null&&m.$$typeof===u&&(m._payload.status==="fulfilled"?w(m._payload.value)&&m._payload.value._store&&(m._payload.value._store.validated=1):m._store&&(m._store.validated=1))}function w(m){return typeof m=="object"&&m!==null&&m.$$typeof===v}var y=h,v=Symbol.for("react.transitional.element"),x=Symbol.for("react.portal"),E=Symbol.for("react.fragment"),k=Symbol.for("react.strict_mode"),j=Symbol.for("react.profiler"),F=Symbol.for("react.consumer"),de=Symbol.for("react.context"),me=Symbol.for("react.forward_ref"),K=Symbol.for("react.suspense"),$=Symbol.for("react.suspense_list"),b=Symbol.for("react.memo"),u=Symbol.for("react.lazy"),p=Symbol.for("react.activity"),C=Symbol.for("react.client.reference"),_=y.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,O=Object.prototype.hasOwnProperty,Z=Array.isArray,H=console.createTask?console.createTask:function(){return null};y={react_stack_bottom_frame:function(m){return m()}};var te,A={},N=y.react_stack_bottom_frame.bind(y,n)(),W=H(t(n)),se={};kr.Fragment=E,kr.jsxDEV=function(m,D,g,I){var Q=1e4>_.recentlyCreatedOwnerStacks++;return f(m,D,g,I,Q?Error("react-stack-top-frame"):N,Q?H(t(m)):W)}})(),kr}var co;function ta(){return co||(co=1,Ir.exports=oa()),Ir.exports}var d=ta();const{createContext:aa,forwardRef:Re,cloneElement:na}=nr,la=ra.createPortal,da=o=>nr.Children.toArray(o).filter(Boolean);var Vr={exports:{}};/* @license
|
|
3
16
|
Papa Parse
|
|
4
17
|
v5.5.2
|
|
5
18
|
https://github.com/mholt/PapaParse
|
|
6
19
|
License: MIT
|
|
7
|
-
*/var
|
|
8
|
-
`),
|
|
9
|
-
`;for(var
|
|
10
|
-
`&&
|
|
11
|
-
`:"\r"}}function
|
|
12
|
-
`&&
|
|
13
|
-
`&&(
|
|
14
|
-
`);var
|
|
15
|
-
|
|
16
|
-
`,'"',s.BYTE_ORDER_MARK],s.WORKERS_SUPPORTED=!n&&!!t.Worker,s.NODE_STREAM_INPUT=1,s.LocalChunkSize=10485760,s.RemoteChunkSize=5242880,s.DefaultDelimiter=",",s.Parser=w,s.ParserHandle=h,s.NetworkStreamer=E,s.FileStreamer=v,s.StringStreamer=y,s.ReadableStreamStreamer=x,t.jQuery&&((a=t.jQuery).fn.parse=function(u){var b=u.config||{},g=[];return this.each(function(I){if(!(a(this).prop("tagName").toUpperCase()==="INPUT"&&a(this).attr("type").toLowerCase()==="file"&&t.FileReader)||!this.files||this.files.length===0)return!0;for(var $=0;$<this.files.length;$++)g.push({file:this.files[$],inputElem:this,instanceConfig:a.extend({},b)})}),C(),this;function C(){if(g.length===0)V(u.complete)&&u.complete();else{var I,$,Y,oe,A=g[0];if(V(u.before)){var k=u.before(A.file,A.inputElem);if(typeof k=="object"){if(k.action==="abort")return I="AbortError",$=A.file,Y=A.inputElem,oe=k.reason,void(V(u.error)&&u.error({name:I},$,Y,oe));if(k.action==="skip")return void _();typeof k.config=="object"&&(A.instanceConfig=a.extend(A.instanceConfig,k.config))}else if(k==="skip")return void _()}var F=A.instanceConfig.complete;A.instanceConfig.complete=function(be){V(F)&&F(be,A.file,A.inputElem),_()},s.parse(A.file,A.instanceConfig)}}function _(){g.splice(0,1),C()}}),d&&(t.onmessage=function(u){u=u.data,s.WORKER_ID===void 0&&u&&(s.WORKER_ID=u.workerId),typeof u.input=="string"?t.postMessage({workerId:s.WORKER_ID,results:s.parse(u.input,u.config),finished:!0}):(t.File&&u.input instanceof File||u.input instanceof Object)&&(u=s.parse(u.input,u.config))&&t.postMessage({workerId:s.WORKER_ID,results:u,finished:!0})}),(E.prototype=Object.create(f.prototype)).constructor=E,(v.prototype=Object.create(f.prototype)).constructor=v,(y.prototype=Object.create(y.prototype)).constructor=y,(x.prototype=Object.create(f.prototype)).constructor=x,s})})(Nr)),Nr.exports}var aa=ta();const co=Qo(aa),na={icon:{small:"1em"}};function et(o){var e,r,t="";if(typeof o=="string"||typeof o=="number")t+=o;else if(typeof o=="object")if(Array.isArray(o)){var a=o.length;for(e=0;e<a;e++)o[e]&&(r=et(o[e]))&&(t&&(t+=" "),t+=r)}else for(r in o)o[r]&&(t&&(t+=" "),t+=r);return t}function rt(){for(var o,e,r=0,t="",a=arguments.length;r<a;r++)(o=arguments[r])&&(e=et(o))&&(t&&(t+=" "),t+=e);return t}const Xr="-",da=o=>{const e=ca(o),{conflictingClassGroups:r,conflictingClassGroupModifiers:t}=o;return{getClassGroupId:d=>{const c=d.split(Xr);return c[0]===""&&c.length!==1&&c.shift(),ot(c,e)||la(d)},getConflictingClassGroupIds:(d,c)=>{const i=r[d]||[];return c&&t[d]?[...i,...t[d]]:i}}},ot=(o,e)=>{if(o.length===0)return e.classGroupId;const r=o[0],t=e.nextPart.get(r),a=t?ot(o.slice(1),t):void 0;if(a)return a;if(e.validators.length===0)return;const n=o.join(Xr);return e.validators.find(({validator:d})=>d(n))?.classGroupId},so=/^\[(.+)\]$/,la=o=>{if(so.test(o)){const e=so.exec(o)[1],r=e?.substring(0,e.indexOf(":"));if(r)return"arbitrary.."+r}},ca=o=>{const{theme:e,classGroups:r}=o,t={nextPart:new Map,validators:[]};for(const a in r)Br(r[a],t,a,e);return t},Br=(o,e,r,t)=>{o.forEach(a=>{if(typeof a=="string"){const n=a===""?e:io(e,a);n.classGroupId=r;return}if(typeof a=="function"){if(sa(a)){Br(a(t),e,r,t);return}e.validators.push({validator:a,classGroupId:r});return}Object.entries(a).forEach(([n,d])=>{Br(d,io(e,n),r,t)})})},io=(o,e)=>{let r=o;return e.split(Xr).forEach(t=>{r.nextPart.has(t)||r.nextPart.set(t,{nextPart:new Map,validators:[]}),r=r.nextPart.get(t)}),r},sa=o=>o.isThemeGetter,ia=o=>{if(o<1)return{get:()=>{},set:()=>{}};let e=0,r=new Map,t=new Map;const a=(n,d)=>{r.set(n,d),e++,e>o&&(e=0,t=r,r=new Map)};return{get(n){let d=r.get(n);if(d!==void 0)return d;if((d=t.get(n))!==void 0)return a(n,d),d},set(n,d){r.has(n)?r.set(n,d):a(n,d)}}},Wr="!",qr=":",ba=qr.length,ua=o=>{const{prefix:e,experimentalParseClassName:r}=o;let t=a=>{const n=[];let d=0,c=0,i=0,s;for(let x=0;x<a.length;x++){let h=a[x];if(d===0&&c===0){if(h===qr){n.push(a.slice(i,x)),i=x+ba;continue}if(h==="/"){s=x;continue}}h==="["?d++:h==="]"?d--:h==="("?c++:h===")"&&c--}const f=n.length===0?a:a.substring(i),E=fa(f),v=E!==f,y=s&&s>i?s-i:void 0;return{modifiers:n,hasImportantModifier:v,baseClassName:E,maybePostfixModifierPosition:y}};if(e){const a=e+qr,n=t;t=d=>d.startsWith(a)?n(d.substring(a.length)):{isExternal:!0,modifiers:[],hasImportantModifier:!1,baseClassName:d,maybePostfixModifierPosition:void 0}}if(r){const a=t;t=n=>r({className:n,parseClassName:a})}return t},fa=o=>o.endsWith(Wr)?o.substring(0,o.length-1):o.startsWith(Wr)?o.substring(1):o,ga=o=>{const e=Object.fromEntries(o.orderSensitiveModifiers.map(t=>[t,!0]));return t=>{if(t.length<=1)return t;const a=[];let n=[];return t.forEach(d=>{d[0]==="["||e[d]?(a.push(...n.sort(),d),n=[]):n.push(d)}),a.push(...n.sort()),a}},ma=o=>({cache:ia(o.cacheSize),parseClassName:ua(o),sortModifiers:ga(o),...da(o)}),pa=/\s+/,ha=(o,e)=>{const{parseClassName:r,getClassGroupId:t,getConflictingClassGroupIds:a,sortModifiers:n}=e,d=[],c=o.trim().split(pa);let i="";for(let s=c.length-1;s>=0;s-=1){const f=c[s],{isExternal:E,modifiers:v,hasImportantModifier:y,baseClassName:x,maybePostfixModifierPosition:h}=r(f);if(E){i=f+(i.length>0?" "+i:i);continue}let S=!!h,w=t(S?x.substring(0,h):x);if(!w){if(!S){i=f+(i.length>0?" "+i:i);continue}if(w=t(x),!w){i=f+(i.length>0?" "+i:i);continue}S=!1}const N=n(v).join(":"),L=y?N+Wr:N,le=L+w;if(d.includes(le))continue;d.push(le);const ge=a(w,S);for(let K=0;K<ge.length;++K){const V=ge[K];d.push(L+V)}i=f+(i.length>0?" "+i:i)}return i};function xa(){let o=0,e,r,t="";for(;o<arguments.length;)(e=arguments[o++])&&(r=tt(e))&&(t&&(t+=" "),t+=r);return t}const tt=o=>{if(typeof o=="string")return o;let e,r="";for(let t=0;t<o.length;t++)o[t]&&(e=tt(o[t]))&&(r&&(r+=" "),r+=e);return r};function ya(o,...e){let r,t,a,n=d;function d(i){const s=e.reduce((f,E)=>E(f),o());return r=ma(s),t=r.cache.get,a=r.cache.set,n=c,c(i)}function c(i){const s=t(i);if(s)return s;const f=ha(i,r);return a(i,f),f}return function(){return n(xa.apply(null,arguments))}}const Ie=o=>{const e=r=>r[o]||[];return e.isThemeGetter=!0,e},at=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,nt=/^\((?:(\w[\w-]*):)?(.+)\)$/i,_a=/^\d+\/\d+$/,va=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,wa=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,ka=/^(rgba?|hsla?|hwb|(ok)?(lab|lch))\(.+\)$/,Sa=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,Ca=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,or=o=>_a.test(o),ie=o=>!!o&&!Number.isNaN(Number(o)),We=o=>!!o&&Number.isInteger(Number(o)),Mr=o=>o.endsWith("%")&&ie(o.slice(0,-1)),Fe=o=>va.test(o),ja=()=>!0,Na=o=>wa.test(o)&&!ka.test(o),dt=()=>!1,Ea=o=>Sa.test(o),Oa=o=>Ca.test(o),Ia=o=>!W(o)&&!q(o),Ra=o=>ir(o,st,dt),W=o=>at.test(o),Ke=o=>ir(o,it,Na),Ar=o=>ir(o,Da,ie),bo=o=>ir(o,lt,dt),za=o=>ir(o,ct,Oa),kr=o=>ir(o,bt,Ea),q=o=>nt.test(o),ur=o=>br(o,it),Ta=o=>br(o,Va),uo=o=>br(o,lt),Ma=o=>br(o,st),Aa=o=>br(o,ct),Sr=o=>br(o,bt,!0),ir=(o,e,r)=>{const t=at.exec(o);return t?t[1]?e(t[1]):r(t[2]):!1},br=(o,e,r=!1)=>{const t=nt.exec(o);return t?t[1]?e(t[1]):r:!1},lt=o=>o==="position"||o==="percentage",ct=o=>o==="image"||o==="url",st=o=>o==="length"||o==="size"||o==="bg-size",it=o=>o==="length",Da=o=>o==="number",Va=o=>o==="family-name",bt=o=>o==="shadow",La=()=>{const o=Ie("color"),e=Ie("font"),r=Ie("text"),t=Ie("font-weight"),a=Ie("tracking"),n=Ie("leading"),d=Ie("breakpoint"),c=Ie("container"),i=Ie("spacing"),s=Ie("radius"),f=Ie("shadow"),E=Ie("inset-shadow"),v=Ie("text-shadow"),y=Ie("drop-shadow"),x=Ie("blur"),h=Ie("perspective"),S=Ie("aspect"),w=Ie("ease"),N=Ie("animate"),L=()=>["auto","avoid","all","avoid-page","page","left","right","column"],le=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],ge=()=>[...le(),q,W],K=()=>["auto","hidden","clip","visible","scroll"],V=()=>["auto","contain","none"],u=()=>[q,W,i],b=()=>[or,"full","auto",...u()],g=()=>[We,"none","subgrid",q,W],C=()=>["auto",{span:["full",We,q,W]},We,q,W],_=()=>[We,"auto",q,W],I=()=>["auto","min","max","fr",q,W],$=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],Y=()=>["start","end","center","stretch","center-safe","end-safe"],oe=()=>["auto",...u()],A=()=>[or,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...u()],k=()=>[o,q,W],F=()=>[...le(),uo,bo,{position:[q,W]}],be=()=>["no-repeat",{repeat:["","x","y","space","round"]}],H=()=>["auto","cover","contain",Ma,Ra,{size:[q,W]}],B=()=>[Mr,ur,Ke],m=()=>["","none","full",s,q,W],Z=()=>["",ie,ur,Ke],te=()=>["solid","dashed","dotted","double"],M=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],R=()=>[ie,Mr,uo,bo],z=()=>["","none",x,q,W],j=()=>["none",ie,q,W],D=()=>["none",ie,q,W],T=()=>[ie,q,W],Q=()=>[or,"full",...u()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[Fe],breakpoint:[Fe],color:[ja],container:[Fe],"drop-shadow":[Fe],ease:["in","out","in-out"],font:[Ia],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[Fe],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[Fe],shadow:[Fe],spacing:["px",ie],text:[Fe],"text-shadow":[Fe],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",or,W,q,S]}],container:["container"],columns:[{columns:[ie,W,q,c]}],"break-after":[{"break-after":L()}],"break-before":[{"break-before":L()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],sr:["sr-only","not-sr-only"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:ge()}],overflow:[{overflow:K()}],"overflow-x":[{"overflow-x":K()}],"overflow-y":[{"overflow-y":K()}],overscroll:[{overscroll:V()}],"overscroll-x":[{"overscroll-x":V()}],"overscroll-y":[{"overscroll-y":V()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:b()}],"inset-x":[{"inset-x":b()}],"inset-y":[{"inset-y":b()}],start:[{start:b()}],end:[{end:b()}],top:[{top:b()}],right:[{right:b()}],bottom:[{bottom:b()}],left:[{left:b()}],visibility:["visible","invisible","collapse"],z:[{z:[We,"auto",q,W]}],basis:[{basis:[or,"full","auto",c,...u()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[ie,or,"auto","initial","none",W]}],grow:[{grow:["",ie,q,W]}],shrink:[{shrink:["",ie,q,W]}],order:[{order:[We,"first","last","none",q,W]}],"grid-cols":[{"grid-cols":g()}],"col-start-end":[{col:C()}],"col-start":[{"col-start":_()}],"col-end":[{"col-end":_()}],"grid-rows":[{"grid-rows":g()}],"row-start-end":[{row:C()}],"row-start":[{"row-start":_()}],"row-end":[{"row-end":_()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":I()}],"auto-rows":[{"auto-rows":I()}],gap:[{gap:u()}],"gap-x":[{"gap-x":u()}],"gap-y":[{"gap-y":u()}],"justify-content":[{justify:[...$(),"normal"]}],"justify-items":[{"justify-items":[...Y(),"normal"]}],"justify-self":[{"justify-self":["auto",...Y()]}],"align-content":[{content:["normal",...$()]}],"align-items":[{items:[...Y(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...Y(),{baseline:["","last"]}]}],"place-content":[{"place-content":$()}],"place-items":[{"place-items":[...Y(),"baseline"]}],"place-self":[{"place-self":["auto",...Y()]}],p:[{p:u()}],px:[{px:u()}],py:[{py:u()}],ps:[{ps:u()}],pe:[{pe:u()}],pt:[{pt:u()}],pr:[{pr:u()}],pb:[{pb:u()}],pl:[{pl:u()}],m:[{m:oe()}],mx:[{mx:oe()}],my:[{my:oe()}],ms:[{ms:oe()}],me:[{me:oe()}],mt:[{mt:oe()}],mr:[{mr:oe()}],mb:[{mb:oe()}],ml:[{ml:oe()}],"space-x":[{"space-x":u()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":u()}],"space-y-reverse":["space-y-reverse"],size:[{size:A()}],w:[{w:[c,"screen",...A()]}],"min-w":[{"min-w":[c,"screen","none",...A()]}],"max-w":[{"max-w":[c,"screen","none","prose",{screen:[d]},...A()]}],h:[{h:["screen",...A()]}],"min-h":[{"min-h":["screen","none",...A()]}],"max-h":[{"max-h":["screen",...A()]}],"font-size":[{text:["base",r,ur,Ke]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[t,q,Ar]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",Mr,W]}],"font-family":[{font:[Ta,W,e]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:[a,q,W]}],"line-clamp":[{"line-clamp":[ie,"none",q,Ar]}],leading:[{leading:[n,...u()]}],"list-image":[{"list-image":["none",q,W]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",q,W]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:k()}],"text-color":[{text:k()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...te(),"wavy"]}],"text-decoration-thickness":[{decoration:[ie,"from-font","auto",q,Ke]}],"text-decoration-color":[{decoration:k()}],"underline-offset":[{"underline-offset":[ie,"auto",q,W]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:u()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",q,W]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],wrap:[{wrap:["break-word","anywhere","normal"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",q,W]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:F()}],"bg-repeat":[{bg:be()}],"bg-size":[{bg:H()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},We,q,W],radial:["",q,W],conic:[We,q,W]},Aa,za]}],"bg-color":[{bg:k()}],"gradient-from-pos":[{from:B()}],"gradient-via-pos":[{via:B()}],"gradient-to-pos":[{to:B()}],"gradient-from":[{from:k()}],"gradient-via":[{via:k()}],"gradient-to":[{to:k()}],rounded:[{rounded:m()}],"rounded-s":[{"rounded-s":m()}],"rounded-e":[{"rounded-e":m()}],"rounded-t":[{"rounded-t":m()}],"rounded-r":[{"rounded-r":m()}],"rounded-b":[{"rounded-b":m()}],"rounded-l":[{"rounded-l":m()}],"rounded-ss":[{"rounded-ss":m()}],"rounded-se":[{"rounded-se":m()}],"rounded-ee":[{"rounded-ee":m()}],"rounded-es":[{"rounded-es":m()}],"rounded-tl":[{"rounded-tl":m()}],"rounded-tr":[{"rounded-tr":m()}],"rounded-br":[{"rounded-br":m()}],"rounded-bl":[{"rounded-bl":m()}],"border-w":[{border:Z()}],"border-w-x":[{"border-x":Z()}],"border-w-y":[{"border-y":Z()}],"border-w-s":[{"border-s":Z()}],"border-w-e":[{"border-e":Z()}],"border-w-t":[{"border-t":Z()}],"border-w-r":[{"border-r":Z()}],"border-w-b":[{"border-b":Z()}],"border-w-l":[{"border-l":Z()}],"divide-x":[{"divide-x":Z()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":Z()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...te(),"hidden","none"]}],"divide-style":[{divide:[...te(),"hidden","none"]}],"border-color":[{border:k()}],"border-color-x":[{"border-x":k()}],"border-color-y":[{"border-y":k()}],"border-color-s":[{"border-s":k()}],"border-color-e":[{"border-e":k()}],"border-color-t":[{"border-t":k()}],"border-color-r":[{"border-r":k()}],"border-color-b":[{"border-b":k()}],"border-color-l":[{"border-l":k()}],"divide-color":[{divide:k()}],"outline-style":[{outline:[...te(),"none","hidden"]}],"outline-offset":[{"outline-offset":[ie,q,W]}],"outline-w":[{outline:["",ie,ur,Ke]}],"outline-color":[{outline:k()}],shadow:[{shadow:["","none",f,Sr,kr]}],"shadow-color":[{shadow:k()}],"inset-shadow":[{"inset-shadow":["none",E,Sr,kr]}],"inset-shadow-color":[{"inset-shadow":k()}],"ring-w":[{ring:Z()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:k()}],"ring-offset-w":[{"ring-offset":[ie,Ke]}],"ring-offset-color":[{"ring-offset":k()}],"inset-ring-w":[{"inset-ring":Z()}],"inset-ring-color":[{"inset-ring":k()}],"text-shadow":[{"text-shadow":["none",v,Sr,kr]}],"text-shadow-color":[{"text-shadow":k()}],opacity:[{opacity:[ie,q,W]}],"mix-blend":[{"mix-blend":[...M(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":M()}],"mask-clip":[{"mask-clip":["border","padding","content","fill","stroke","view"]},"mask-no-clip"],"mask-composite":[{mask:["add","subtract","intersect","exclude"]}],"mask-image-linear-pos":[{"mask-linear":[ie]}],"mask-image-linear-from-pos":[{"mask-linear-from":R()}],"mask-image-linear-to-pos":[{"mask-linear-to":R()}],"mask-image-linear-from-color":[{"mask-linear-from":k()}],"mask-image-linear-to-color":[{"mask-linear-to":k()}],"mask-image-t-from-pos":[{"mask-t-from":R()}],"mask-image-t-to-pos":[{"mask-t-to":R()}],"mask-image-t-from-color":[{"mask-t-from":k()}],"mask-image-t-to-color":[{"mask-t-to":k()}],"mask-image-r-from-pos":[{"mask-r-from":R()}],"mask-image-r-to-pos":[{"mask-r-to":R()}],"mask-image-r-from-color":[{"mask-r-from":k()}],"mask-image-r-to-color":[{"mask-r-to":k()}],"mask-image-b-from-pos":[{"mask-b-from":R()}],"mask-image-b-to-pos":[{"mask-b-to":R()}],"mask-image-b-from-color":[{"mask-b-from":k()}],"mask-image-b-to-color":[{"mask-b-to":k()}],"mask-image-l-from-pos":[{"mask-l-from":R()}],"mask-image-l-to-pos":[{"mask-l-to":R()}],"mask-image-l-from-color":[{"mask-l-from":k()}],"mask-image-l-to-color":[{"mask-l-to":k()}],"mask-image-x-from-pos":[{"mask-x-from":R()}],"mask-image-x-to-pos":[{"mask-x-to":R()}],"mask-image-x-from-color":[{"mask-x-from":k()}],"mask-image-x-to-color":[{"mask-x-to":k()}],"mask-image-y-from-pos":[{"mask-y-from":R()}],"mask-image-y-to-pos":[{"mask-y-to":R()}],"mask-image-y-from-color":[{"mask-y-from":k()}],"mask-image-y-to-color":[{"mask-y-to":k()}],"mask-image-radial":[{"mask-radial":[q,W]}],"mask-image-radial-from-pos":[{"mask-radial-from":R()}],"mask-image-radial-to-pos":[{"mask-radial-to":R()}],"mask-image-radial-from-color":[{"mask-radial-from":k()}],"mask-image-radial-to-color":[{"mask-radial-to":k()}],"mask-image-radial-shape":[{"mask-radial":["circle","ellipse"]}],"mask-image-radial-size":[{"mask-radial":[{closest:["side","corner"],farthest:["side","corner"]}]}],"mask-image-radial-pos":[{"mask-radial-at":le()}],"mask-image-conic-pos":[{"mask-conic":[ie]}],"mask-image-conic-from-pos":[{"mask-conic-from":R()}],"mask-image-conic-to-pos":[{"mask-conic-to":R()}],"mask-image-conic-from-color":[{"mask-conic-from":k()}],"mask-image-conic-to-color":[{"mask-conic-to":k()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:F()}],"mask-repeat":[{mask:be()}],"mask-size":[{mask:H()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",q,W]}],filter:[{filter:["","none",q,W]}],blur:[{blur:z()}],brightness:[{brightness:[ie,q,W]}],contrast:[{contrast:[ie,q,W]}],"drop-shadow":[{"drop-shadow":["","none",y,Sr,kr]}],"drop-shadow-color":[{"drop-shadow":k()}],grayscale:[{grayscale:["",ie,q,W]}],"hue-rotate":[{"hue-rotate":[ie,q,W]}],invert:[{invert:["",ie,q,W]}],saturate:[{saturate:[ie,q,W]}],sepia:[{sepia:["",ie,q,W]}],"backdrop-filter":[{"backdrop-filter":["","none",q,W]}],"backdrop-blur":[{"backdrop-blur":z()}],"backdrop-brightness":[{"backdrop-brightness":[ie,q,W]}],"backdrop-contrast":[{"backdrop-contrast":[ie,q,W]}],"backdrop-grayscale":[{"backdrop-grayscale":["",ie,q,W]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[ie,q,W]}],"backdrop-invert":[{"backdrop-invert":["",ie,q,W]}],"backdrop-opacity":[{"backdrop-opacity":[ie,q,W]}],"backdrop-saturate":[{"backdrop-saturate":[ie,q,W]}],"backdrop-sepia":[{"backdrop-sepia":["",ie,q,W]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":u()}],"border-spacing-x":[{"border-spacing-x":u()}],"border-spacing-y":[{"border-spacing-y":u()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",q,W]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[ie,"initial",q,W]}],ease:[{ease:["linear","initial",w,q,W]}],delay:[{delay:[ie,q,W]}],animate:[{animate:["none",N,q,W]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[h,q,W]}],"perspective-origin":[{"perspective-origin":ge()}],rotate:[{rotate:j()}],"rotate-x":[{"rotate-x":j()}],"rotate-y":[{"rotate-y":j()}],"rotate-z":[{"rotate-z":j()}],scale:[{scale:D()}],"scale-x":[{"scale-x":D()}],"scale-y":[{"scale-y":D()}],"scale-z":[{"scale-z":D()}],"scale-3d":["scale-3d"],skew:[{skew:T()}],"skew-x":[{"skew-x":T()}],"skew-y":[{"skew-y":T()}],transform:[{transform:[q,W,"","none","gpu","cpu"]}],"transform-origin":[{origin:ge()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:Q()}],"translate-x":[{"translate-x":Q()}],"translate-y":[{"translate-y":Q()}],"translate-z":[{"translate-z":Q()}],"translate-none":["translate-none"],accent:[{accent:k()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:k()}],"color-scheme":[{scheme:["normal","dark","light","light-dark","only-dark","only-light"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",q,W]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":u()}],"scroll-mx":[{"scroll-mx":u()}],"scroll-my":[{"scroll-my":u()}],"scroll-ms":[{"scroll-ms":u()}],"scroll-me":[{"scroll-me":u()}],"scroll-mt":[{"scroll-mt":u()}],"scroll-mr":[{"scroll-mr":u()}],"scroll-mb":[{"scroll-mb":u()}],"scroll-ml":[{"scroll-ml":u()}],"scroll-p":[{"scroll-p":u()}],"scroll-px":[{"scroll-px":u()}],"scroll-py":[{"scroll-py":u()}],"scroll-ps":[{"scroll-ps":u()}],"scroll-pe":[{"scroll-pe":u()}],"scroll-pt":[{"scroll-pt":u()}],"scroll-pr":[{"scroll-pr":u()}],"scroll-pb":[{"scroll-pb":u()}],"scroll-pl":[{"scroll-pl":u()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",q,W]}],fill:[{fill:["none",...k()]}],"stroke-w":[{stroke:[ie,ur,Ke,Ar]}],stroke:[{stroke:["none",...k()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-x","border-w-y","border-w-s","border-w-e","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-x","border-color-y","border-color-s","border-color-e","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],translate:["translate-x","translate-y","translate-none"],"translate-none":["translate","translate-x","translate-y","translate-z"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}},Pa=ya(La);function ce(...o){return Pa(rt(o))}/**
|
|
20
|
+
*/var sa=Vr.exports,uo;function ia(){return uo||(uo=1,(function(o,e){((r,t)=>{o.exports=t()})(sa,function r(){var t=typeof self<"u"?self:typeof window<"u"?window:t!==void 0?t:{},a,n=!t.document&&!!t.postMessage,l=t.IS_PAPA_WORKER||!1,s={},c=0,i={};function f(b){this._handle=null,this._finished=!1,this._completed=!1,this._halted=!1,this._input=null,this._baseIndex=0,this._partialLine="",this._rowCount=0,this._start=0,this._nextChunk=null,this.isFirstChunk=!0,this._completeResults={data:[],errors:[],meta:{}},(function(u){var p=me(u);p.chunkSize=parseInt(p.chunkSize),u.step||u.chunk||(p.chunkSize=null),this._handle=new x(p),(this._handle.streamer=this)._config=p}).call(this,b),this.parseChunk=function(u,p){var C=parseInt(this._config.skipFirstNLines)||0;if(this.isFirstChunk&&0<C){let O=this._config.newline;O||(_=this._config.quoteChar||'"',O=this._handle.guessLineEndings(u,_)),u=[...u.split(O).slice(C)].join(O)}this.isFirstChunk&&$(this._config.beforeFirstChunk)&&(_=this._config.beforeFirstChunk(u))!==void 0&&(u=_),this.isFirstChunk=!1,this._halted=!1;var C=this._partialLine+u,_=(this._partialLine="",this._handle.parse(C,this._baseIndex,!this._finished));if(!this._handle.paused()&&!this._handle.aborted()){if(u=_.meta.cursor,C=(this._finished||(this._partialLine=C.substring(u-this._baseIndex),this._baseIndex=u),_&&_.data&&(this._rowCount+=_.data.length),this._finished||this._config.preview&&this._rowCount>=this._config.preview),l)t.postMessage({results:_,workerId:i.WORKER_ID,finished:C});else if($(this._config.chunk)&&!p){if(this._config.chunk(_,this._handle),this._handle.paused()||this._handle.aborted())return void(this._halted=!0);this._completeResults=_=void 0}return this._config.step||this._config.chunk||(this._completeResults.data=this._completeResults.data.concat(_.data),this._completeResults.errors=this._completeResults.errors.concat(_.errors),this._completeResults.meta=_.meta),this._completed||!C||!$(this._config.complete)||_&&_.meta.aborted||(this._config.complete(this._completeResults,this._input),this._completed=!0),C||_&&_.meta.paused||this._nextChunk(),_}this._halted=!0},this._sendError=function(u){$(this._config.error)?this._config.error(u):l&&this._config.error&&t.postMessage({workerId:i.WORKER_ID,error:u,finished:!1})}}function T(b){var u;(b=b||{}).chunkSize||(b.chunkSize=i.RemoteChunkSize),f.call(this,b),this._nextChunk=n?function(){this._readChunk(),this._chunkLoaded()}:function(){this._readChunk()},this.stream=function(p){this._input=p,this._nextChunk()},this._readChunk=function(){if(this._finished)this._chunkLoaded();else{if(u=new XMLHttpRequest,this._config.withCredentials&&(u.withCredentials=this._config.withCredentials),n||(u.onload=K(this._chunkLoaded,this),u.onerror=K(this._chunkError,this)),u.open(this._config.downloadRequestBody?"POST":"GET",this._input,!n),this._config.downloadRequestHeaders){var p,C=this._config.downloadRequestHeaders;for(p in C)u.setRequestHeader(p,C[p])}var _;this._config.chunkSize&&(_=this._start+this._config.chunkSize-1,u.setRequestHeader("Range","bytes="+this._start+"-"+_));try{u.send(this._config.downloadRequestBody)}catch(O){this._chunkError(O.message)}n&&u.status===0&&this._chunkError()}},this._chunkLoaded=function(){u.readyState===4&&(u.status<200||400<=u.status?this._chunkError():(this._start+=this._config.chunkSize||u.responseText.length,this._finished=!this._config.chunkSize||this._start>=(p=>(p=p.getResponseHeader("Content-Range"))!==null?parseInt(p.substring(p.lastIndexOf("/")+1)):-1)(u),this.parseChunk(u.responseText)))},this._chunkError=function(p){p=u.statusText||p,this._sendError(new Error(p))}}function w(b){(b=b||{}).chunkSize||(b.chunkSize=i.LocalChunkSize),f.call(this,b);var u,p,C=typeof FileReader<"u";this.stream=function(_){this._input=_,p=_.slice||_.webkitSlice||_.mozSlice,C?((u=new FileReader).onload=K(this._chunkLoaded,this),u.onerror=K(this._chunkError,this)):u=new FileReaderSync,this._nextChunk()},this._nextChunk=function(){this._finished||this._config.preview&&!(this._rowCount<this._config.preview)||this._readChunk()},this._readChunk=function(){var _=this._input,O=(this._config.chunkSize&&(O=Math.min(this._start+this._config.chunkSize,this._input.size),_=p.call(_,this._start,O)),u.readAsText(_,this._config.encoding));C||this._chunkLoaded({target:{result:O}})},this._chunkLoaded=function(_){this._start+=this._config.chunkSize,this._finished=!this._config.chunkSize||this._start>=this._input.size,this.parseChunk(_.target.result)},this._chunkError=function(){this._sendError(u.error)}}function y(b){var u;f.call(this,b=b||{}),this.stream=function(p){return u=p,this._nextChunk()},this._nextChunk=function(){var p,C;if(!this._finished)return p=this._config.chunkSize,u=p?(C=u.substring(0,p),u.substring(p)):(C=u,""),this._finished=!u,this.parseChunk(C)}}function v(b){f.call(this,b=b||{});var u=[],p=!0,C=!1;this.pause=function(){f.prototype.pause.apply(this,arguments),this._input.pause()},this.resume=function(){f.prototype.resume.apply(this,arguments),this._input.resume()},this.stream=function(_){this._input=_,this._input.on("data",this._streamData),this._input.on("end",this._streamEnd),this._input.on("error",this._streamError)},this._checkIsFinished=function(){C&&u.length===1&&(this._finished=!0)},this._nextChunk=function(){this._checkIsFinished(),u.length?this.parseChunk(u.shift()):p=!0},this._streamData=K(function(_){try{u.push(typeof _=="string"?_:_.toString(this._config.encoding)),p&&(p=!1,this._checkIsFinished(),this.parseChunk(u.shift()))}catch(O){this._streamError(O)}},this),this._streamError=K(function(_){this._streamCleanUp(),this._sendError(_)},this),this._streamEnd=K(function(){this._streamCleanUp(),C=!0,this._streamData("")},this),this._streamCleanUp=K(function(){this._input.removeListener("data",this._streamData),this._input.removeListener("end",this._streamEnd),this._input.removeListener("error",this._streamError)},this)}function x(b){var u,p,C,_,O=Math.pow(2,53),Z=-O,H=/^\s*-?(\d+\.?|\.\d+|\d+\.\d+)([eE][-+]?\d+)?\s*$/,te=/^((\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z)))$/,A=this,N=0,W=0,se=!1,m=!1,D=[],g={data:[],errors:[],meta:{}};function I(M){return b.skipEmptyLines==="greedy"?M.join("").trim()==="":M.length===1&&M[0].length===0}function Q(){if(g&&C&&(V("Delimiter","UndetectableDelimiter","Unable to auto-detect delimiting character; defaulted to '"+i.DefaultDelimiter+"'"),C=!1),b.skipEmptyLines&&(g.data=g.data.filter(function(P){return!I(P)})),z()){let P=function(ee,ce){$(b.transformHeader)&&(ee=b.transformHeader(ee,ce)),D.push(ee)};if(g)if(Array.isArray(g.data[0])){for(var M=0;z()&&M<g.data.length;M++)g.data[M].forEach(P);g.data.splice(0,1)}else g.data.forEach(P)}function S(P,ee){for(var ce=b.header?{}:[],re=0;re<P.length;re++){var ae=re,oe=P[re],oe=((Ne,X)=>(xe=>(b.dynamicTypingFunction&&b.dynamicTyping[xe]===void 0&&(b.dynamicTyping[xe]=b.dynamicTypingFunction(xe)),(b.dynamicTyping[xe]||b.dynamicTyping)===!0))(Ne)?X==="true"||X==="TRUE"||X!=="false"&&X!=="FALSE"&&((xe=>{if(H.test(xe)&&(xe=parseFloat(xe),Z<xe&&xe<O))return 1})(X)?parseFloat(X):te.test(X)?new Date(X):X===""?null:X):X)(ae=b.header?re>=D.length?"__parsed_extra":D[re]:ae,oe=b.transform?b.transform(oe,ae):oe);ae==="__parsed_extra"?(ce[ae]=ce[ae]||[],ce[ae].push(oe)):ce[ae]=oe}return b.header&&(re>D.length?V("FieldMismatch","TooManyFields","Too many fields: expected "+D.length+" fields but parsed "+re,W+ee):re<D.length&&V("FieldMismatch","TooFewFields","Too few fields: expected "+D.length+" fields but parsed "+re,W+ee)),ce}var L;g&&(b.header||b.dynamicTyping||b.transform)&&(L=1,!g.data.length||Array.isArray(g.data[0])?(g.data=g.data.map(S),L=g.data.length):g.data=S(g.data,0),b.header&&g.meta&&(g.meta.fields=D),W+=L)}function z(){return b.header&&D.length===0}function V(M,S,L,P){M={type:M,code:S,message:L},P!==void 0&&(M.row=P),g.errors.push(M)}$(b.step)&&(_=b.step,b.step=function(M){g=M,z()?Q():(Q(),g.data.length!==0&&(N+=M.data.length,b.preview&&N>b.preview?p.abort():(g.data=g.data[0],_(g,A))))}),this.parse=function(M,S,L){var P=b.quoteChar||'"',P=(b.newline||(b.newline=this.guessLineEndings(M,P)),C=!1,b.delimiter?$(b.delimiter)&&(b.delimiter=b.delimiter(M),g.meta.delimiter=b.delimiter):((P=((ee,ce,re,ae,oe)=>{var Ne,X,xe,Te;oe=oe||[","," ","|",";",i.RECORD_SEP,i.UNIT_SEP];for(var Ve=0;Ve<oe.length;Ve++){for(var ve,ke=oe[Ve],ge=0,Ee=0,J=0,be=(xe=void 0,new k({comments:ae,delimiter:ke,newline:ce,preview:10}).parse(ee)),ye=0;ye<be.data.length;ye++)re&&I(be.data[ye])?J++:(ve=be.data[ye].length,Ee+=ve,xe===void 0?xe=ve:0<ve&&(ge+=Math.abs(ve-xe),xe=ve));0<be.data.length&&(Ee/=be.data.length-J),(X===void 0||ge<=X)&&(Te===void 0||Te<Ee)&&1.99<Ee&&(X=ge,Ne=ke,Te=Ee)}return{successful:!!(b.delimiter=Ne),bestDelimiter:Ne}})(M,b.newline,b.skipEmptyLines,b.comments,b.delimitersToGuess)).successful?b.delimiter=P.bestDelimiter:(C=!0,b.delimiter=i.DefaultDelimiter),g.meta.delimiter=b.delimiter),me(b));return b.preview&&b.header&&P.preview++,u=M,p=new k(P),g=p.parse(u,S,L),Q(),se?{meta:{paused:!0}}:g||{meta:{paused:!1}}},this.paused=function(){return se},this.pause=function(){se=!0,p.abort(),u=$(b.chunk)?"":u.substring(p.getCharIndex())},this.resume=function(){A.streamer._halted?(se=!1,A.streamer.parseChunk(u,!0)):setTimeout(A.resume,3)},this.aborted=function(){return m},this.abort=function(){m=!0,p.abort(),g.meta.aborted=!0,$(b.complete)&&b.complete(g),u=""},this.guessLineEndings=function(ee,P){ee=ee.substring(0,1048576);var P=new RegExp(E(P)+"([^]*?)"+E(P),"gm"),L=(ee=ee.replace(P,"")).split("\r"),P=ee.split(`
|
|
21
|
+
`),ee=1<P.length&&P[0].length<L[0].length;if(L.length===1||ee)return`
|
|
22
|
+
`;for(var ce=0,re=0;re<L.length;re++)L[re][0]===`
|
|
23
|
+
`&&ce++;return ce>=L.length/2?`\r
|
|
24
|
+
`:"\r"}}function E(b){return b.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function k(b){var u=(b=b||{}).delimiter,p=b.newline,C=b.comments,_=b.step,O=b.preview,Z=b.fastMode,H=null,te=!1,A=b.quoteChar==null?'"':b.quoteChar,N=A;if(b.escapeChar!==void 0&&(N=b.escapeChar),(typeof u!="string"||-1<i.BAD_DELIMITERS.indexOf(u))&&(u=","),C===u)throw new Error("Comment character same as delimiter");C===!0?C="#":(typeof C!="string"||-1<i.BAD_DELIMITERS.indexOf(C))&&(C=!1),p!==`
|
|
25
|
+
`&&p!=="\r"&&p!==`\r
|
|
26
|
+
`&&(p=`
|
|
27
|
+
`);var W=0,se=!1;this.parse=function(m,D,g){if(typeof m!="string")throw new Error("Input must be a string");var I=m.length,Q=u.length,z=p.length,V=C.length,M=$(_),S=[],L=[],P=[],ee=W=0;if(!m)return ge();if(Z||Z!==!1&&m.indexOf(A)===-1){for(var ce=m.split(p),re=0;re<ce.length;re++){if(P=ce[re],W+=P.length,re!==ce.length-1)W+=p.length;else if(g)return ge();if(!C||P.substring(0,V)!==C){if(M){if(S=[],Te(P.split(u)),Ee(),se)return ge()}else Te(P.split(u));if(O&&O<=re)return S=S.slice(0,O),ge(!0)}}return ge()}for(var ae=m.indexOf(u,W),oe=m.indexOf(p,W),Ne=new RegExp(E(N)+E(A),"g"),X=m.indexOf(A,W);;)if(m[W]===A)for(X=W,W++;;){if((X=m.indexOf(A,X+1))===-1)return g||L.push({type:"Quotes",code:"MissingQuotes",message:"Quoted field unterminated",row:S.length,index:W}),ve();if(X===I-1)return ve(m.substring(W,X).replace(Ne,A));if(A===N&&m[X+1]===N)X++;else if(A===N||X===0||m[X-1]!==N){ae!==-1&&ae<X+1&&(ae=m.indexOf(u,X+1));var xe=Ve((oe=oe!==-1&&oe<X+1?m.indexOf(p,X+1):oe)===-1?ae:Math.min(ae,oe));if(m.substr(X+1+xe,Q)===u){P.push(m.substring(W,X).replace(Ne,A)),m[W=X+1+xe+Q]!==A&&(X=m.indexOf(A,W)),ae=m.indexOf(u,W),oe=m.indexOf(p,W);break}if(xe=Ve(oe),m.substring(X+1+xe,X+1+xe+z)===p){if(P.push(m.substring(W,X).replace(Ne,A)),ke(X+1+xe+z),ae=m.indexOf(u,W),X=m.indexOf(A,W),M&&(Ee(),se))return ge();if(O&&S.length>=O)return ge(!0);break}L.push({type:"Quotes",code:"InvalidQuotes",message:"Trailing quote on quoted field is malformed",row:S.length,index:W}),X++}}else if(C&&P.length===0&&m.substring(W,W+V)===C){if(oe===-1)return ge();W=oe+z,oe=m.indexOf(p,W),ae=m.indexOf(u,W)}else if(ae!==-1&&(ae<oe||oe===-1))P.push(m.substring(W,ae)),W=ae+Q,ae=m.indexOf(u,W);else{if(oe===-1)break;if(P.push(m.substring(W,oe)),ke(oe+z),M&&(Ee(),se))return ge();if(O&&S.length>=O)return ge(!0)}return ve();function Te(J){S.push(J),ee=W}function Ve(J){var be=0;return be=J!==-1&&(J=m.substring(X+1,J))&&J.trim()===""?J.length:be}function ve(J){return g||(J===void 0&&(J=m.substring(W)),P.push(J),W=I,Te(P),M&&Ee()),ge()}function ke(J){W=J,Te(P),P=[],oe=m.indexOf(p,W)}function ge(J){if(b.header&&!D&&S.length&&!te){var be=S[0],ye={},ze=new Set(be);let we=!1;for(let De=0;De<be.length;De++){let Se=be[De];if(ye[Se=$(b.transformHeader)?b.transformHeader(Se,De):Se]){let Le,Ue=ye[Se];for(;Le=Se+"_"+Ue,Ue++,ze.has(Le););ze.add(Le),be[De]=Le,ye[Se]++,we=!0,(H=H===null?{}:H)[Le]=Se}else ye[Se]=1,be[De]=Se;ze.add(Se)}we&&console.warn("Duplicate headers found and renamed."),te=!0}return{data:S,errors:L,meta:{delimiter:u,linebreak:p,aborted:se,truncated:!!J,cursor:ee+(D||0),renamedHeaders:H}}}function Ee(){_(ge()),S=[],L=[]}},this.abort=function(){se=!0},this.getCharIndex=function(){return W}}function j(b){var u=b.data,p=s[u.workerId],C=!1;if(u.error)p.userError(u.error,u.file);else if(u.results&&u.results.data){var _={abort:function(){C=!0,F(u.workerId,{data:[],errors:[],meta:{aborted:!0}})},pause:de,resume:de};if($(p.userStep)){for(var O=0;O<u.results.data.length&&(p.userStep({data:u.results.data[O],errors:u.results.errors,meta:u.results.meta},_),!C);O++);delete u.results}else $(p.userChunk)&&(p.userChunk(u.results,_,u.file),delete u.results)}u.finished&&!C&&F(u.workerId,u.results)}function F(b,u){var p=s[b];$(p.userComplete)&&p.userComplete(u),p.terminate(),delete s[b]}function de(){throw new Error("Not implemented.")}function me(b){if(typeof b!="object"||b===null)return b;var u,p=Array.isArray(b)?[]:{};for(u in b)p[u]=me(b[u]);return p}function K(b,u){return function(){b.apply(u,arguments)}}function $(b){return typeof b=="function"}return i.parse=function(b,u){var p=(u=u||{}).dynamicTyping||!1;if($(p)&&(u.dynamicTypingFunction=p,p={}),u.dynamicTyping=p,u.transform=!!$(u.transform)&&u.transform,!u.worker||!i.WORKERS_SUPPORTED)return p=null,i.NODE_STREAM_INPUT,typeof b=="string"?(b=(C=>C.charCodeAt(0)!==65279?C:C.slice(1))(b),p=new(u.download?T:y)(u)):b.readable===!0&&$(b.read)&&$(b.on)?p=new v(u):(t.File&&b instanceof File||b instanceof Object)&&(p=new w(u)),p.stream(b);(p=(()=>{var C;return!!i.WORKERS_SUPPORTED&&(C=(()=>{var _=t.URL||t.webkitURL||null,O=r.toString();return i.BLOB_URL||(i.BLOB_URL=_.createObjectURL(new Blob(["var global = (function() { if (typeof self !== 'undefined') { return self; } if (typeof window !== 'undefined') { return window; } if (typeof global !== 'undefined') { return global; } return {}; })(); global.IS_PAPA_WORKER=true; ","(",O,")();"],{type:"text/javascript"})))})(),(C=new t.Worker(C)).onmessage=j,C.id=c++,s[C.id]=C)})()).userStep=u.step,p.userChunk=u.chunk,p.userComplete=u.complete,p.userError=u.error,u.step=$(u.step),u.chunk=$(u.chunk),u.complete=$(u.complete),u.error=$(u.error),delete u.worker,p.postMessage({input:b,config:u,workerId:p.id})},i.unparse=function(b,u){var p=!1,C=!0,_=",",O=`\r
|
|
28
|
+
`,Z='"',H=Z+Z,te=!1,A=null,N=!1,W=((()=>{if(typeof u=="object"){if(typeof u.delimiter!="string"||i.BAD_DELIMITERS.filter(function(D){return u.delimiter.indexOf(D)!==-1}).length||(_=u.delimiter),typeof u.quotes!="boolean"&&typeof u.quotes!="function"&&!Array.isArray(u.quotes)||(p=u.quotes),typeof u.skipEmptyLines!="boolean"&&typeof u.skipEmptyLines!="string"||(te=u.skipEmptyLines),typeof u.newline=="string"&&(O=u.newline),typeof u.quoteChar=="string"&&(Z=u.quoteChar),typeof u.header=="boolean"&&(C=u.header),Array.isArray(u.columns)){if(u.columns.length===0)throw new Error("Option columns is empty");A=u.columns}u.escapeChar!==void 0&&(H=u.escapeChar+Z),u.escapeFormulae instanceof RegExp?N=u.escapeFormulae:typeof u.escapeFormulae=="boolean"&&u.escapeFormulae&&(N=/^[=+\-@\t\r].*$/)}})(),new RegExp(E(Z),"g"));if(typeof b=="string"&&(b=JSON.parse(b)),Array.isArray(b)){if(!b.length||Array.isArray(b[0]))return se(null,b,te);if(typeof b[0]=="object")return se(A||Object.keys(b[0]),b,te)}else if(typeof b=="object")return typeof b.data=="string"&&(b.data=JSON.parse(b.data)),Array.isArray(b.data)&&(b.fields||(b.fields=b.meta&&b.meta.fields||A),b.fields||(b.fields=Array.isArray(b.data[0])?b.fields:typeof b.data[0]=="object"?Object.keys(b.data[0]):[]),Array.isArray(b.data[0])||typeof b.data[0]=="object"||(b.data=[b.data])),se(b.fields||[],b.data||[],te);throw new Error("Unable to serialize unrecognized input");function se(D,g,I){var Q="",z=(typeof D=="string"&&(D=JSON.parse(D)),typeof g=="string"&&(g=JSON.parse(g)),Array.isArray(D)&&0<D.length),V=!Array.isArray(g[0]);if(z&&C){for(var M=0;M<D.length;M++)0<M&&(Q+=_),Q+=m(D[M],M);0<g.length&&(Q+=O)}for(var S=0;S<g.length;S++){var L=(z?D:g[S]).length,P=!1,ee=z?Object.keys(g[S]).length===0:g[S].length===0;if(I&&!z&&(P=I==="greedy"?g[S].join("").trim()==="":g[S].length===1&&g[S][0].length===0),I==="greedy"&&z){for(var ce=[],re=0;re<L;re++){var ae=V?D[re]:re;ce.push(g[S][ae])}P=ce.join("").trim()===""}if(!P){for(var oe=0;oe<L;oe++){0<oe&&!ee&&(Q+=_);var Ne=z&&V?D[oe]:oe;Q+=m(g[S][Ne],oe)}S<g.length-1&&(!I||0<L&&!ee)&&(Q+=O)}}return Q}function m(D,g){var I,Q;return D==null?"":D.constructor===Date?JSON.stringify(D).slice(1,25):(Q=!1,N&&typeof D=="string"&&N.test(D)&&(D="'"+D,Q=!0),I=D.toString().replace(W,H),(Q=Q||p===!0||typeof p=="function"&&p(D,g)||Array.isArray(p)&&p[g]||((z,V)=>{for(var M=0;M<V.length;M++)if(-1<z.indexOf(V[M]))return!0;return!1})(I,i.BAD_DELIMITERS)||-1<I.indexOf(_)||I.charAt(0)===" "||I.charAt(I.length-1)===" ")?Z+I+Z:I)}},i.RECORD_SEP="",i.UNIT_SEP="",i.BYTE_ORDER_MARK="\uFEFF",i.BAD_DELIMITERS=["\r",`
|
|
29
|
+
`,'"',i.BYTE_ORDER_MARK],i.WORKERS_SUPPORTED=!n&&!!t.Worker,i.NODE_STREAM_INPUT=1,i.LocalChunkSize=10485760,i.RemoteChunkSize=5242880,i.DefaultDelimiter=",",i.Parser=k,i.ParserHandle=x,i.NetworkStreamer=T,i.FileStreamer=w,i.StringStreamer=y,i.ReadableStreamStreamer=v,t.jQuery&&((a=t.jQuery).fn.parse=function(b){var u=b.config||{},p=[];return this.each(function(O){if(!(a(this).prop("tagName").toUpperCase()==="INPUT"&&a(this).attr("type").toLowerCase()==="file"&&t.FileReader)||!this.files||this.files.length===0)return!0;for(var Z=0;Z<this.files.length;Z++)p.push({file:this.files[Z],inputElem:this,instanceConfig:a.extend({},u)})}),C(),this;function C(){if(p.length===0)$(b.complete)&&b.complete();else{var O,Z,H,te,A=p[0];if($(b.before)){var N=b.before(A.file,A.inputElem);if(typeof N=="object"){if(N.action==="abort")return O="AbortError",Z=A.file,H=A.inputElem,te=N.reason,void($(b.error)&&b.error({name:O},Z,H,te));if(N.action==="skip")return void _();typeof N.config=="object"&&(A.instanceConfig=a.extend(A.instanceConfig,N.config))}else if(N==="skip")return void _()}var W=A.instanceConfig.complete;A.instanceConfig.complete=function(se){$(W)&&W(se,A.file,A.inputElem),_()},i.parse(A.file,A.instanceConfig)}}function _(){p.splice(0,1),C()}}),l&&(t.onmessage=function(b){b=b.data,i.WORKER_ID===void 0&&b&&(i.WORKER_ID=b.workerId),typeof b.input=="string"?t.postMessage({workerId:i.WORKER_ID,results:i.parse(b.input,b.config),finished:!0}):(t.File&&b.input instanceof File||b.input instanceof Object)&&(b=i.parse(b.input,b.config))&&t.postMessage({workerId:i.WORKER_ID,results:b,finished:!0})}),(T.prototype=Object.create(f.prototype)).constructor=T,(w.prototype=Object.create(f.prototype)).constructor=w,(y.prototype=Object.create(y.prototype)).constructor=y,(v.prototype=Object.create(f.prototype)).constructor=v,i})})(Vr)),Vr.exports}var ca=ia();const bo=tt(ca),ua={icon:{small:"1em"}};function at(o){var e,r,t="";if(typeof o=="string"||typeof o=="number")t+=o;else if(typeof o=="object")if(Array.isArray(o)){var a=o.length;for(e=0;e<a;e++)o[e]&&(r=at(o[e]))&&(t&&(t+=" "),t+=r)}else for(r in o)o[r]&&(t&&(t+=" "),t+=r);return t}function nt(){for(var o,e,r=0,t="",a=arguments.length;r<a;r++)(o=arguments[r])&&(e=at(o))&&(t&&(t+=" "),t+=e);return t}const Qr="-",ba=o=>{const e=ma(o),{conflictingClassGroups:r,conflictingClassGroupModifiers:t}=o;return{getClassGroupId:l=>{const s=l.split(Qr);return s[0]===""&&s.length!==1&&s.shift(),lt(s,e)||fa(l)},getConflictingClassGroupIds:(l,s)=>{const c=r[l]||[];return s&&t[l]?[...c,...t[l]]:c}}},lt=(o,e)=>{if(o.length===0)return e.classGroupId;const r=o[0],t=e.nextPart.get(r),a=t?lt(o.slice(1),t):void 0;if(a)return a;if(e.validators.length===0)return;const n=o.join(Qr);return e.validators.find(({validator:l})=>l(n))?.classGroupId},fo=/^\[(.+)\]$/,fa=o=>{if(fo.test(o)){const e=fo.exec(o)[1],r=e?.substring(0,e.indexOf(":"));if(r)return"arbitrary.."+r}},ma=o=>{const{theme:e,classGroups:r}=o,t={nextPart:new Map,validators:[]};for(const a in r)Br(r[a],t,a,e);return t},Br=(o,e,r,t)=>{o.forEach(a=>{if(typeof a=="string"){const n=a===""?e:mo(e,a);n.classGroupId=r;return}if(typeof a=="function"){if(ga(a)){Br(a(t),e,r,t);return}e.validators.push({validator:a,classGroupId:r});return}Object.entries(a).forEach(([n,l])=>{Br(l,mo(e,n),r,t)})})},mo=(o,e)=>{let r=o;return e.split(Qr).forEach(t=>{r.nextPart.has(t)||r.nextPart.set(t,{nextPart:new Map,validators:[]}),r=r.nextPart.get(t)}),r},ga=o=>o.isThemeGetter,pa=o=>{if(o<1)return{get:()=>{},set:()=>{}};let e=0,r=new Map,t=new Map;const a=(n,l)=>{r.set(n,l),e++,e>o&&(e=0,t=r,r=new Map)};return{get(n){let l=r.get(n);if(l!==void 0)return l;if((l=t.get(n))!==void 0)return a(n,l),l},set(n,l){r.has(n)?r.set(n,l):a(n,l)}}},qr="!",Yr=":",ha=Yr.length,xa=o=>{const{prefix:e,experimentalParseClassName:r}=o;let t=a=>{const n=[];let l=0,s=0,c=0,i;for(let v=0;v<a.length;v++){let x=a[v];if(l===0&&s===0){if(x===Yr){n.push(a.slice(c,v)),c=v+ha;continue}if(x==="/"){i=v;continue}}x==="["?l++:x==="]"?l--:x==="("?s++:x===")"&&s--}const f=n.length===0?a:a.substring(c),T=ya(f),w=T!==f,y=i&&i>c?i-c:void 0;return{modifiers:n,hasImportantModifier:w,baseClassName:T,maybePostfixModifierPosition:y}};if(e){const a=e+Yr,n=t;t=l=>l.startsWith(a)?n(l.substring(a.length)):{isExternal:!0,modifiers:[],hasImportantModifier:!1,baseClassName:l,maybePostfixModifierPosition:void 0}}if(r){const a=t;t=n=>r({className:n,parseClassName:a})}return t},ya=o=>o.endsWith(qr)?o.substring(0,o.length-1):o.startsWith(qr)?o.substring(1):o,va=o=>{const e=Object.fromEntries(o.orderSensitiveModifiers.map(t=>[t,!0]));return t=>{if(t.length<=1)return t;const a=[];let n=[];return t.forEach(l=>{l[0]==="["||e[l]?(a.push(...n.sort(),l),n=[]):n.push(l)}),a.push(...n.sort()),a}},_a=o=>({cache:pa(o.cacheSize),parseClassName:xa(o),sortModifiers:va(o),...ba(o)}),wa=/\s+/,ka=(o,e)=>{const{parseClassName:r,getClassGroupId:t,getConflictingClassGroupIds:a,sortModifiers:n}=e,l=[],s=o.trim().split(wa);let c="";for(let i=s.length-1;i>=0;i-=1){const f=s[i],{isExternal:T,modifiers:w,hasImportantModifier:y,baseClassName:v,maybePostfixModifierPosition:x}=r(f);if(T){c=f+(c.length>0?" "+c:c);continue}let E=!!x,k=t(E?v.substring(0,x):v);if(!k){if(!E){c=f+(c.length>0?" "+c:c);continue}if(k=t(v),!k){c=f+(c.length>0?" "+c:c);continue}E=!1}const j=n(w).join(":"),F=y?j+qr:j,de=F+k;if(l.includes(de))continue;l.push(de);const me=a(k,E);for(let K=0;K<me.length;++K){const $=me[K];l.push(F+$)}c=f+(c.length>0?" "+c:c)}return c};function Na(){let o=0,e,r,t="";for(;o<arguments.length;)(e=arguments[o++])&&(r=dt(e))&&(t&&(t+=" "),t+=r);return t}const dt=o=>{if(typeof o=="string")return o;let e,r="";for(let t=0;t<o.length;t++)o[t]&&(e=dt(o[t]))&&(r&&(r+=" "),r+=e);return r};function Ea(o,...e){let r,t,a,n=l;function l(c){const i=e.reduce((f,T)=>T(f),o());return r=_a(i),t=r.cache.get,a=r.cache.set,n=s,s(c)}function s(c){const i=t(c);if(i)return i;const f=ka(c,r);return a(c,f),f}return function(){return n(Na.apply(null,arguments))}}const je=o=>{const e=r=>r[o]||[];return e.isThemeGetter=!0,e},st=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,it=/^\((?:(\w[\w-]*):)?(.+)\)$/i,Sa=/^\d+\/\d+$/,Ca=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,Va=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,Da=/^(rgba?|hsla?|hwb|(ok)?(lab|lch))\(.+\)$/,ja=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,Ta=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,or=o=>Sa.test(o),ue=o=>!!o&&!Number.isNaN(Number(o)),We=o=>!!o&&Number.isInteger(Number(o)),zr=o=>o.endsWith("%")&&ue(o.slice(0,-1)),Fe=o=>Ca.test(o),Oa=()=>!0,Ra=o=>Va.test(o)&&!Da.test(o),ct=()=>!1,Ma=o=>ja.test(o),Ia=o=>Ta.test(o),za=o=>!B(o)&&!q(o),Aa=o=>cr(o,ft,ct),B=o=>st.test(o),Ke=o=>cr(o,mt,Ra),Ar=o=>cr(o,Za,ue),go=o=>cr(o,ut,ct),Pa=o=>cr(o,bt,Ia),Nr=o=>cr(o,gt,Ma),q=o=>it.test(o),br=o=>ur(o,mt),La=o=>ur(o,Ua),po=o=>ur(o,ut),$a=o=>ur(o,ft),Fa=o=>ur(o,bt),Er=o=>ur(o,gt,!0),cr=(o,e,r)=>{const t=st.exec(o);return t?t[1]?e(t[1]):r(t[2]):!1},ur=(o,e,r=!1)=>{const t=it.exec(o);return t?t[1]?e(t[1]):r:!1},ut=o=>o==="position"||o==="percentage",bt=o=>o==="image"||o==="url",ft=o=>o==="length"||o==="size"||o==="bg-size",mt=o=>o==="length",Za=o=>o==="number",Ua=o=>o==="family-name",gt=o=>o==="shadow",Wa=()=>{const o=je("color"),e=je("font"),r=je("text"),t=je("font-weight"),a=je("tracking"),n=je("leading"),l=je("breakpoint"),s=je("container"),c=je("spacing"),i=je("radius"),f=je("shadow"),T=je("inset-shadow"),w=je("text-shadow"),y=je("drop-shadow"),v=je("blur"),x=je("perspective"),E=je("aspect"),k=je("ease"),j=je("animate"),F=()=>["auto","avoid","all","avoid-page","page","left","right","column"],de=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],me=()=>[...de(),q,B],K=()=>["auto","hidden","clip","visible","scroll"],$=()=>["auto","contain","none"],b=()=>[q,B,c],u=()=>[or,"full","auto",...b()],p=()=>[We,"none","subgrid",q,B],C=()=>["auto",{span:["full",We,q,B]},We,q,B],_=()=>[We,"auto",q,B],O=()=>["auto","min","max","fr",q,B],Z=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],H=()=>["start","end","center","stretch","center-safe","end-safe"],te=()=>["auto",...b()],A=()=>[or,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...b()],N=()=>[o,q,B],W=()=>[...de(),po,go,{position:[q,B]}],se=()=>["no-repeat",{repeat:["","x","y","space","round"]}],m=()=>["auto","cover","contain",$a,Aa,{size:[q,B]}],D=()=>[zr,br,Ke],g=()=>["","none","full",i,q,B],I=()=>["",ue,br,Ke],Q=()=>["solid","dashed","dotted","double"],z=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],V=()=>[ue,zr,po,go],M=()=>["","none",v,q,B],S=()=>["none",ue,q,B],L=()=>["none",ue,q,B],P=()=>[ue,q,B],ee=()=>[or,"full",...b()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[Fe],breakpoint:[Fe],color:[Oa],container:[Fe],"drop-shadow":[Fe],ease:["in","out","in-out"],font:[za],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[Fe],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[Fe],shadow:[Fe],spacing:["px",ue],text:[Fe],"text-shadow":[Fe],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",or,B,q,E]}],container:["container"],columns:[{columns:[ue,B,q,s]}],"break-after":[{"break-after":F()}],"break-before":[{"break-before":F()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],sr:["sr-only","not-sr-only"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:me()}],overflow:[{overflow:K()}],"overflow-x":[{"overflow-x":K()}],"overflow-y":[{"overflow-y":K()}],overscroll:[{overscroll:$()}],"overscroll-x":[{"overscroll-x":$()}],"overscroll-y":[{"overscroll-y":$()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:u()}],"inset-x":[{"inset-x":u()}],"inset-y":[{"inset-y":u()}],start:[{start:u()}],end:[{end:u()}],top:[{top:u()}],right:[{right:u()}],bottom:[{bottom:u()}],left:[{left:u()}],visibility:["visible","invisible","collapse"],z:[{z:[We,"auto",q,B]}],basis:[{basis:[or,"full","auto",s,...b()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[ue,or,"auto","initial","none",B]}],grow:[{grow:["",ue,q,B]}],shrink:[{shrink:["",ue,q,B]}],order:[{order:[We,"first","last","none",q,B]}],"grid-cols":[{"grid-cols":p()}],"col-start-end":[{col:C()}],"col-start":[{"col-start":_()}],"col-end":[{"col-end":_()}],"grid-rows":[{"grid-rows":p()}],"row-start-end":[{row:C()}],"row-start":[{"row-start":_()}],"row-end":[{"row-end":_()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":O()}],"auto-rows":[{"auto-rows":O()}],gap:[{gap:b()}],"gap-x":[{"gap-x":b()}],"gap-y":[{"gap-y":b()}],"justify-content":[{justify:[...Z(),"normal"]}],"justify-items":[{"justify-items":[...H(),"normal"]}],"justify-self":[{"justify-self":["auto",...H()]}],"align-content":[{content:["normal",...Z()]}],"align-items":[{items:[...H(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...H(),{baseline:["","last"]}]}],"place-content":[{"place-content":Z()}],"place-items":[{"place-items":[...H(),"baseline"]}],"place-self":[{"place-self":["auto",...H()]}],p:[{p:b()}],px:[{px:b()}],py:[{py:b()}],ps:[{ps:b()}],pe:[{pe:b()}],pt:[{pt:b()}],pr:[{pr:b()}],pb:[{pb:b()}],pl:[{pl:b()}],m:[{m:te()}],mx:[{mx:te()}],my:[{my:te()}],ms:[{ms:te()}],me:[{me:te()}],mt:[{mt:te()}],mr:[{mr:te()}],mb:[{mb:te()}],ml:[{ml:te()}],"space-x":[{"space-x":b()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":b()}],"space-y-reverse":["space-y-reverse"],size:[{size:A()}],w:[{w:[s,"screen",...A()]}],"min-w":[{"min-w":[s,"screen","none",...A()]}],"max-w":[{"max-w":[s,"screen","none","prose",{screen:[l]},...A()]}],h:[{h:["screen",...A()]}],"min-h":[{"min-h":["screen","none",...A()]}],"max-h":[{"max-h":["screen",...A()]}],"font-size":[{text:["base",r,br,Ke]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[t,q,Ar]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",zr,B]}],"font-family":[{font:[La,B,e]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:[a,q,B]}],"line-clamp":[{"line-clamp":[ue,"none",q,Ar]}],leading:[{leading:[n,...b()]}],"list-image":[{"list-image":["none",q,B]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",q,B]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:N()}],"text-color":[{text:N()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...Q(),"wavy"]}],"text-decoration-thickness":[{decoration:[ue,"from-font","auto",q,Ke]}],"text-decoration-color":[{decoration:N()}],"underline-offset":[{"underline-offset":[ue,"auto",q,B]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:b()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",q,B]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],wrap:[{wrap:["break-word","anywhere","normal"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",q,B]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:W()}],"bg-repeat":[{bg:se()}],"bg-size":[{bg:m()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},We,q,B],radial:["",q,B],conic:[We,q,B]},Fa,Pa]}],"bg-color":[{bg:N()}],"gradient-from-pos":[{from:D()}],"gradient-via-pos":[{via:D()}],"gradient-to-pos":[{to:D()}],"gradient-from":[{from:N()}],"gradient-via":[{via:N()}],"gradient-to":[{to:N()}],rounded:[{rounded:g()}],"rounded-s":[{"rounded-s":g()}],"rounded-e":[{"rounded-e":g()}],"rounded-t":[{"rounded-t":g()}],"rounded-r":[{"rounded-r":g()}],"rounded-b":[{"rounded-b":g()}],"rounded-l":[{"rounded-l":g()}],"rounded-ss":[{"rounded-ss":g()}],"rounded-se":[{"rounded-se":g()}],"rounded-ee":[{"rounded-ee":g()}],"rounded-es":[{"rounded-es":g()}],"rounded-tl":[{"rounded-tl":g()}],"rounded-tr":[{"rounded-tr":g()}],"rounded-br":[{"rounded-br":g()}],"rounded-bl":[{"rounded-bl":g()}],"border-w":[{border:I()}],"border-w-x":[{"border-x":I()}],"border-w-y":[{"border-y":I()}],"border-w-s":[{"border-s":I()}],"border-w-e":[{"border-e":I()}],"border-w-t":[{"border-t":I()}],"border-w-r":[{"border-r":I()}],"border-w-b":[{"border-b":I()}],"border-w-l":[{"border-l":I()}],"divide-x":[{"divide-x":I()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":I()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...Q(),"hidden","none"]}],"divide-style":[{divide:[...Q(),"hidden","none"]}],"border-color":[{border:N()}],"border-color-x":[{"border-x":N()}],"border-color-y":[{"border-y":N()}],"border-color-s":[{"border-s":N()}],"border-color-e":[{"border-e":N()}],"border-color-t":[{"border-t":N()}],"border-color-r":[{"border-r":N()}],"border-color-b":[{"border-b":N()}],"border-color-l":[{"border-l":N()}],"divide-color":[{divide:N()}],"outline-style":[{outline:[...Q(),"none","hidden"]}],"outline-offset":[{"outline-offset":[ue,q,B]}],"outline-w":[{outline:["",ue,br,Ke]}],"outline-color":[{outline:N()}],shadow:[{shadow:["","none",f,Er,Nr]}],"shadow-color":[{shadow:N()}],"inset-shadow":[{"inset-shadow":["none",T,Er,Nr]}],"inset-shadow-color":[{"inset-shadow":N()}],"ring-w":[{ring:I()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:N()}],"ring-offset-w":[{"ring-offset":[ue,Ke]}],"ring-offset-color":[{"ring-offset":N()}],"inset-ring-w":[{"inset-ring":I()}],"inset-ring-color":[{"inset-ring":N()}],"text-shadow":[{"text-shadow":["none",w,Er,Nr]}],"text-shadow-color":[{"text-shadow":N()}],opacity:[{opacity:[ue,q,B]}],"mix-blend":[{"mix-blend":[...z(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":z()}],"mask-clip":[{"mask-clip":["border","padding","content","fill","stroke","view"]},"mask-no-clip"],"mask-composite":[{mask:["add","subtract","intersect","exclude"]}],"mask-image-linear-pos":[{"mask-linear":[ue]}],"mask-image-linear-from-pos":[{"mask-linear-from":V()}],"mask-image-linear-to-pos":[{"mask-linear-to":V()}],"mask-image-linear-from-color":[{"mask-linear-from":N()}],"mask-image-linear-to-color":[{"mask-linear-to":N()}],"mask-image-t-from-pos":[{"mask-t-from":V()}],"mask-image-t-to-pos":[{"mask-t-to":V()}],"mask-image-t-from-color":[{"mask-t-from":N()}],"mask-image-t-to-color":[{"mask-t-to":N()}],"mask-image-r-from-pos":[{"mask-r-from":V()}],"mask-image-r-to-pos":[{"mask-r-to":V()}],"mask-image-r-from-color":[{"mask-r-from":N()}],"mask-image-r-to-color":[{"mask-r-to":N()}],"mask-image-b-from-pos":[{"mask-b-from":V()}],"mask-image-b-to-pos":[{"mask-b-to":V()}],"mask-image-b-from-color":[{"mask-b-from":N()}],"mask-image-b-to-color":[{"mask-b-to":N()}],"mask-image-l-from-pos":[{"mask-l-from":V()}],"mask-image-l-to-pos":[{"mask-l-to":V()}],"mask-image-l-from-color":[{"mask-l-from":N()}],"mask-image-l-to-color":[{"mask-l-to":N()}],"mask-image-x-from-pos":[{"mask-x-from":V()}],"mask-image-x-to-pos":[{"mask-x-to":V()}],"mask-image-x-from-color":[{"mask-x-from":N()}],"mask-image-x-to-color":[{"mask-x-to":N()}],"mask-image-y-from-pos":[{"mask-y-from":V()}],"mask-image-y-to-pos":[{"mask-y-to":V()}],"mask-image-y-from-color":[{"mask-y-from":N()}],"mask-image-y-to-color":[{"mask-y-to":N()}],"mask-image-radial":[{"mask-radial":[q,B]}],"mask-image-radial-from-pos":[{"mask-radial-from":V()}],"mask-image-radial-to-pos":[{"mask-radial-to":V()}],"mask-image-radial-from-color":[{"mask-radial-from":N()}],"mask-image-radial-to-color":[{"mask-radial-to":N()}],"mask-image-radial-shape":[{"mask-radial":["circle","ellipse"]}],"mask-image-radial-size":[{"mask-radial":[{closest:["side","corner"],farthest:["side","corner"]}]}],"mask-image-radial-pos":[{"mask-radial-at":de()}],"mask-image-conic-pos":[{"mask-conic":[ue]}],"mask-image-conic-from-pos":[{"mask-conic-from":V()}],"mask-image-conic-to-pos":[{"mask-conic-to":V()}],"mask-image-conic-from-color":[{"mask-conic-from":N()}],"mask-image-conic-to-color":[{"mask-conic-to":N()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:W()}],"mask-repeat":[{mask:se()}],"mask-size":[{mask:m()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",q,B]}],filter:[{filter:["","none",q,B]}],blur:[{blur:M()}],brightness:[{brightness:[ue,q,B]}],contrast:[{contrast:[ue,q,B]}],"drop-shadow":[{"drop-shadow":["","none",y,Er,Nr]}],"drop-shadow-color":[{"drop-shadow":N()}],grayscale:[{grayscale:["",ue,q,B]}],"hue-rotate":[{"hue-rotate":[ue,q,B]}],invert:[{invert:["",ue,q,B]}],saturate:[{saturate:[ue,q,B]}],sepia:[{sepia:["",ue,q,B]}],"backdrop-filter":[{"backdrop-filter":["","none",q,B]}],"backdrop-blur":[{"backdrop-blur":M()}],"backdrop-brightness":[{"backdrop-brightness":[ue,q,B]}],"backdrop-contrast":[{"backdrop-contrast":[ue,q,B]}],"backdrop-grayscale":[{"backdrop-grayscale":["",ue,q,B]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[ue,q,B]}],"backdrop-invert":[{"backdrop-invert":["",ue,q,B]}],"backdrop-opacity":[{"backdrop-opacity":[ue,q,B]}],"backdrop-saturate":[{"backdrop-saturate":[ue,q,B]}],"backdrop-sepia":[{"backdrop-sepia":["",ue,q,B]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":b()}],"border-spacing-x":[{"border-spacing-x":b()}],"border-spacing-y":[{"border-spacing-y":b()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",q,B]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[ue,"initial",q,B]}],ease:[{ease:["linear","initial",k,q,B]}],delay:[{delay:[ue,q,B]}],animate:[{animate:["none",j,q,B]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[x,q,B]}],"perspective-origin":[{"perspective-origin":me()}],rotate:[{rotate:S()}],"rotate-x":[{"rotate-x":S()}],"rotate-y":[{"rotate-y":S()}],"rotate-z":[{"rotate-z":S()}],scale:[{scale:L()}],"scale-x":[{"scale-x":L()}],"scale-y":[{"scale-y":L()}],"scale-z":[{"scale-z":L()}],"scale-3d":["scale-3d"],skew:[{skew:P()}],"skew-x":[{"skew-x":P()}],"skew-y":[{"skew-y":P()}],transform:[{transform:[q,B,"","none","gpu","cpu"]}],"transform-origin":[{origin:me()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:ee()}],"translate-x":[{"translate-x":ee()}],"translate-y":[{"translate-y":ee()}],"translate-z":[{"translate-z":ee()}],"translate-none":["translate-none"],accent:[{accent:N()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:N()}],"color-scheme":[{scheme:["normal","dark","light","light-dark","only-dark","only-light"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",q,B]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":b()}],"scroll-mx":[{"scroll-mx":b()}],"scroll-my":[{"scroll-my":b()}],"scroll-ms":[{"scroll-ms":b()}],"scroll-me":[{"scroll-me":b()}],"scroll-mt":[{"scroll-mt":b()}],"scroll-mr":[{"scroll-mr":b()}],"scroll-mb":[{"scroll-mb":b()}],"scroll-ml":[{"scroll-ml":b()}],"scroll-p":[{"scroll-p":b()}],"scroll-px":[{"scroll-px":b()}],"scroll-py":[{"scroll-py":b()}],"scroll-ps":[{"scroll-ps":b()}],"scroll-pe":[{"scroll-pe":b()}],"scroll-pt":[{"scroll-pt":b()}],"scroll-pr":[{"scroll-pr":b()}],"scroll-pb":[{"scroll-pb":b()}],"scroll-pl":[{"scroll-pl":b()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",q,B]}],fill:[{fill:["none",...N()]}],"stroke-w":[{stroke:[ue,br,Ke,Ar]}],stroke:[{stroke:["none",...N()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-x","border-w-y","border-w-s","border-w-e","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-x","border-color-y","border-color-s","border-color-e","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],translate:["translate-x","translate-y","translate-none"],"translate-none":["translate","translate-x","translate-y","translate-z"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}},Ba=Ea(Wa);function ie(...o){return Ba(nt(o))}/**
|
|
17
30
|
* @license lucide-react v0.507.0 - ISC
|
|
18
31
|
*
|
|
19
32
|
* This source code is licensed under the ISC license.
|
|
20
33
|
* See the LICENSE file in the root directory of this source tree.
|
|
21
|
-
*/const
|
|
34
|
+
*/const qa=o=>o.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),Ya=o=>o.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,r,t)=>t?t.toUpperCase():r.toLowerCase()),ho=o=>{const e=Ya(o);return e.charAt(0).toUpperCase()+e.slice(1)},pt=(...o)=>o.filter((e,r,t)=>!!e&&e.trim()!==""&&t.indexOf(e)===r).join(" ").trim(),Ha=o=>{for(const e in o)if(e.startsWith("aria-")||e==="role"||e==="title")return!0};/**
|
|
22
35
|
* @license lucide-react v0.507.0 - ISC
|
|
23
36
|
*
|
|
24
37
|
* This source code is licensed under the ISC license.
|
|
25
38
|
* See the LICENSE file in the root directory of this source tree.
|
|
26
|
-
*/var
|
|
39
|
+
*/var Ga={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};/**
|
|
27
40
|
* @license lucide-react v0.507.0 - ISC
|
|
28
41
|
*
|
|
29
42
|
* This source code is licensed under the ISC license.
|
|
30
43
|
* See the LICENSE file in the root directory of this source tree.
|
|
31
|
-
*/const
|
|
44
|
+
*/const Ka=h.forwardRef(({color:o="currentColor",size:e=24,strokeWidth:r=2,absoluteStrokeWidth:t,className:a="",children:n,iconNode:l,...s},c)=>h.createElement("svg",{ref:c,...Ga,width:e,height:e,stroke:o,strokeWidth:t?Number(r)*24/Number(e):r,className:pt("lucide",a),...!n&&!Ha(s)&&{"aria-hidden":"true"},...s},[...l.map(([i,f])=>h.createElement(i,f)),...Array.isArray(n)?n:[n]]));/**
|
|
32
45
|
* @license lucide-react v0.507.0 - ISC
|
|
33
46
|
*
|
|
34
47
|
* This source code is licensed under the ISC license.
|
|
35
48
|
* See the LICENSE file in the root directory of this source tree.
|
|
36
|
-
*/const
|
|
49
|
+
*/const Ae=(o,e)=>{const r=h.forwardRef(({className:t,...a},n)=>h.createElement(Ka,{ref:n,iconNode:e,className:pt(`lucide-${qa(ho(o))}`,`lucide-${o}`,t),...a}));return r.displayName=ho(o),r};/**
|
|
37
50
|
* @license lucide-react v0.507.0 - ISC
|
|
38
51
|
*
|
|
39
52
|
* This source code is licensed under the ISC license.
|
|
40
53
|
* See the LICENSE file in the root directory of this source tree.
|
|
41
|
-
*/const
|
|
54
|
+
*/const Xa=[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]],Ja=Ae("arrow-right",Xa);/**
|
|
42
55
|
* @license lucide-react v0.507.0 - ISC
|
|
43
56
|
*
|
|
44
57
|
* This source code is licensed under the ISC license.
|
|
45
58
|
* See the LICENSE file in the root directory of this source tree.
|
|
46
|
-
*/const
|
|
59
|
+
*/const Qa=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],eo=Ae("check",Qa);/**
|
|
47
60
|
* @license lucide-react v0.507.0 - ISC
|
|
48
61
|
*
|
|
49
62
|
* This source code is licensed under the ISC license.
|
|
50
63
|
* See the LICENSE file in the root directory of this source tree.
|
|
51
|
-
*/const
|
|
64
|
+
*/const en=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]],rn=Ae("circle-alert",en);/**
|
|
52
65
|
* @license lucide-react v0.507.0 - ISC
|
|
53
66
|
*
|
|
54
67
|
* This source code is licensed under the ISC license.
|
|
55
68
|
* See the LICENSE file in the root directory of this source tree.
|
|
56
|
-
*/const
|
|
69
|
+
*/const on=[["path",{d:"M21.801 10A10 10 0 1 1 17 3.335",key:"yps3ct"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]],tn=Ae("circle-check-big",on);/**
|
|
57
70
|
* @license lucide-react v0.507.0 - ISC
|
|
58
71
|
*
|
|
59
72
|
* This source code is licensed under the ISC license.
|
|
60
73
|
* See the LICENSE file in the root directory of this source tree.
|
|
61
|
-
*/const
|
|
74
|
+
*/const an=[["path",{d:"M12 13v8",key:"1l5pq0"}],["path",{d:"M4 14.899A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.5 8.242",key:"1pljnt"}],["path",{d:"m8 17 4-4 4 4",key:"1quai1"}]],ro=Ae("cloud-upload",an);/**
|
|
62
75
|
* @license lucide-react v0.507.0 - ISC
|
|
63
76
|
*
|
|
64
77
|
* This source code is licensed under the ISC license.
|
|
65
78
|
* See the LICENSE file in the root directory of this source tree.
|
|
66
|
-
*/const
|
|
79
|
+
*/const nn=[["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["polyline",{points:"7 10 12 15 17 10",key:"2ggqvy"}],["line",{x1:"12",x2:"12",y1:"15",y2:"3",key:"1vk2je"}]],ln=Ae("download",nn);/**
|
|
67
80
|
* @license lucide-react v0.507.0 - ISC
|
|
68
81
|
*
|
|
69
82
|
* This source code is licensed under the ISC license.
|
|
70
83
|
* See the LICENSE file in the root directory of this source tree.
|
|
71
|
-
*/const
|
|
84
|
+
*/const dn=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]],sn=Ae("info",dn);/**
|
|
72
85
|
* @license lucide-react v0.507.0 - ISC
|
|
73
86
|
*
|
|
74
87
|
* This source code is licensed under the ISC license.
|
|
75
88
|
* See the LICENSE file in the root directory of this source tree.
|
|
76
|
-
*/const
|
|
89
|
+
*/const cn=[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]],un=Ae("rotate-ccw",cn);/**
|
|
77
90
|
* @license lucide-react v0.507.0 - ISC
|
|
78
91
|
*
|
|
79
92
|
* This source code is licensed under the ISC license.
|
|
80
93
|
* See the LICENSE file in the root directory of this source tree.
|
|
81
|
-
*/const
|
|
94
|
+
*/const bn=[["path",{d:"M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z",key:"4pj2yx"}],["path",{d:"M20 3v4",key:"1olli1"}],["path",{d:"M22 5h-4",key:"1gvqau"}],["path",{d:"M4 17v2",key:"vumght"}],["path",{d:"M5 18H3",key:"zchphs"}]],fn=Ae("sparkles",bn);/**
|
|
82
95
|
* @license lucide-react v0.507.0 - ISC
|
|
83
96
|
*
|
|
84
97
|
* This source code is licensed under the ISC license.
|
|
85
98
|
* See the LICENSE file in the root directory of this source tree.
|
|
86
|
-
*/const
|
|
99
|
+
*/const mn=[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]],ht=Ae("triangle-alert",mn);/**
|
|
87
100
|
* @license lucide-react v0.507.0 - ISC
|
|
88
101
|
*
|
|
89
102
|
* This source code is licensed under the ISC license.
|
|
90
103
|
* See the LICENSE file in the root directory of this source tree.
|
|
91
|
-
*/const
|
|
104
|
+
*/const gn=[["path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z",key:"cbrjhi"}]],pn=Ae("wrench",gn);/**
|
|
92
105
|
* @license lucide-react v0.507.0 - ISC
|
|
93
106
|
*
|
|
94
107
|
* This source code is licensed under the ISC license.
|
|
95
108
|
* See the LICENSE file in the root directory of this source tree.
|
|
96
|
-
*/const bn=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],gt=Ve("x",bn);function go({error:o,centered:e=!1}){return o?l.jsx("div",{className:ce("bg-red-50 border border-red-200 text-red-700 px-4 py-3 rounded-md",e&&"text-center"),children:l.jsxs("p",{className:"flex items-center gap-2",children:[l.jsx(on,{size:na.icon.small}),o.toString()]})}):null}function un({steps:o,current:e,hide:r,skipHeader:t}){if(r)return null;const a=o.filter(d=>!d.disabled),n=o.slice(0,e+1).filter(d=>!d.disabled).length-1;return l.jsx("div",{className:"w-full flex items-center justify-center h-10 px-4 py-2",children:l.jsx("div",{className:"flex items-center",children:a.map((d,c)=>{const i=c===n,s=c<n;return l.jsxs("div",{className:"flex items-center",children:[l.jsxs("div",{className:ce("flex items-center gap-2 transition-all duration-300",i&&"scale-105"),children:[l.jsxs("div",{className:ce("relative w-6 h-6 rounded-full flex items-center justify-center text-xs font-semibold transition-all duration-300",i&&"bg-blue-600 text-white shadow-md",s&&"bg-blue-600 text-white",!i&&!s&&"bg-slate-100 border-2 border-slate-300 text-slate-500"),children:[i&&l.jsx("span",{className:"absolute inset-0 rounded-full bg-blue-600 animate-ping opacity-25"}),l.jsx("span",{className:"relative",children:s?l.jsx(Jr,{className:"w-3.5 h-3.5 stroke-[2.5]"}):c+1})]}),l.jsx("span",{className:ce("text-xs tracking-wide transition-all duration-300",i&&"text-slate-900 font-semibold",s&&"text-slate-700 font-medium",!i&&!s&&"text-slate-400"),children:d.label})]}),c<a.length-1&&l.jsx("div",{className:"mx-4 w-16 h-0.5 rounded-full overflow-hidden bg-slate-200",children:l.jsx("div",{className:ce("h-full bg-gradient-to-r from-blue-600 to-blue-400 transition-all duration-500",s?"w-full":"w-0")})})]},c)})})})}const mo=o=>typeof o=="boolean"?`${o}`:o===0?"0":o,po=rt,mt=(o,e)=>r=>{var t;if(e?.variants==null)return po(o,r?.class,r?.className);const{variants:a,defaultVariants:n}=e,d=Object.keys(a).map(s=>{const f=r?.[s],E=n?.[s];if(f===null)return null;const v=mo(f)||mo(E);return a[s][v]}),c=r&&Object.entries(r).reduce((s,f)=>{let[E,v]=f;return v===void 0||(s[E]=v),s},{}),i=e==null||(t=e.compoundVariants)===null||t===void 0?void 0:t.reduce((s,f)=>{let{class:E,className:v,...y}=f;return Object.entries(y).every(x=>{let[h,S]=x;return Array.isArray(S)?S.includes({...n,...c}[h]):{...n,...c}[h]===S})?[...s,E,v]:s},[]);return po(o,d,i,r?.class,r?.className)},fn=mt("inline-flex items-center justify-center whitespace-nowrap rounded-lg text-sm font-medium cursor-pointer transition-colors duration-200 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",{variants:{variant:{default:"bg-blue-600 text-white shadow hover:bg-blue-700 focus-visible:ring-blue-500",destructive:"bg-red-600 text-white shadow hover:bg-red-700 focus-visible:ring-red-500",outline:"border border-gray-300 bg-white text-gray-700 hover:bg-gray-50 focus-visible:ring-gray-500",secondary:"bg-gray-100 text-gray-900 hover:bg-gray-200 focus-visible:ring-gray-500",ghost:"hover:bg-gray-100 hover:text-gray-900 focus-visible:ring-gray-500",link:"text-blue-600 underline-offset-4 hover:underline hover:text-blue-700"},size:{default:"h-10 px-6 py-2",sm:"h-9 rounded-md px-4 text-xs",lg:"h-12 rounded-lg px-8 text-base",icon:"h-10 w-10"}},defaultVariants:{variant:"default",size:"default"}}),pt=Te(({className:o,variant:e,size:r,isLoading:t,type:a,children:n,...d},c)=>{const s=typeof window<"u"&&document.querySelector('[data-theme="dark"]')&&e?{default:"dark:bg-blue-500 dark:hover:bg-blue-600",outline:"dark:border-gray-600 dark:bg-gray-800 dark:text-gray-200 dark:hover:bg-gray-700",secondary:"dark:bg-gray-700 dark:text-gray-100 dark:hover:bg-gray-600",ghost:"dark:hover:bg-gray-800 dark:hover:text-gray-100",link:"dark:text-blue-400 dark:hover:text-blue-300"}[e]:"";return l.jsxs("button",{type:a,className:ce(fn({variant:e,size:r,className:o}),s),ref:c,disabled:t||d.disabled,...d,children:[t&&l.jsxs("svg",{className:"mr-2 h-4 w-4 animate-spin",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",children:[l.jsx("circle",{className:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"4"}),l.jsx("path",{className:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"})]}),n]})});pt.displayName="Button";const Ue=pt,gn=mt("relative w-full rounded-lg border p-4 [&>svg~*]:pl-7 [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground",{variants:{variant:{default:"bg-background text-foreground",destructive:"border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive"}},defaultVariants:{variant:"default"}}),ht=Te(({className:o,variant:e,...r},t)=>l.jsx("div",{ref:t,role:"alert",className:ce(gn({variant:e}),o),...r}));ht.displayName="Alert";const xt=ht,yt=Te(({className:o,...e},r)=>l.jsx("h5",{ref:r,className:ce("mb-1 font-medium leading-none tracking-tight",o),...e}));yt.displayName="AlertTitle";const mn=yt,_t=Te(({className:o,...e},r)=>l.jsx("div",{ref:r,className:ce("text-sm [&_p]:leading-relaxed",o),...e}));_t.displayName="AlertDescription";const vt=_t,ho=({content:o,children:e,delayDuration:r=200,side:t="top",className:a})=>{const[n,d]=p.useState(!1),c=p.useRef(),i=()=>{c.current=setTimeout(()=>{d(!0)},r)},s=()=>{c.current&&clearTimeout(c.current),d(!1)};p.useEffect(()=>()=>{c.current&&clearTimeout(c.current)},[]);const f={top:"bottom-full left-1/2 -translate-x-1/2 mb-2",bottom:"top-full left-1/2 -translate-x-1/2 mt-2",left:"right-full top-1/2 -translate-y-1/2 mr-2",right:"left-full top-1/2 -translate-y-1/2 ml-2"};return l.jsxs("div",{className:"relative inline-block",onMouseEnter:i,onMouseLeave:s,onFocus:i,onBlur:s,children:[e,n&&l.jsx("div",{className:ce("absolute z-50 px-3 py-1.5 text-sm","bg-gray-900 text-white rounded-md","pointer-events-none whitespace-nowrap","animate-in fade-in-0 zoom-in-95",f[t],a),children:o})]})},pn=Te(({children:o,asChild:e,...r},t)=>l.jsx("div",{ref:t,...r,children:o}));pn.displayName="TooltipTrigger";const hn=Te(({children:o,className:e,sideOffset:r,...t},a)=>l.jsx("div",{ref:a,className:e,...t,children:o}));hn.displayName="TooltipContent";const Je={typography:{title:"text-xl font-semibold text-gray-900",subtitle:"text-sm text-gray-600",label:"text-sm font-medium text-gray-700",body:"text-sm text-gray-900",caption:"text-xs text-gray-500"},spacing:{section:"mb-4"},layout:{header:"px-6 py-4 bg-white",content:"flex-1 overflow-auto",footer:"px-6 py-4 bg-white flex justify-between items-center",container:"flex flex-col h-full"},components:{card:"border border-gray-200 rounded-lg bg-white",input:"w-full px-3 py-2 text-sm border border-gray-300 rounded focus:outline-none focus:ring-2 focus:ring-blue-500",table:"min-w-full border-collapse",tableHeader:"bg-gray-50 border-b-2 border-gray-200",tableRow:"border-b border-gray-200 hover:bg-gray-50"}},ze=Je;({...Je.typography},{...Je.typography}),{...Je.typography},{...Je.components},{...Je.typography},{...Je.typography};function hr({title:o,subtitle:e,children:r,headerContent:t,footerContent:a,showHeader:n=!0,showFooter:d=!0,className:c,contentClassName:i}){return l.jsxs("div",{className:ce(ze.layout.container,c),children:[n&&(o||t)&&l.jsxs("div",{className:ze.layout.header,children:[o&&l.jsxs("div",{children:[l.jsx("h2",{className:ze.typography.title,children:o}),e&&l.jsx("p",{className:ce(ze.typography.subtitle,"mt-1"),children:e})]}),t]}),l.jsx("div",{className:ce(ze.layout.content,!i&&"px-6 py-4",i),children:r}),d&&a&&l.jsx("div",{className:ze.layout.footer,children:a})]})}const wt=Te(({className:o,type:e,...r},t)=>l.jsx("input",{type:e,className:ce("flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",o),ref:t,...r}));wt.displayName="Input";const xn=wt,kt=Te(({className:o,checked:e,onCheckedChange:r,onChange:t,...a},n)=>{const[d,c]=p.useState(e||!1);p.useEffect(()=>{c(e||!1)},[e]);const i=s=>{if(!s.target)return;const f=s.target.checked;c(f),r?.(f),t?.(s)};return l.jsxs("div",{className:"relative inline-block",children:[l.jsx("input",{type:"checkbox",ref:n,checked:d,onChange:i,className:ce("peer sr-only",o),...a}),l.jsx("div",{className:ce("h-4 w-4 shrink-0 rounded-sm border border-gray-300 bg-white","peer-checked:bg-blue-600 peer-checked:border-blue-600","peer-focus-visible:outline-none peer-focus-visible:ring-2 peer-focus-visible:ring-blue-500 peer-focus-visible:ring-offset-2","peer-disabled:cursor-not-allowed peer-disabled:opacity-50","flex items-center justify-center cursor-pointer"),children:d&&l.jsx(Jr,{className:"h-3 w-3 text-white"})})]})});kt.displayName="Checkbox";const xo=kt,yo={t:(o,e)=>{if(e){let r=o;return Object.entries(e).forEach(([t,a])=>{r=r.replace(new RegExp(`{{${t}}}`,"g"),String(a))}),r}return o},changeLanguage:()=>Promise.resolve(),addResourceBundle:()=>!0},rr=()=>({t:yo.t,i18n:yo});async function yn(o,e,r,t,a,n,d){if(!o||o.trim().length<3)return{success:!1,changes:[],summary:"",error:"Please describe the transformation you want to apply"};if(!t||!a)return{success:!1,changes:[],summary:"",error:"Missing configuration"};try{const c=await fetch(`${t}/api/v1/imports/key/transform`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({importerKey:a,prompt:o,data:e,columnMapping:r,targetColumns:n,validationErrors:d})});if(!c.ok){if(c.status===429)return{success:!1,changes:[],summary:"",error:"Rate limit exceeded. Please try again later."};const s=await c.json().catch(()=>({}));return{success:!1,changes:[],summary:"",error:s.error||"Failed to generate transformations"}}const i=await c.json();return i.changes&&(i.changes=i.changes.map(s=>({...s,selected:s.selected!==!1}))),i}catch(c){return console.error("Transformation service error:",c),{success:!1,changes:[],summary:"",error:"Network error. Please check your connection."}}}function _n(o){return o.filter(e=>e.selected).length}function vn(o,e){return o.map((r,t)=>t===e?{...r,selected:!r.selected}:r)}function _o(o,e){return o.map(r=>({...r,selected:e}))}const wn=["Convert all dates to MM/DD/YYYY format","Convert all dates to YYYY-MM-DD format","Remove special characters from phone numbers","Format phone numbers as (XXX) XXX-XXXX","Capitalize all names","Convert text to uppercase","Convert text to lowercase","Trim extra spaces","Fill empty values with 'N/A'","Remove dollar signs and commas from amounts"],kn=[{pattern:/date|datetime|timestamp/i,type:"date_format",title:"Date Format",description:"Invalid or inconsistent date formats"},{pattern:/email|e-mail/i,type:"email",title:"Email Validation",description:"Invalid or incomplete email addresses"},{pattern:/phone|mobile|tel/i,type:"phone",title:"Phone Numbers",description:"Invalid or incomplete phone numbers"},{pattern:/required|missing|empty|blank/i,type:"required",title:"Required Fields",description:"Missing required values"},{pattern:/number|numeric|integer|decimal/i,type:"number",title:"Number Format",description:"Invalid number formats"},{pattern:/length|characters|min|max/i,type:"length",title:"Text Length",description:"Text length validation errors"},{pattern:/url|link|website/i,type:"url",title:"URL Format",description:"Invalid URL formats"},{pattern:/unique|duplicate/i,type:"unique",title:"Duplicate Values",description:"Duplicate values in unique fields"}];function Sn(o){const e=o.toLowerCase();for(const r of kn)if(r.pattern.test(e))return{type:r.type,title:r.title,description:r.description};return{type:"other",title:"Other Validation",description:"General validation errors"}}function Cn(o,e){const r=String(e||"empty");switch(o){case"date_format":return{before:r,after:"MM/DD/YYYY format"};case"email":return{before:r.includes("@")?r:`${r}@`,after:r.includes("@")?"valid email":`${r}@example.com`};case"phone":return{before:r,after:"(555) 555-1234"};case"required":return{before:"empty",after:"Default value"};case"number":return{before:r,after:"Valid number"};case"url":return{before:r,after:"https://example.com"};default:return}}function jn(o){const e=new Map;return o.forEach(r=>{const{type:t,title:a,description:n}=Sn(r.message);e.has(t)||e.set(t,{type:t,title:a,description:n,count:0,columns:[],errors:[],selected:!0});const d=e.get(t);d.errors.push(r),d.count++,d.columns.includes(r.columnKey)||d.columns.push(r.columnKey),!d.example&&r.value!==void 0&&(d.example=Cn(t,r.value))}),Array.from(e.values()).sort((r,t)=>t.count-r.count)}function Nn(o){return o.filter(e=>e.selected).flatMap(e=>e.errors)}function En(o,e){return o.map(r=>r.type===e?{...r,selected:!r.selected}:r)}function On(o,e){return o.map(r=>({...r,selected:e}))}function Cr(o){return o.filter(e=>e.selected).reduce((e,r)=>e+r.count,0)}const St=.9;function vo(o){return o>=St?"high":"medium"}function In({isOpen:o,onClose:e,data:r,columnMapping:t,backendUrl:a,importerKey:n,validationErrors:d,onApplyTransformations:c}){const{t:i}=rr(),s=p.useRef(null),f=p.useRef(null),[E,v]=p.useState(""),[y,x]=p.useState([]),[h,S]=p.useState(""),[w,N]=p.useState(null),[L,le]=p.useState(!1),[ge,K]=p.useState(!1),[V,u]=p.useState([]),b=d&&d.length>0;p.useEffect(()=>{if(b&&o){const m=jn(d);u(m)}},[d,b,o]),p.useEffect(()=>{const m=Z=>{Z.key==="Escape"&&o&&e()};return o&&(document.addEventListener("keydown",m),f.current?.focus()),()=>{document.removeEventListener("keydown",m)}},[o,e]);const g=p.useCallback(async m=>{const Z=m||E;if(!Z.trim()){N("Please describe the transformation");return}le(!0),N(null),x([]),S("");try{const te=await yn(Z,r,t,a,n,void 0,d);te.success&&te.changes.length>0?(x(te.changes),S(te.summary)):te.error?N(te.error):N("No transformations generated. Try a different description.")}catch{N("Failed to generate transformations")}finally{le(!1)}},[E,r,t,a,n,d]),C=p.useCallback(()=>{if(Nn(V).length===0){N("Please select at least one error category to fix");return}const te=`fix validation errors: ${V.filter(M=>M.selected).map(M=>M.title.toLowerCase()).join(", ")}`;g(te)},[V,g]),_=p.useCallback(m=>{u(Z=>En(Z,m))},[]),I=p.useCallback(m=>{u(Z=>On(Z,m))},[]),$=p.useCallback(m=>{const Z=m?_o(y,!0):y.filter(te=>te.selected);c(Z),e()},[y,c,e]),Y=p.useCallback(m=>{x(Z=>vn(Z,m))},[]),oe=p.useCallback(m=>{x(Z=>_o(Z,m))},[]),A=p.useCallback(m=>{v(m),K(!1),s.current?.focus()},[]),k=p.useCallback(()=>{v(""),x([]),S(""),N(null),K(!1),e()},[e]),F=p.useCallback((m,Z)=>{(m.key==="Enter"||m.key===" ")&&(m.preventDefault(),Z())},[]),be=_n(y),H=y.length>0,B=p.useMemo(()=>y.filter(m=>m.confidence<St).length,[y]);return o?l.jsxs(l.Fragment,{children:[l.jsx("div",{className:"absolute inset-0 bg-slate-900/50 dark:bg-slate-900/70 z-[100] transition-opacity duration-200",onClick:k,style:{pointerEvents:o?"auto":"none",opacity:o?1:0}}),l.jsxs("div",{ref:f,tabIndex:-1,role:"dialog","aria-modal":"true","aria-labelledby":"modal-title",className:`absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 bg-white dark:bg-slate-800 shadow-2xl z-[101] flex flex-col rounded-xl border border-slate-200 dark:border-slate-700 transition-all duration-200 ${o?"opacity-100 scale-100":"opacity-0 scale-95 pointer-events-none"}`,style:{width:"min(480px, calc(100% - 48px))",maxHeight:"calc(100% - 96px)"},onClick:m=>m.stopPropagation(),children:[l.jsxs("div",{className:"flex items-center justify-between px-6 py-4 border-b border-slate-200 dark:border-slate-700",children:[l.jsx("h2",{id:"modal-title",className:"text-lg font-semibold text-slate-900 dark:text-slate-100",children:i("Fix Errors")}),l.jsx("button",{onClick:k,className:"p-1.5 hover:bg-slate-100 dark:hover:bg-slate-700 rounded-lg transition-colors","aria-label":"Close panel",children:l.jsx(gt,{className:"h-5 w-5 text-slate-500 dark:text-slate-400"})})]}),l.jsx("div",{className:"flex-1 overflow-y-auto",children:l.jsxs("div",{className:"px-6 py-5 space-y-4",children:[b&&!H&&V.length>0&&l.jsx(l.Fragment,{children:l.jsxs("div",{children:[l.jsxs("div",{className:"mb-4",children:[l.jsxs("h3",{className:"text-base font-medium text-slate-900 dark:text-slate-100",children:[Cr(V)," validation ",Cr(V)===1?"error":"errors"]}),l.jsx("p",{className:"text-sm text-slate-500 dark:text-slate-400 mt-1",children:"Select errors to fix automatically"})]}),l.jsx("div",{className:"space-y-1.5 mb-4",children:V.map(m=>l.jsxs("div",{role:"button",tabIndex:0,className:ce("flex items-center gap-3 py-3 px-3 cursor-pointer rounded-lg transition-all",m.selected?"bg-blue-50 border border-blue-200 dark:bg-blue-900/20 dark:border-blue-800":"hover:bg-slate-50 dark:hover:bg-slate-800 border border-transparent"),onClick:()=>_(m.type),onKeyDown:Z=>F(Z,()=>_(m.type)),children:[l.jsx(xo,{checked:m.selected,onCheckedChange:()=>_(m.type),onClick:Z=>Z.stopPropagation(),className:"flex-shrink-0"}),l.jsxs("div",{className:"flex-1",children:[l.jsx("div",{className:"text-sm text-slate-900 dark:text-slate-100",children:m.title}),l.jsxs("p",{className:"text-xs text-slate-500 dark:text-slate-400",children:[m.count," ",m.count===1?"error":"errors"," in ",m.columns.join(", ")]})]})]},m.type))}),l.jsxs("div",{className:"flex items-center gap-2 mb-4",children:[l.jsx("button",{type:"button",className:"text-sm text-blue-600 hover:text-blue-700 dark:text-blue-400 dark:hover:text-blue-300 hover:underline transition-colors",onClick:()=>I(!0),children:"Select all"}),l.jsx("span",{className:"text-slate-300 dark:text-slate-600",children:"|"}),l.jsx("button",{type:"button",className:"text-sm text-blue-600 hover:text-blue-700 dark:text-blue-400 dark:hover:text-blue-300 hover:underline transition-colors",onClick:()=>I(!1),children:"Clear"})]}),l.jsx("div",{className:"flex justify-end",children:l.jsx("button",{type:"button",className:"px-4 py-2.5 text-sm font-medium bg-blue-600 text-white rounded-lg hover:bg-blue-700 transition-colors disabled:opacity-50 disabled:cursor-not-allowed shadow-sm",onClick:C,disabled:L||Cr(V)===0,children:i(L?"Analyzing...":`Fix ${Cr(V)} selected`)})})]})}),!b&&!H&&l.jsxs("div",{children:[l.jsxs("div",{className:"flex gap-2 mb-2",children:[l.jsx(xn,{ref:s,placeholder:i("Describe the transformation (e.g., 'Convert dates to MM/DD/YYYY')"),value:E,onChange:m=>v(m.target.value),onKeyPress:m=>m.key==="Enter"&&g(),disabled:L,className:"h-10"}),l.jsxs(Ue,{type:"button",onClick:()=>g(),isLoading:L,disabled:L,children:[l.jsx(dn,{className:"mr-2 h-4 w-4"}),i(L?"Generating":"Generate")]})]}),l.jsx("button",{className:"text-xs text-blue-600 hover:underline",onClick:()=>K(!ge),children:i(ge?"Hide examples":"Show examples")}),ge&&l.jsxs("div",{className:"mt-2 p-3 bg-slate-50 dark:bg-slate-900 rounded-lg",children:[l.jsx("p",{className:"text-xs mb-2 font-medium text-slate-600 dark:text-slate-300",children:i("Click to use:")}),l.jsx("div",{className:"flex flex-wrap gap-1.5",children:wn.slice(0,5).map((m,Z)=>l.jsx("span",{className:"px-2.5 py-1 text-xs bg-slate-200 dark:bg-slate-700 text-slate-700 dark:text-slate-300 rounded-md cursor-pointer hover:bg-blue-100 hover:text-blue-700 dark:hover:bg-slate-600 transition-colors",onClick:()=>A(m),children:m},Z))})]})]}),w&&l.jsx(xt,{variant:"destructive",children:l.jsx(vt,{children:w})}),L&&l.jsxs("div",{className:"text-center py-8",children:[l.jsx("div",{className:"inline-block animate-spin rounded-full h-8 w-8 border-b-2 border-blue-500"}),l.jsx("p",{className:"mt-3 font-medium text-slate-700 dark:text-slate-300",children:i("Generating fixes...")}),l.jsx("p",{className:"text-sm text-slate-500 dark:text-slate-400 mt-1",children:i("Analyzing errors and suggesting corrections")})]}),H&&!L&&l.jsx(l.Fragment,{children:l.jsxs("div",{children:[l.jsxs("div",{className:"mb-4",children:[l.jsxs("h3",{className:"text-base font-medium text-slate-900 dark:text-slate-100",children:[y.length," ",y[0]?.columnKey||""," ",y.length===1?"value":"values"," will be transformed"]}),l.jsx("p",{className:"text-sm text-slate-500 dark:text-slate-400 mt-1",children:"Review and select the changes you want to apply"})]}),l.jsx("div",{className:"mb-3",children:l.jsx("button",{type:"button",className:"text-sm text-blue-600 hover:text-blue-700 dark:text-blue-400 dark:hover:text-blue-300",onClick:()=>oe(be!==y.length),children:be===y.length?i("Deselect all"):i("Select all")})}),l.jsx("div",{children:l.jsxs("div",{className:"space-y-1",children:[y.slice(0,100).map((m,Z)=>l.jsxs("div",{role:"button",tabIndex:0,className:ce("flex items-center gap-3 py-2.5 px-3 cursor-pointer transition-all rounded-lg",m.selected?"bg-blue-50 border border-blue-200 dark:bg-blue-900/20 dark:border-blue-800":"hover:bg-slate-50 dark:hover:bg-slate-800 border border-transparent"),onClick:()=>Y(Z),onKeyDown:te=>F(te,()=>Y(Z)),children:[l.jsx(xo,{checked:m.selected,onCheckedChange:()=>Y(Z),onClick:te=>te.stopPropagation(),className:"flex-shrink-0"}),l.jsxs("div",{className:"flex-1 min-w-0",children:[l.jsxs("div",{className:"flex items-center gap-2 text-sm flex-wrap",children:[l.jsx("span",{className:"line-through text-gray-400 truncate max-w-[120px]",title:String(m.oldValue||""),children:String(m.oldValue||"(empty)")}),l.jsx(Ua,{size:14,className:"text-gray-400 flex-shrink-0"}),l.jsx("span",{className:ce("font-medium truncate max-w-[200px]",vo(m.confidence)==="high"?"text-green-600 dark:text-green-400":"text-amber-600 dark:text-amber-400"),title:String(m.newValue),children:String(m.newValue)}),vo(m.confidence)==="medium"&&l.jsx("span",{title:`Confidence: ${Math.round(m.confidence*100)}%`,"aria-label":`Low confidence: ${Math.round(m.confidence*100)}%`,children:l.jsx(ft,{size:14,className:"text-amber-500 flex-shrink-0","aria-hidden":"true"})})]}),l.jsxs("div",{className:"text-xs text-slate-500 dark:text-slate-400 mt-1",children:["Row ",m.rowIndex+1,", ",m.columnKey]})]})]},Z)),y.length>100&&l.jsx("p",{className:"text-sm text-slate-500 dark:text-slate-400 text-center py-2",children:i(`Showing first 100 of ${y.length} changes`)})]})})]})})]})}),H&&l.jsx("div",{className:"border-t border-slate-200 dark:border-slate-700 px-6 py-4 bg-white dark:bg-slate-800 rounded-b-xl",children:l.jsxs("div",{className:"flex justify-between items-center",children:[l.jsxs("div",{children:[l.jsx("span",{className:"text-lg font-semibold text-slate-900 dark:text-slate-100",children:be}),l.jsxs("span",{className:"text-sm text-slate-500 dark:text-slate-400 ml-1.5",children:[be===1?"change":"changes"," selected"]}),B>0&&l.jsxs("span",{className:"text-sm text-amber-600 dark:text-amber-400 ml-2",children:["(",B," need review)"]})]}),l.jsx("button",{type:"button",className:"px-4 py-2.5 text-sm font-medium bg-blue-600 text-white rounded-lg hover:bg-blue-700 transition-colors disabled:opacity-50 disabled:cursor-not-allowed shadow-sm",onClick:()=>$(be===y.length),disabled:be===0,children:i("Apply")})]})})]})]}):null}function Rn(o,e){const r=String(o||"").trim();if(e.validators)for(const t of e.validators){const a=zn(r,t,e);if(a)return a}if(r)switch(e.type){case"email":if(!/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(r))return"Invalid email address";break;case"number":if(isNaN(Number(r)))return"Must be a number";break;case"phone":if(r.replace(/\D/g,"").length<10)return"Invalid phone number (must be at least 10 digits)";break;case"date":const a=new Date(r);if(isNaN(a.getTime()))return"Invalid date format";break;case"select":if(e.options){const n=r.toLowerCase();if(!e.options.map(c=>c.toLowerCase()).includes(n))return`Must be one of: ${e.options.join(", ")}`}break}return null}function zn(o,e,r){switch(e.type){case"required":if(!o||o==="")return e.message||`${r.label} is required`;break;case"unique":break;case"regex":if(o&&!new RegExp(e.pattern).test(o))return e.message||`${r.label} format is invalid`;break;case"min":const t=Number(o);if(!isNaN(t)&&t<e.value)return e.message||`${r.label} must be at least ${e.value}`;break;case"max":const a=Number(o);if(!isNaN(a)&&a>e.value)return e.message||`${r.label} must be at most ${e.value}`;break;case"min_length":if(o&&o.length<e.value)return e.message||`${r.label} must be at least ${e.value} characters`;break;case"max_length":if(o&&o.length>e.value)return e.message||`${r.label} must be at most ${e.value} characters`;break}return null}const Tn=["trim","uppercase","lowercase","remove_special_chars","normalize_phone","normalize_date"];function Mn(o){return Tn.includes(o)}function fr(o,e){if(!e||e.length===0)return o;let r=o;for(const t of e)r=An(r,t);return r}function An(o,e){const r=String(o||"");switch(e.type){case"trim":return r.trim();case"uppercase":return r.toUpperCase();case"lowercase":return r.toLowerCase();case"capitalize":return r.split(" ").map(n=>n.charAt(0).toUpperCase()+n.slice(1).toLowerCase()).join(" ");case"remove_special_chars":return r.replace(/[^a-zA-Z0-9\s]/g,"");case"normalize_phone":const t=r.replace(/\D/g,"");return t.length===10?`(${t.slice(0,3)}) ${t.slice(3,6)}-${t.slice(6)}`:t.length===11&&t[0]==="1"?`(${t.slice(1,4)}) ${t.slice(4,7)}-${t.slice(7)}`:r;case"normalize_date":let a=new Date(r);if(isNaN(a.getTime())){const n=r.split(/[-\/]/);n.length===3&&(a=new Date(`${n[2]}-${n[0].padStart(2,"0")}-${n[1].padStart(2,"0")}`),isNaN(a.getTime())&&(a=new Date(`${n[0]}-${n[1].padStart(2,"0")}-${n[2].padStart(2,"0")}`)))}if(!isNaN(a.getTime())){const n=e.format||"YYYY-MM-DD";return Dn(a,n)}return r;case"default":return r.trim()===""?e.value:r;case"replace":try{return r.replace(new RegExp(e.find,"g"),e.replace)}catch{return r.split(e.find).join(e.replace)}case"custom":try{return e.fn(o)}catch{return o}default:return o}}function Dn(o,e){const r=o.getFullYear(),t=String(o.getMonth()+1).padStart(2,"0"),a=String(o.getDate()).padStart(2,"0");return e.replace("YYYY",String(r)).replace("MM",t).replace("DD",a)}function jr(o){if(!o||o.length===0)return{pre:[],post:[]};const e=[],r=[];return o.forEach(t=>{"stage"in t&&t.stage==="pre"?e.push(t):"stage"in t&&t.stage==="post"?r.push(t):Mn(t.type)?e.push(t):r.push(t)}),{pre:e,post:r}}function tr(o,e,r){let t=r.initialDeps??[],a;function n(){var d,c,i,s;let f;r.key&&((d=r.debug)!=null&&d.call(r))&&(f=Date.now());const E=o();if(!(E.length!==t.length||E.some((x,h)=>t[h]!==x)))return a;t=E;let y;if(r.key&&((c=r.debug)!=null&&c.call(r))&&(y=Date.now()),a=e(...E),r.key&&((i=r.debug)!=null&&i.call(r))){const x=Math.round((Date.now()-f)*100)/100,h=Math.round((Date.now()-y)*100)/100,S=h/16,w=(N,L)=>{for(N=String(N);N.length<L;)N=" "+N;return N};console.info(`%c⏱ ${w(h,5)} /${w(x,5)} ms`,`
|
|
109
|
+
*/const hn=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],xt=Ae("x",hn);function xo({error:o,centered:e=!1}){return o?d.jsxDEV("div",{className:ie("bg-red-50 border border-red-200 text-red-700 px-4 py-3 rounded-md",e&&"text-center"),children:d.jsxDEV("p",{className:"flex items-center gap-2",children:[d.jsxDEV(sn,{size:ua.icon.small},void 0,!1,{fileName:"/frontend/src/importer/components/Errors/index.tsx",lineNumber:9,columnNumber:9},this),o.toString()]},void 0,!0,{fileName:"/frontend/src/importer/components/Errors/index.tsx",lineNumber:8,columnNumber:7},this)},void 0,!1,{fileName:"/frontend/src/importer/components/Errors/index.tsx",lineNumber:7,columnNumber:5},this):null}function xn({steps:o,current:e,hide:r,skipHeader:t}){if(r)return null;const a=o.filter(l=>!l.disabled),n=o.slice(0,e+1).filter(l=>!l.disabled).length-1;return d.jsxDEV("div",{className:"w-full flex items-center justify-center h-10 px-4 py-2",children:d.jsxDEV("div",{className:"flex items-center",children:a.map((l,s)=>{const c=s===n,i=s<n;return d.jsxDEV("div",{className:"flex items-center",children:[d.jsxDEV("div",{className:ie("flex items-center gap-2 transition-all duration-300",c&&"scale-105"),children:[d.jsxDEV("div",{className:ie("relative w-6 h-6 rounded-full flex items-center justify-center text-xs font-semibold transition-all duration-300",c&&"bg-blue-600 text-white shadow-md",i&&"bg-blue-600 text-white",!c&&!i&&"bg-slate-100 border-2 border-slate-300 text-slate-500"),children:[c&&d.jsxDEV("span",{className:"absolute inset-0 rounded-full bg-blue-600 animate-ping opacity-25"},void 0,!1,{fileName:"/frontend/src/importer/components/Stepper/index.tsx",lineNumber:33,columnNumber:21},this),d.jsxDEV("span",{className:"relative",children:i?d.jsxDEV(eo,{className:"w-3.5 h-3.5 stroke-[2.5]"},void 0,!1,{fileName:"/frontend/src/importer/components/Stepper/index.tsx",lineNumber:37,columnNumber:23},this):s+1},void 0,!1,{fileName:"/frontend/src/importer/components/Stepper/index.tsx",lineNumber:35,columnNumber:19},this)]},void 0,!0,{fileName:"/frontend/src/importer/components/Stepper/index.tsx",lineNumber:25,columnNumber:17},this),d.jsxDEV("span",{className:ie("text-xs tracking-wide transition-all duration-300",c&&"text-slate-900 font-semibold",i&&"text-slate-700 font-medium",!c&&!i&&"text-slate-400"),children:l.label},void 0,!1,{fileName:"/frontend/src/importer/components/Stepper/index.tsx",lineNumber:45,columnNumber:17},this)]},void 0,!0,{fileName:"/frontend/src/importer/components/Stepper/index.tsx",lineNumber:20,columnNumber:15},this),s<a.length-1&&d.jsxDEV("div",{className:"mx-4 w-16 h-0.5 rounded-full overflow-hidden bg-slate-200",children:d.jsxDEV("div",{className:ie("h-full bg-gradient-to-r from-blue-600 to-blue-400 transition-all duration-500",i?"w-full":"w-0")},void 0,!1,{fileName:"/frontend/src/importer/components/Stepper/index.tsx",lineNumber:58,columnNumber:19},this)},void 0,!1,{fileName:"/frontend/src/importer/components/Stepper/index.tsx",lineNumber:57,columnNumber:17},this)]},s,!0,{fileName:"/frontend/src/importer/components/Stepper/index.tsx",lineNumber:19,columnNumber:13},this)})},void 0,!1,{fileName:"/frontend/src/importer/components/Stepper/index.tsx",lineNumber:13,columnNumber:7},this)},void 0,!1,{fileName:"/frontend/src/importer/components/Stepper/index.tsx",lineNumber:12,columnNumber:5},this)}const yo=o=>typeof o=="boolean"?`${o}`:o===0?"0":o,vo=nt,yt=(o,e)=>r=>{var t;if(e?.variants==null)return vo(o,r?.class,r?.className);const{variants:a,defaultVariants:n}=e,l=Object.keys(a).map(i=>{const f=r?.[i],T=n?.[i];if(f===null)return null;const w=yo(f)||yo(T);return a[i][w]}),s=r&&Object.entries(r).reduce((i,f)=>{let[T,w]=f;return w===void 0||(i[T]=w),i},{}),c=e==null||(t=e.compoundVariants)===null||t===void 0?void 0:t.reduce((i,f)=>{let{class:T,className:w,...y}=f;return Object.entries(y).every(v=>{let[x,E]=v;return Array.isArray(E)?E.includes({...n,...s}[x]):{...n,...s}[x]===E})?[...i,T,w]:i},[]);return vo(o,l,c,r?.class,r?.className)},yn=yt("inline-flex items-center justify-center whitespace-nowrap rounded-lg text-sm font-medium cursor-pointer transition-colors duration-200 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",{variants:{variant:{default:"bg-blue-600 text-white shadow hover:bg-blue-700 focus-visible:ring-blue-500",destructive:"bg-red-600 text-white shadow hover:bg-red-700 focus-visible:ring-red-500",outline:"border border-gray-300 bg-white text-gray-700 hover:bg-gray-50 focus-visible:ring-gray-500",secondary:"bg-gray-100 text-gray-900 hover:bg-gray-200 focus-visible:ring-gray-500",ghost:"hover:bg-gray-100 hover:text-gray-900 focus-visible:ring-gray-500",link:"text-blue-600 underline-offset-4 hover:underline hover:text-blue-700"},size:{default:"h-10 px-6 py-2",sm:"h-9 rounded-md px-4 text-xs",lg:"h-12 rounded-lg px-8 text-base",icon:"h-10 w-10"}},defaultVariants:{variant:"default",size:"default"}}),vt=Re(({className:o,variant:e,size:r,isLoading:t,type:a,children:n,...l},s)=>{const i=typeof window<"u"&&document.querySelector('[data-theme="dark"]')&&e?{default:"dark:bg-blue-500 dark:hover:bg-blue-600",outline:"dark:border-gray-600 dark:bg-gray-800 dark:text-gray-200 dark:hover:bg-gray-700",secondary:"dark:bg-gray-700 dark:text-gray-100 dark:hover:bg-gray-600",ghost:"dark:hover:bg-gray-800 dark:hover:text-gray-100",link:"dark:text-blue-400 dark:hover:text-blue-300"}[e]:"";return d.jsxDEV("button",{type:a,className:ie(yn({variant:e,size:r,className:o}),i),ref:s,disabled:t||l.disabled,...l,children:[t&&d.jsxDEV("svg",{className:"mr-2 h-4 w-4 animate-spin",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",children:[d.jsxDEV("circle",{className:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"4"},void 0,!1,{fileName:"/frontend/src/importer/components/ui/button.tsx",lineNumber:84,columnNumber:13},void 0),d.jsxDEV("path",{className:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"},void 0,!1,{fileName:"/frontend/src/importer/components/ui/button.tsx",lineNumber:92,columnNumber:13},void 0)]},void 0,!0,{fileName:"/frontend/src/importer/components/ui/button.tsx",lineNumber:78,columnNumber:11},void 0),n]},void 0,!0,{fileName:"/frontend/src/importer/components/ui/button.tsx",lineNumber:67,columnNumber:7},void 0)});vt.displayName="Button";const qe=vt,vn=yt("relative w-full rounded-lg border p-4 [&>svg~*]:pl-7 [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground",{variants:{variant:{default:"bg-background text-foreground",destructive:"border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive"}},defaultVariants:{variant:"default"}}),_t=Re(({className:o,variant:e,...r},t)=>d.jsxDEV("div",{ref:t,role:"alert",className:ie(vn({variant:e}),o),...r},void 0,!1,{fileName:"/frontend/src/importer/components/ui/alert.tsx",lineNumber:27,columnNumber:3},void 0));_t.displayName="Alert";const wt=_t,kt=Re(({className:o,...e},r)=>d.jsxDEV("h5",{ref:r,className:ie("mb-1 font-medium leading-none tracking-tight",o),...e},void 0,!1,{fileName:"/frontend/src/importer/components/ui/alert.tsx",lineNumber:42,columnNumber:3},void 0));kt.displayName="AlertTitle";const _n=kt,Nt=Re(({className:o,...e},r)=>d.jsxDEV("div",{ref:r,className:ie("text-sm [&_p]:leading-relaxed",o),...e},void 0,!1,{fileName:"/frontend/src/importer/components/ui/alert.tsx",lineNumber:56,columnNumber:3},void 0));Nt.displayName="AlertDescription";const Et=Nt,_o=({content:o,children:e,delayDuration:r=200,side:t="top",className:a})=>{const[n,l]=h.useState(!1),s=h.useRef(),c=()=>{s.current=setTimeout(()=>{l(!0)},r)},i=()=>{s.current&&clearTimeout(s.current),l(!1)};h.useEffect(()=>()=>{s.current&&clearTimeout(s.current)},[]);const f={top:"bottom-full left-1/2 -translate-x-1/2 mb-2",bottom:"top-full left-1/2 -translate-x-1/2 mt-2",left:"right-full top-1/2 -translate-y-1/2 mr-2",right:"left-full top-1/2 -translate-y-1/2 ml-2"};return d.jsxDEV("div",{className:"relative inline-block",onMouseEnter:c,onMouseLeave:i,onFocus:c,onBlur:i,children:[e,n&&d.jsxDEV("div",{className:ie("absolute z-50 px-3 py-1.5 text-sm","bg-gray-900 text-white rounded-md","pointer-events-none whitespace-nowrap","animate-in fade-in-0 zoom-in-95",f[t],a),children:o},void 0,!1,{fileName:"/frontend/src/importer/components/ui/tooltip.tsx",lineNumber:64,columnNumber:9},void 0)]},void 0,!0,{fileName:"/frontend/src/importer/components/ui/tooltip.tsx",lineNumber:55,columnNumber:5},void 0)},wn=Re(({children:o,asChild:e,...r},t)=>d.jsxDEV("div",{ref:t,...r,children:o},void 0,!1,{fileName:"/frontend/src/importer/components/ui/tooltip.tsx",lineNumber:88,columnNumber:3},void 0));wn.displayName="TooltipTrigger";const kn=Re(({children:o,className:e,sideOffset:r,...t},a)=>d.jsxDEV("div",{ref:a,className:e,...t,children:o},void 0,!1,{fileName:"/frontend/src/importer/components/ui/tooltip.tsx",lineNumber:96,columnNumber:3},void 0));kn.displayName="TooltipContent";const Je={typography:{title:"text-xl font-semibold text-gray-900",subtitle:"text-sm text-gray-600",label:"text-sm font-medium text-gray-700",body:"text-sm text-gray-900",caption:"text-xs text-gray-500"},spacing:{section:"mb-4"},layout:{header:"px-6 py-4 bg-white",content:"flex-1 overflow-auto",footer:"px-6 py-4 bg-white flex justify-between items-center",container:"flex flex-col h-full"},components:{card:"border border-gray-200 rounded-lg bg-white",input:"w-full px-3 py-2 text-sm border border-gray-300 rounded focus:outline-none focus:ring-2 focus:ring-blue-500",table:"min-w-full border-collapse",tableHeader:"bg-gray-50 border-b-2 border-gray-200",tableRow:"border-b border-gray-200 hover:bg-gray-50"}},Oe=Je;({...Je.typography},{...Je.typography}),{...Je.typography},{...Je.components},{...Je.typography},{...Je.typography};function hr({title:o,subtitle:e,children:r,headerContent:t,footerContent:a,showHeader:n=!0,showFooter:l=!0,className:s,contentClassName:c}){return d.jsxDEV("div",{className:ie(Oe.layout.container,s),children:[n&&(o||t)&&d.jsxDEV("div",{className:Oe.layout.header,children:[o&&d.jsxDEV("div",{children:[d.jsxDEV("h2",{className:Oe.typography.title,children:o},void 0,!1,{fileName:"/frontend/src/importer/components/StepLayout/index.tsx",lineNumber:40,columnNumber:15},this),e&&d.jsxDEV("p",{className:ie(Oe.typography.subtitle,"mt-1"),children:e},void 0,!1,{fileName:"/frontend/src/importer/components/StepLayout/index.tsx",lineNumber:42,columnNumber:17},this)]},void 0,!0,{fileName:"/frontend/src/importer/components/StepLayout/index.tsx",lineNumber:39,columnNumber:13},this),t]},void 0,!0,{fileName:"/frontend/src/importer/components/StepLayout/index.tsx",lineNumber:37,columnNumber:9},this),d.jsxDEV("div",{className:ie(Oe.layout.content,!c&&"px-6 py-4",c),children:r},void 0,!1,{fileName:"/frontend/src/importer/components/StepLayout/index.tsx",lineNumber:53,columnNumber:7},this),l&&a&&d.jsxDEV("div",{className:Oe.layout.footer,children:a},void 0,!1,{fileName:"/frontend/src/importer/components/StepLayout/index.tsx",lineNumber:63,columnNumber:9},this)]},void 0,!0,{fileName:"/frontend/src/importer/components/StepLayout/index.tsx",lineNumber:34,columnNumber:5},this)}const St=Re(({className:o,type:e,...r},t)=>d.jsxDEV("input",{type:e,className:ie("flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",o),ref:t,...r},void 0,!1,{fileName:"/frontend/src/importer/components/ui/input.tsx",lineNumber:14,columnNumber:7},void 0));St.displayName="Input";const Nn=St,Ct=Re(({className:o,checked:e,onCheckedChange:r,onChange:t,...a},n)=>{const[l,s]=h.useState(e||!1);h.useEffect(()=>{s(e||!1)},[e]);const c=i=>{if(!i.target)return;const f=i.target.checked;s(f),r?.(f),t?.(i)};return d.jsxDEV("div",{className:"relative inline-block",children:[d.jsxDEV("input",{type:"checkbox",ref:n,checked:l,onChange:c,className:ie("peer sr-only",o),...a},void 0,!1,{fileName:"/frontend/src/importer/components/ui/checkbox.tsx",lineNumber:34,columnNumber:9},void 0),d.jsxDEV("div",{className:ie("h-4 w-4 shrink-0 rounded-sm border border-gray-300 bg-white","peer-checked:bg-blue-600 peer-checked:border-blue-600","peer-focus-visible:outline-none peer-focus-visible:ring-2 peer-focus-visible:ring-blue-500 peer-focus-visible:ring-offset-2","peer-disabled:cursor-not-allowed peer-disabled:opacity-50","flex items-center justify-center cursor-pointer"),children:l&&d.jsxDEV(eo,{className:"h-3 w-3 text-white"},void 0,!1,{fileName:"/frontend/src/importer/components/ui/checkbox.tsx",lineNumber:53,columnNumber:13},void 0)},void 0,!1,{fileName:"/frontend/src/importer/components/ui/checkbox.tsx",lineNumber:45,columnNumber:9},void 0)]},void 0,!0,{fileName:"/frontend/src/importer/components/ui/checkbox.tsx",lineNumber:33,columnNumber:7},void 0)});Ct.displayName="Checkbox";const wo=Ct,ko={t:(o,e)=>{if(e){let r=o;return Object.entries(e).forEach(([t,a])=>{r=r.replace(new RegExp(`{{${t}}}`,"g"),String(a))}),r}return o},changeLanguage:()=>Promise.resolve(),addResourceBundle:()=>!0},rr=()=>({t:ko.t,i18n:ko});async function En(o,e,r,t,a,n,l){if(!o||o.trim().length<3)return{success:!1,changes:[],summary:"",error:"Please describe the transformation you want to apply"};if(!t||!a)return{success:!1,changes:[],summary:"",error:"Missing configuration"};try{const s=await fetch(`${t}/api/v1/imports/key/transform`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({importerKey:a,prompt:o,data:e,columnMapping:r,targetColumns:n,validationErrors:l})});if(!s.ok){if(s.status===429)return{success:!1,changes:[],summary:"",error:"Rate limit exceeded. Please try again later."};const i=await s.json().catch(()=>({}));return{success:!1,changes:[],summary:"",error:i.error||"Failed to generate transformations"}}const c=await s.json();return c.changes&&(c.changes=c.changes.map(i=>({...i,selected:i.selected!==!1}))),c}catch(s){return console.error("Transformation service error:",s),{success:!1,changes:[],summary:"",error:"Network error. Please check your connection."}}}function Sn(o){return o.filter(e=>e.selected).length}function Cn(o,e){return o.map((r,t)=>t===e?{...r,selected:!r.selected}:r)}function No(o,e){return o.map(r=>({...r,selected:e}))}const Vn=["Convert all dates to MM/DD/YYYY format","Convert all dates to YYYY-MM-DD format","Remove special characters from phone numbers","Format phone numbers as (XXX) XXX-XXXX","Capitalize all names","Convert text to uppercase","Convert text to lowercase","Trim extra spaces","Fill empty values with 'N/A'","Remove dollar signs and commas from amounts"],Dn=[{pattern:/date|datetime|timestamp/i,type:"date_format",title:"Date Format",description:"Invalid or inconsistent date formats"},{pattern:/email|e-mail/i,type:"email",title:"Email Validation",description:"Invalid or incomplete email addresses"},{pattern:/phone|mobile|tel/i,type:"phone",title:"Phone Numbers",description:"Invalid or incomplete phone numbers"},{pattern:/required|missing|empty|blank/i,type:"required",title:"Required Fields",description:"Missing required values"},{pattern:/number|numeric|integer|decimal/i,type:"number",title:"Number Format",description:"Invalid number formats"},{pattern:/length|characters|min|max/i,type:"length",title:"Text Length",description:"Text length validation errors"},{pattern:/url|link|website/i,type:"url",title:"URL Format",description:"Invalid URL formats"},{pattern:/unique|duplicate/i,type:"unique",title:"Duplicate Values",description:"Duplicate values in unique fields"}];function jn(o){const e=o.toLowerCase();for(const r of Dn)if(r.pattern.test(e))return{type:r.type,title:r.title,description:r.description};return{type:"other",title:"Other Validation",description:"General validation errors"}}function Tn(o,e){const r=String(e||"empty");switch(o){case"date_format":return{before:r,after:"MM/DD/YYYY format"};case"email":return{before:r.includes("@")?r:`${r}@`,after:r.includes("@")?"valid email":`${r}@example.com`};case"phone":return{before:r,after:"(555) 555-1234"};case"required":return{before:"empty",after:"Default value"};case"number":return{before:r,after:"Valid number"};case"url":return{before:r,after:"https://example.com"};default:return}}function On(o){const e=new Map;return o.forEach(r=>{const{type:t,title:a,description:n}=jn(r.message);e.has(t)||e.set(t,{type:t,title:a,description:n,count:0,columns:[],errors:[],selected:!0});const l=e.get(t);l.errors.push(r),l.count++,l.columns.includes(r.columnKey)||l.columns.push(r.columnKey),!l.example&&r.value!==void 0&&(l.example=Tn(t,r.value))}),Array.from(e.values()).sort((r,t)=>t.count-r.count)}function Rn(o){return o.filter(e=>e.selected).flatMap(e=>e.errors)}function Mn(o,e){return o.map(r=>r.type===e?{...r,selected:!r.selected}:r)}function In(o,e){return o.map(r=>({...r,selected:e}))}function Sr(o){return o.filter(e=>e.selected).reduce((e,r)=>e+r.count,0)}const Vt=.9;function Eo(o){return o>=Vt?"high":"medium"}function zn({isOpen:o,onClose:e,data:r,columnMapping:t,backendUrl:a,importerKey:n,validationErrors:l,onApplyTransformations:s}){const{t:c}=rr(),i=h.useRef(null),f=h.useRef(null),[T,w]=h.useState(""),[y,v]=h.useState([]),[x,E]=h.useState(""),[k,j]=h.useState(null),[F,de]=h.useState(!1),[me,K]=h.useState(!1),[$,b]=h.useState([]),u=l&&l.length>0;h.useEffect(()=>{if(u&&o){const g=On(l);b(g)}},[l,u,o]),h.useEffect(()=>{const g=I=>{I.key==="Escape"&&o&&e()};return o&&(document.addEventListener("keydown",g),f.current?.focus()),()=>{document.removeEventListener("keydown",g)}},[o,e]);const p=h.useCallback(async g=>{const I=g||T;if(!I.trim()){j("Please describe the transformation");return}de(!0),j(null),v([]),E("");try{const Q=await En(I,r,t,a,n,void 0,l);Q.success&&Q.changes.length>0?(v(Q.changes),E(Q.summary)):Q.error?j(Q.error):j("No transformations generated. Try a different description.")}catch{j("Failed to generate transformations")}finally{de(!1)}},[T,r,t,a,n,l]),C=h.useCallback(()=>{if(Rn($).length===0){j("Please select at least one error category to fix");return}const Q=`fix validation errors: ${$.filter(z=>z.selected).map(z=>z.title.toLowerCase()).join(", ")}`;p(Q)},[$,p]),_=h.useCallback(g=>{b(I=>Mn(I,g))},[]),O=h.useCallback(g=>{b(I=>In(I,g))},[]),Z=h.useCallback(g=>{const I=g?No(y,!0):y.filter(Q=>Q.selected);s(I),e()},[y,s,e]),H=h.useCallback(g=>{v(I=>Cn(I,g))},[]),te=h.useCallback(g=>{v(I=>No(I,g))},[]),A=h.useCallback(g=>{w(g),K(!1),i.current?.focus()},[]),N=h.useCallback(()=>{w(""),v([]),E(""),j(null),K(!1),e()},[e]),W=h.useCallback((g,I)=>{(g.key==="Enter"||g.key===" ")&&(g.preventDefault(),I())},[]),se=Sn(y),m=y.length>0,D=h.useMemo(()=>y.filter(g=>g.confidence<Vt).length,[y]);return o?d.jsxDEV(d.Fragment,{children:[d.jsxDEV("div",{className:"absolute inset-0 bg-slate-900/50 dark:bg-slate-900/70 z-[100] transition-opacity duration-200",onClick:N,style:{pointerEvents:o?"auto":"none",opacity:o?1:0}},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:232,columnNumber:7},this),d.jsxDEV("div",{ref:f,tabIndex:-1,role:"dialog","aria-modal":"true","aria-labelledby":"modal-title",className:`absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 bg-white dark:bg-slate-800 shadow-2xl z-[101] flex flex-col rounded-xl border border-slate-200 dark:border-slate-700 transition-all duration-200 ${o?"opacity-100 scale-100":"opacity-0 scale-95 pointer-events-none"}`,style:{width:"min(480px, calc(100% - 48px))",maxHeight:"calc(100% - 96px)"},onClick:g=>g.stopPropagation(),children:[d.jsxDEV("div",{className:"flex items-center justify-between px-6 py-4 border-b border-slate-200 dark:border-slate-700",children:[d.jsxDEV("h2",{id:"modal-title",className:"text-lg font-semibold text-slate-900 dark:text-slate-100",children:c("Fix Errors")},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:259,columnNumber:11},this),d.jsxDEV("button",{onClick:N,className:"p-1.5 hover:bg-slate-100 dark:hover:bg-slate-700 rounded-lg transition-colors","aria-label":"Close panel",children:d.jsxDEV(xt,{className:"h-5 w-5 text-slate-500 dark:text-slate-400"},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:267,columnNumber:13},this)},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:262,columnNumber:11},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:258,columnNumber:9},this),d.jsxDEV("div",{className:"flex-1 overflow-y-auto",children:d.jsxDEV("div",{className:"px-6 py-5 space-y-4",children:[u&&!m&&$.length>0&&d.jsxDEV(d.Fragment,{children:d.jsxDEV("div",{children:[d.jsxDEV("div",{className:"mb-4",children:[d.jsxDEV("h3",{className:"text-base font-medium text-slate-900 dark:text-slate-100",children:[Sr($)," validation ",Sr($)===1?"error":"errors"]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:280,columnNumber:19},this),d.jsxDEV("p",{className:"text-sm text-slate-500 dark:text-slate-400 mt-1",children:"Select errors to fix automatically"},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:283,columnNumber:19},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:279,columnNumber:17},this),d.jsxDEV("div",{className:"space-y-1.5 mb-4",children:$.map(g=>d.jsxDEV("div",{role:"button",tabIndex:0,className:ie("flex items-center gap-3 py-3 px-3 cursor-pointer rounded-lg transition-all",g.selected?"bg-blue-50 border border-blue-200 dark:bg-blue-900/20 dark:border-blue-800":"hover:bg-slate-50 dark:hover:bg-slate-800 border border-transparent"),onClick:()=>_(g.type),onKeyDown:I=>W(I,()=>_(g.type)),children:[d.jsxDEV(wo,{checked:g.selected,onCheckedChange:()=>_(g.type),onClick:I=>I.stopPropagation(),className:"flex-shrink-0"},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:304,columnNumber:23},this),d.jsxDEV("div",{className:"flex-1",children:[d.jsxDEV("div",{className:"text-sm text-slate-900 dark:text-slate-100",children:g.title},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:311,columnNumber:25},this),d.jsxDEV("p",{className:"text-xs text-slate-500 dark:text-slate-400",children:[g.count," ",g.count===1?"error":"errors"," in ",g.columns.join(", ")]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:314,columnNumber:25},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:310,columnNumber:23},this)]},g.type,!0,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:291,columnNumber:21},this))},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:289,columnNumber:17},this),d.jsxDEV("div",{className:"flex items-center gap-2 mb-4",children:[d.jsxDEV("button",{type:"button",className:"text-sm text-blue-600 hover:text-blue-700 dark:text-blue-400 dark:hover:text-blue-300 hover:underline transition-colors",onClick:()=>O(!0),children:"Select all"},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:324,columnNumber:19},this),d.jsxDEV("span",{className:"text-slate-300 dark:text-slate-600",children:"|"},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:331,columnNumber:19},this),d.jsxDEV("button",{type:"button",className:"text-sm text-blue-600 hover:text-blue-700 dark:text-blue-400 dark:hover:text-blue-300 hover:underline transition-colors",onClick:()=>O(!1),children:"Clear"},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:332,columnNumber:19},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:323,columnNumber:17},this),d.jsxDEV("div",{className:"flex justify-end",children:d.jsxDEV("button",{type:"button",className:"px-4 py-2.5 text-sm font-medium bg-blue-600 text-white rounded-lg hover:bg-blue-700 transition-colors disabled:opacity-50 disabled:cursor-not-allowed shadow-sm",onClick:C,disabled:F||Sr($)===0,children:c(F?"Analyzing...":`Fix ${Sr($)} selected`)},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:343,columnNumber:19},this)},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:342,columnNumber:17},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:277,columnNumber:15},this)},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:276,columnNumber:13},this),!u&&!m&&d.jsxDEV("div",{children:[d.jsxDEV("div",{className:"flex gap-2 mb-2",children:[d.jsxDEV(Nn,{ref:i,placeholder:c("Describe the transformation (e.g., 'Convert dates to MM/DD/YYYY')"),value:T,onChange:g=>w(g.target.value),onKeyPress:g=>g.key==="Enter"&&p(),disabled:F,className:"h-10"},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:362,columnNumber:17},this),d.jsxDEV(qe,{type:"button",onClick:()=>p(),isLoading:F,disabled:F,children:[d.jsxDEV(fn,{className:"mr-2 h-4 w-4"},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:379,columnNumber:19},this),c(F?"Generating":"Generate")]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:373,columnNumber:17},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:361,columnNumber:15},this),d.jsxDEV("button",{className:"text-xs text-blue-600 hover:underline",onClick:()=>K(!me),children:c(me?"Hide examples":"Show examples")},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:385,columnNumber:15},this),me&&d.jsxDEV("div",{className:"mt-2 p-3 bg-slate-50 dark:bg-slate-900 rounded-lg",children:[d.jsxDEV("p",{className:"text-xs mb-2 font-medium text-slate-600 dark:text-slate-300",children:c("Click to use:")},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:394,columnNumber:19},this),d.jsxDEV("div",{className:"flex flex-wrap gap-1.5",children:Vn.slice(0,5).map((g,I)=>d.jsxDEV("span",{className:"px-2.5 py-1 text-xs bg-slate-200 dark:bg-slate-700 text-slate-700 dark:text-slate-300 rounded-md cursor-pointer hover:bg-blue-100 hover:text-blue-700 dark:hover:bg-slate-600 transition-colors",onClick:()=>A(g),children:g},I,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:399,columnNumber:23},this))},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:397,columnNumber:19},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:393,columnNumber:17},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:360,columnNumber:13},this),k&&d.jsxDEV(wt,{variant:"destructive",children:d.jsxDEV(Et,{children:k},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:416,columnNumber:15},this)},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:415,columnNumber:13},this),F&&d.jsxDEV("div",{className:"text-center py-8",children:[d.jsxDEV("div",{className:"inline-block animate-spin rounded-full h-8 w-8 border-b-2 border-blue-500"},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:423,columnNumber:15},this),d.jsxDEV("p",{className:"mt-3 font-medium text-slate-700 dark:text-slate-300",children:c("Generating fixes...")},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:424,columnNumber:15},this),d.jsxDEV("p",{className:"text-sm text-slate-500 dark:text-slate-400 mt-1",children:c("Analyzing errors and suggesting corrections")},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:427,columnNumber:15},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:422,columnNumber:13},this),m&&!F&&d.jsxDEV(d.Fragment,{children:d.jsxDEV("div",{children:[d.jsxDEV("div",{className:"mb-4",children:[d.jsxDEV("h3",{className:"text-base font-medium text-slate-900 dark:text-slate-100",children:[y.length," ",y[0]?.columnKey||""," ",y.length===1?"value":"values"," will be transformed"]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:439,columnNumber:19},this),d.jsxDEV("p",{className:"text-sm text-slate-500 dark:text-slate-400 mt-1",children:"Review and select the changes you want to apply"},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:442,columnNumber:19},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:438,columnNumber:17},this),d.jsxDEV("div",{className:"mb-3",children:d.jsxDEV("button",{type:"button",className:"text-sm text-blue-600 hover:text-blue-700 dark:text-blue-400 dark:hover:text-blue-300",onClick:()=>te(se!==y.length),children:se===y.length?c("Deselect all"):c("Select all")},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:449,columnNumber:19},this)},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:448,columnNumber:17},this),d.jsxDEV("div",{children:d.jsxDEV("div",{className:"space-y-1",children:[y.slice(0,100).map((g,I)=>d.jsxDEV("div",{role:"button",tabIndex:0,className:ie("flex items-center gap-3 py-2.5 px-3 cursor-pointer transition-all rounded-lg",g.selected?"bg-blue-50 border border-blue-200 dark:bg-blue-900/20 dark:border-blue-800":"hover:bg-slate-50 dark:hover:bg-slate-800 border border-transparent"),onClick:()=>H(I),onKeyDown:Q=>W(Q,()=>H(I)),children:[d.jsxDEV(wo,{checked:g.selected,onCheckedChange:()=>H(I),onClick:Q=>Q.stopPropagation(),className:"flex-shrink-0"},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:475,columnNumber:25},this),d.jsxDEV("div",{className:"flex-1 min-w-0",children:[d.jsxDEV("div",{className:"flex items-center gap-2 text-sm flex-wrap",children:[d.jsxDEV("span",{className:"line-through text-gray-400 truncate max-w-[120px]",title:String(g.oldValue||""),children:String(g.oldValue||"(empty)")},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:484,columnNumber:29},this),d.jsxDEV(Ja,{size:14,className:"text-gray-400 flex-shrink-0"},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:487,columnNumber:29},this),d.jsxDEV("span",{className:ie("font-medium truncate max-w-[200px]",Eo(g.confidence)==="high"?"text-green-600 dark:text-green-400":"text-amber-600 dark:text-amber-400"),title:String(g.newValue),children:String(g.newValue)},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:488,columnNumber:29},this),Eo(g.confidence)==="medium"&&d.jsxDEV("span",{title:`Confidence: ${Math.round(g.confidence*100)}%`,"aria-label":`Low confidence: ${Math.round(g.confidence*100)}%`,children:d.jsxDEV(ht,{size:14,className:"text-amber-500 flex-shrink-0","aria-hidden":"true"},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:502,columnNumber:33},this)},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:498,columnNumber:31},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:483,columnNumber:27},this),d.jsxDEV("div",{className:"text-xs text-slate-500 dark:text-slate-400 mt-1",children:["Row ",g.rowIndex+1,", ",g.columnKey]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:511,columnNumber:27},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:481,columnNumber:25},this)]},I,!0,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:462,columnNumber:23},this)),y.length>100&&d.jsxDEV("p",{className:"text-sm text-slate-500 dark:text-slate-400 text-center py-2",children:c(`Showing first 100 of ${y.length} changes`)},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:519,columnNumber:23},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:460,columnNumber:19},this)},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:459,columnNumber:17},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:436,columnNumber:15},this)},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:435,columnNumber:13},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:273,columnNumber:11},this)},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:272,columnNumber:9},this),m&&d.jsxDEV("div",{className:"border-t border-slate-200 dark:border-slate-700 px-6 py-4 bg-white dark:bg-slate-800 rounded-b-xl",children:d.jsxDEV("div",{className:"flex justify-between items-center",children:[d.jsxDEV("div",{children:[d.jsxDEV("span",{className:"text-lg font-semibold text-slate-900 dark:text-slate-100",children:se},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:536,columnNumber:17},this),d.jsxDEV("span",{className:"text-sm text-slate-500 dark:text-slate-400 ml-1.5",children:[se===1?"change":"changes"," selected"]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:537,columnNumber:17},this),D>0&&d.jsxDEV("span",{className:"text-sm text-amber-600 dark:text-amber-400 ml-2",children:["(",D," need review)"]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:541,columnNumber:19},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:535,columnNumber:15},this),d.jsxDEV("button",{type:"button",className:"px-4 py-2.5 text-sm font-medium bg-blue-600 text-white rounded-lg hover:bg-blue-700 transition-colors disabled:opacity-50 disabled:cursor-not-allowed shadow-sm",onClick:()=>Z(se===y.length),disabled:se===0,children:c("Apply")},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:546,columnNumber:15},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:534,columnNumber:13},this)},void 0,!1,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:533,columnNumber:11},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:242,columnNumber:7},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/components/TransformPanel.tsx",lineNumber:230,columnNumber:5},this):null}function An(o,e){const r=String(o||"").trim();if(e.validators)for(const t of e.validators){const a=Pn(r,t,e);if(a)return a}if(r)switch(e.type){case"email":if(!/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(r))return"Invalid email address";break;case"number":if(isNaN(Number(r)))return"Must be a number";break;case"phone":if(r.replace(/\D/g,"").length<10)return"Invalid phone number (must be at least 10 digits)";break;case"date":const a=new Date(r);if(isNaN(a.getTime()))return"Invalid date format";break;case"select":if(e.options){const n=r.toLowerCase();if(!e.options.map(s=>s.toLowerCase()).includes(n))return`Must be one of: ${e.options.join(", ")}`}break}return null}function Pn(o,e,r){switch(e.type){case"required":if(!o||o==="")return e.message||`${r.label} is required`;break;case"unique":break;case"regex":if(o&&!new RegExp(e.pattern).test(o))return e.message||`${r.label} format is invalid`;break;case"min":const t=Number(o);if(!isNaN(t)&&t<e.value)return e.message||`${r.label} must be at least ${e.value}`;break;case"max":const a=Number(o);if(!isNaN(a)&&a>e.value)return e.message||`${r.label} must be at most ${e.value}`;break;case"min_length":if(o&&o.length<e.value)return e.message||`${r.label} must be at least ${e.value} characters`;break;case"max_length":if(o&&o.length>e.value)return e.message||`${r.label} must be at most ${e.value} characters`;break}return null}const Ln=["trim","uppercase","lowercase","remove_special_chars","normalize_phone","normalize_date"];function $n(o){return Ln.includes(o)}function fr(o,e){if(!e||e.length===0)return o;let r=o;for(const t of e)r=Fn(r,t);return r}function Fn(o,e){const r=String(o||"");switch(e.type){case"trim":return r.trim();case"uppercase":return r.toUpperCase();case"lowercase":return r.toLowerCase();case"capitalize":return r.split(" ").map(n=>n.charAt(0).toUpperCase()+n.slice(1).toLowerCase()).join(" ");case"remove_special_chars":return r.replace(/[^a-zA-Z0-9\s]/g,"");case"normalize_phone":const t=r.replace(/\D/g,"");return t.length===10?`(${t.slice(0,3)}) ${t.slice(3,6)}-${t.slice(6)}`:t.length===11&&t[0]==="1"?`(${t.slice(1,4)}) ${t.slice(4,7)}-${t.slice(7)}`:r;case"normalize_date":let a=new Date(r);if(isNaN(a.getTime())){const n=r.split(/[-\/]/);n.length===3&&(a=new Date(`${n[2]}-${n[0].padStart(2,"0")}-${n[1].padStart(2,"0")}`),isNaN(a.getTime())&&(a=new Date(`${n[0]}-${n[1].padStart(2,"0")}-${n[2].padStart(2,"0")}`)))}if(!isNaN(a.getTime())){const n=e.format||"YYYY-MM-DD";return Zn(a,n)}return r;case"default":return r.trim()===""?e.value:r;case"replace":try{return r.replace(new RegExp(e.find,"g"),e.replace)}catch{return r.split(e.find).join(e.replace)}case"custom":try{return e.fn(o)}catch{return o}default:return o}}function Zn(o,e){const r=o.getFullYear(),t=String(o.getMonth()+1).padStart(2,"0"),a=String(o.getDate()).padStart(2,"0");return e.replace("YYYY",String(r)).replace("MM",t).replace("DD",a)}function Cr(o){if(!o||o.length===0)return{pre:[],post:[]};const e=[],r=[];return o.forEach(t=>{"stage"in t&&t.stage==="pre"?e.push(t):"stage"in t&&t.stage==="post"?r.push(t):$n(t.type)?e.push(t):r.push(t)}),{pre:e,post:r}}function tr(o,e,r){let t=r.initialDeps??[],a;function n(){var l,s,c,i;let f;r.key&&((l=r.debug)!=null&&l.call(r))&&(f=Date.now());const T=o();if(!(T.length!==t.length||T.some((v,x)=>t[x]!==v)))return a;t=T;let y;if(r.key&&((s=r.debug)!=null&&s.call(r))&&(y=Date.now()),a=e(...T),r.key&&((c=r.debug)!=null&&c.call(r))){const v=Math.round((Date.now()-f)*100)/100,x=Math.round((Date.now()-y)*100)/100,E=x/16,k=(j,F)=>{for(j=String(j);j.length<F;)j=" "+j;return j};console.info(`%c⏱ ${k(x,5)} /${k(v,5)} ms`,`
|
|
97
110
|
font-size: .6rem;
|
|
98
111
|
font-weight: bold;
|
|
99
|
-
color: hsl(${Math.max(0,Math.min(120-120*S,120))}deg 100% 31%);`,r?.key)}return(s=r?.onChange)==null||s.call(r,a),a}return n.updateDeps=d=>{t=d},n}function wo(o,e){if(o===void 0)throw new Error("Unexpected undefined");return o}const Vn=(o,e)=>Math.abs(o-e)<1.01,Ln=(o,e,r)=>{let t;return function(...a){o.clearTimeout(t),t=o.setTimeout(()=>e.apply(this,a),r)}},ko=o=>{const{offsetWidth:e,offsetHeight:r}=o;return{width:e,height:r}},Pn=o=>o,$n=o=>{const e=Math.max(o.startIndex-o.overscan,0),r=Math.min(o.endIndex+o.overscan,o.count-1),t=[];for(let a=e;a<=r;a++)t.push(a);return t},Fn=(o,e)=>{const r=o.scrollElement;if(!r)return;const t=o.targetWindow;if(!t)return;const a=d=>{const{width:c,height:i}=d;e({width:Math.round(c),height:Math.round(i)})};if(a(ko(r)),!t.ResizeObserver)return()=>{};const n=new t.ResizeObserver(d=>{const c=()=>{const i=d[0];if(i?.borderBoxSize){const s=i.borderBoxSize[0];if(s){a({width:s.inlineSize,height:s.blockSize});return}}a(ko(r))};o.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(c):c()});return n.observe(r,{box:"border-box"}),()=>{n.unobserve(r)}},So={passive:!0},Co=typeof window>"u"?!0:"onscrollend"in window,Zn=(o,e)=>{const r=o.scrollElement;if(!r)return;const t=o.targetWindow;if(!t)return;let a=0;const n=o.options.useScrollendEvent&&Co?()=>{}:Ln(t,()=>{e(a,!1)},o.options.isScrollingResetDelay),d=f=>()=>{const{horizontal:E,isRtl:v}=o.options;a=E?r.scrollLeft*(v&&-1||1):r.scrollTop,n(),e(a,f)},c=d(!0),i=d(!1);i(),r.addEventListener("scroll",c,So);const s=o.options.useScrollendEvent&&Co;return s&&r.addEventListener("scrollend",i,So),()=>{r.removeEventListener("scroll",c),s&&r.removeEventListener("scrollend",i)}},Bn=(o,e,r)=>{if(e?.borderBoxSize){const t=e.borderBoxSize[0];if(t)return Math.round(t[r.options.horizontal?"inlineSize":"blockSize"])}return o[r.options.horizontal?"offsetWidth":"offsetHeight"]},Wn=(o,{adjustments:e=0,behavior:r},t)=>{var a,n;const d=o+e;(n=(a=t.scrollElement)==null?void 0:a.scrollTo)==null||n.call(a,{[t.options.horizontal?"left":"top"]:d,behavior:r})};class qn{constructor(e){this.unsubs=[],this.scrollElement=null,this.targetWindow=null,this.isScrolling=!1,this.measurementsCache=[],this.itemSizeCache=new Map,this.pendingMeasuredCacheIndexes=[],this.scrollRect=null,this.scrollOffset=null,this.scrollDirection=null,this.scrollAdjustments=0,this.elementsCache=new Map,this.observer=(()=>{let r=null;const t=()=>r||(!this.targetWindow||!this.targetWindow.ResizeObserver?null:r=new this.targetWindow.ResizeObserver(a=>{a.forEach(n=>{const d=()=>{this._measureElement(n.target,n)};this.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(d):d()})}));return{disconnect:()=>{var a;(a=t())==null||a.disconnect(),r=null},observe:a=>{var n;return(n=t())==null?void 0:n.observe(a,{box:"border-box"})},unobserve:a=>{var n;return(n=t())==null?void 0:n.unobserve(a)}}})(),this.range=null,this.setOptions=r=>{Object.entries(r).forEach(([t,a])=>{typeof a>"u"&&delete r[t]}),this.options={debug:!1,initialOffset:0,overscan:1,paddingStart:0,paddingEnd:0,scrollPaddingStart:0,scrollPaddingEnd:0,horizontal:!1,getItemKey:Pn,rangeExtractor:$n,onChange:()=>{},measureElement:Bn,initialRect:{width:0,height:0},scrollMargin:0,gap:0,indexAttribute:"data-index",initialMeasurementsCache:[],lanes:1,isScrollingResetDelay:150,enabled:!0,isRtl:!1,useScrollendEvent:!1,useAnimationFrameWithResizeObserver:!1,...r}},this.notify=r=>{var t,a;(a=(t=this.options).onChange)==null||a.call(t,this,r)},this.maybeNotify=tr(()=>(this.calculateRange(),[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]),r=>{this.notify(r)},{key:"maybeNotify",debug:()=>this.options.debug,initialDeps:[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]}),this.cleanup=()=>{this.unsubs.filter(Boolean).forEach(r=>r()),this.unsubs=[],this.observer.disconnect(),this.scrollElement=null,this.targetWindow=null},this._didMount=()=>()=>{this.cleanup()},this._willUpdate=()=>{var r;const t=this.options.enabled?this.options.getScrollElement():null;if(this.scrollElement!==t){if(this.cleanup(),!t){this.maybeNotify();return}this.scrollElement=t,this.scrollElement&&"ownerDocument"in this.scrollElement?this.targetWindow=this.scrollElement.ownerDocument.defaultView:this.targetWindow=((r=this.scrollElement)==null?void 0:r.window)??null,this.elementsCache.forEach(a=>{this.observer.observe(a)}),this._scrollToOffset(this.getScrollOffset(),{adjustments:void 0,behavior:void 0}),this.unsubs.push(this.options.observeElementRect(this,a=>{this.scrollRect=a,this.maybeNotify()})),this.unsubs.push(this.options.observeElementOffset(this,(a,n)=>{this.scrollAdjustments=0,this.scrollDirection=n?this.getScrollOffset()<a?"forward":"backward":null,this.scrollOffset=a,this.isScrolling=n,this.maybeNotify()}))}},this.getSize=()=>this.options.enabled?(this.scrollRect=this.scrollRect??this.options.initialRect,this.scrollRect[this.options.horizontal?"width":"height"]):(this.scrollRect=null,0),this.getScrollOffset=()=>this.options.enabled?(this.scrollOffset=this.scrollOffset??(typeof this.options.initialOffset=="function"?this.options.initialOffset():this.options.initialOffset),this.scrollOffset):(this.scrollOffset=null,0),this.getFurthestMeasurement=(r,t)=>{const a=new Map,n=new Map;for(let d=t-1;d>=0;d--){const c=r[d];if(a.has(c.lane))continue;const i=n.get(c.lane);if(i==null||c.end>i.end?n.set(c.lane,c):c.end<i.end&&a.set(c.lane,!0),a.size===this.options.lanes)break}return n.size===this.options.lanes?Array.from(n.values()).sort((d,c)=>d.end===c.end?d.index-c.index:d.end-c.end)[0]:void 0},this.getMeasurementOptions=tr(()=>[this.options.count,this.options.paddingStart,this.options.scrollMargin,this.options.getItemKey,this.options.enabled],(r,t,a,n,d)=>(this.pendingMeasuredCacheIndexes=[],{count:r,paddingStart:t,scrollMargin:a,getItemKey:n,enabled:d}),{key:!1}),this.getMeasurements=tr(()=>[this.getMeasurementOptions(),this.itemSizeCache],({count:r,paddingStart:t,scrollMargin:a,getItemKey:n,enabled:d},c)=>{if(!d)return this.measurementsCache=[],this.itemSizeCache.clear(),[];this.measurementsCache.length===0&&(this.measurementsCache=this.options.initialMeasurementsCache,this.measurementsCache.forEach(f=>{this.itemSizeCache.set(f.key,f.size)}));const i=this.pendingMeasuredCacheIndexes.length>0?Math.min(...this.pendingMeasuredCacheIndexes):0;this.pendingMeasuredCacheIndexes=[];const s=this.measurementsCache.slice(0,i);for(let f=i;f<r;f++){const E=n(f),v=this.options.lanes===1?s[f-1]:this.getFurthestMeasurement(s,f),y=v?v.end+this.options.gap:t+a,x=c.get(E),h=typeof x=="number"?x:this.options.estimateSize(f),S=y+h,w=v?v.lane:f%this.options.lanes;s[f]={index:f,start:y,size:h,end:S,key:E,lane:w}}return this.measurementsCache=s,s},{key:"getMeasurements",debug:()=>this.options.debug}),this.calculateRange=tr(()=>[this.getMeasurements(),this.getSize(),this.getScrollOffset(),this.options.lanes],(r,t,a,n)=>this.range=r.length>0&&t>0?Un({measurements:r,outerSize:t,scrollOffset:a,lanes:n}):null,{key:"calculateRange",debug:()=>this.options.debug}),this.getVirtualIndexes=tr(()=>{let r=null,t=null;const a=this.calculateRange();return a&&(r=a.startIndex,t=a.endIndex),this.maybeNotify.updateDeps([this.isScrolling,r,t]),[this.options.rangeExtractor,this.options.overscan,this.options.count,r,t]},(r,t,a,n,d)=>n===null||d===null?[]:r({startIndex:n,endIndex:d,overscan:t,count:a}),{key:"getVirtualIndexes",debug:()=>this.options.debug}),this.indexFromElement=r=>{const t=this.options.indexAttribute,a=r.getAttribute(t);return a?parseInt(a,10):(console.warn(`Missing attribute name '${t}={index}' on measured element.`),-1)},this._measureElement=(r,t)=>{const a=this.indexFromElement(r),n=this.measurementsCache[a];if(!n)return;const d=n.key,c=this.elementsCache.get(d);c!==r&&(c&&this.observer.unobserve(c),this.observer.observe(r),this.elementsCache.set(d,r)),r.isConnected&&this.resizeItem(a,this.options.measureElement(r,t,this))},this.resizeItem=(r,t)=>{const a=this.measurementsCache[r];if(!a)return;const n=this.itemSizeCache.get(a.key)??a.size,d=t-n;d!==0&&((this.shouldAdjustScrollPositionOnItemSizeChange!==void 0?this.shouldAdjustScrollPositionOnItemSizeChange(a,d,this):a.start<this.getScrollOffset()+this.scrollAdjustments)&&(this.options.debug&&console.info("correction",d),this._scrollToOffset(this.getScrollOffset(),{adjustments:this.scrollAdjustments+=d,behavior:void 0})),this.pendingMeasuredCacheIndexes.push(a.index),this.itemSizeCache=new Map(this.itemSizeCache.set(a.key,t)),this.notify(!1))},this.measureElement=r=>{if(!r){this.elementsCache.forEach((t,a)=>{t.isConnected||(this.observer.unobserve(t),this.elementsCache.delete(a))});return}this._measureElement(r,void 0)},this.getVirtualItems=tr(()=>[this.getVirtualIndexes(),this.getMeasurements()],(r,t)=>{const a=[];for(let n=0,d=r.length;n<d;n++){const c=r[n],i=t[c];a.push(i)}return a},{key:"getVirtualItems",debug:()=>this.options.debug}),this.getVirtualItemForOffset=r=>{const t=this.getMeasurements();if(t.length!==0)return wo(t[Ct(0,t.length-1,a=>wo(t[a]).start,r)])},this.getOffsetForAlignment=(r,t,a=0)=>{const n=this.getSize(),d=this.getScrollOffset();t==="auto"&&(t=r>=d+n?"end":"start"),t==="center"?r+=(a-n)/2:t==="end"&&(r-=n);const c=this.getTotalSize()+this.options.scrollMargin-n;return Math.max(Math.min(c,r),0)},this.getOffsetForIndex=(r,t="auto")=>{r=Math.max(0,Math.min(r,this.options.count-1));const a=this.measurementsCache[r];if(!a)return;const n=this.getSize(),d=this.getScrollOffset();if(t==="auto")if(a.end>=d+n-this.options.scrollPaddingEnd)t="end";else if(a.start<=d+this.options.scrollPaddingStart)t="start";else return[d,t];const c=t==="end"?a.end+this.options.scrollPaddingEnd:a.start-this.options.scrollPaddingStart;return[this.getOffsetForAlignment(c,t,a.size),t]},this.isDynamicMode=()=>this.elementsCache.size>0,this.scrollToOffset=(r,{align:t="start",behavior:a}={})=>{a==="smooth"&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."),this._scrollToOffset(this.getOffsetForAlignment(r,t),{adjustments:void 0,behavior:a})},this.scrollToIndex=(r,{align:t="auto",behavior:a}={})=>{a==="smooth"&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."),r=Math.max(0,Math.min(r,this.options.count-1));let n=0;const d=10,c=s=>{if(!this.targetWindow)return;const f=this.getOffsetForIndex(r,s);if(!f){console.warn("Failed to get offset for index:",r);return}const[E,v]=f;this._scrollToOffset(E,{adjustments:void 0,behavior:a}),this.targetWindow.requestAnimationFrame(()=>{const y=this.getScrollOffset(),x=this.getOffsetForIndex(r,v);if(!x){console.warn("Failed to get offset for index:",r);return}Vn(x[0],y)||i(v)})},i=s=>{this.targetWindow&&(n++,n<d?(this.options.debug&&console.info("Schedule retry",n,d),this.targetWindow.requestAnimationFrame(()=>c(s))):console.warn(`Failed to scroll to index ${r} after ${d} attempts.`))};c(t)},this.scrollBy=(r,{behavior:t}={})=>{t==="smooth"&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."),this._scrollToOffset(this.getScrollOffset()+r,{adjustments:void 0,behavior:t})},this.getTotalSize=()=>{var r;const t=this.getMeasurements();let a;if(t.length===0)a=this.options.paddingStart;else if(this.options.lanes===1)a=((r=t[t.length-1])==null?void 0:r.end)??0;else{const n=Array(this.options.lanes).fill(null);let d=t.length-1;for(;d>=0&&n.some(c=>c===null);){const c=t[d];n[c.lane]===null&&(n[c.lane]=c.end),d--}a=Math.max(...n.filter(c=>c!==null))}return Math.max(a-this.options.scrollMargin+this.options.paddingEnd,0)},this._scrollToOffset=(r,{adjustments:t,behavior:a})=>{this.options.scrollToFn(r,{behavior:a,adjustments:t},this)},this.measure=()=>{this.itemSizeCache=new Map,this.notify(!1)},this.setOptions(e)}}const Ct=(o,e,r,t)=>{for(;o<=e;){const a=(o+e)/2|0,n=r(a);if(n<t)o=a+1;else if(n>t)e=a-1;else return a}return o>0?o-1:0};function Un({measurements:o,outerSize:e,scrollOffset:r,lanes:t}){const a=o.length-1,n=i=>o[i].start;if(o.length<=t)return{startIndex:0,endIndex:a};let d=Ct(0,a,n,r),c=d;if(t===1)for(;c<a&&o[c].end<r+e;)c++;else if(t>1){const i=Array(t).fill(0);for(;c<a&&i.some(f=>f<r+e);){const f=o[c];i[f.lane]=f.end,c++}const s=Array(t).fill(r+e);for(;d>=0&&s.some(f=>f>=r);){const f=o[d];s[f.lane]=f.start,d--}d=Math.max(0,d-d%t),c=Math.min(a,c+(t-1-c%t))}return{startIndex:d,endIndex:c}}const jo=typeof document<"u"?nr.useLayoutEffect:nr.useEffect;function Hn(o){const e=nr.useReducer(()=>({}),{})[1],r={...o,onChange:(a,n)=>{var d;n?Xo.flushSync(e):e(),(d=o.onChange)==null||d.call(o,a,n)}},[t]=nr.useState(()=>new qn(r));return t.setOptions(r),jo(()=>t._didMount(),[]),jo(()=>t._willUpdate()),t}function Gn(o){return Hn({observeElementRect:Fn,observeElementOffset:Zn,scrollToFn:Wn,...o})}function Yn({headers:o,rows:e,renderCell:r,rowHeight:t=56,overscan:a=5,stickyHeader:n=!0,stickyFirstColumn:d=!0,getRowClassName:c,headerRowIndex:i=0,includedColumns:s}){const f=p.useRef(null),E=p.useRef(null),v=Gn({count:e.length,getScrollElement:()=>E.current,estimateSize:()=>t,overscan:a}),y=v.getVirtualItems(),x=d?60+o.length*200:o.length*200;return l.jsxs("div",{className:"flex-1 overflow-hidden relative",ref:f,children:[n&&l.jsx("div",{className:"bg-slate-50/80 border-b border-slate-200 sticky top-0 z-20 overflow-hidden",style:{minWidth:x},children:l.jsxs("div",{className:"flex",children:[d&&l.jsx("div",{className:"text-left px-6 py-3.5 text-xs font-semibold text-slate-500 uppercase tracking-wider bg-slate-50/80 border-r border-slate-200",style:{position:"sticky",left:0,zIndex:21,minWidth:"60px",width:"60px"},children:"#"}),o.map((h,S)=>l.jsx("div",{className:"text-left px-6 py-3.5 text-xs font-semibold text-slate-500 uppercase tracking-wider bg-slate-50/80",style:{minWidth:"200px",flex:"0 0 200px"},children:h},S))]})}),l.jsx("div",{ref:E,className:"overflow-auto",style:{height:n?"calc(100% - 56px)":"100%",maxHeight:"500px"},children:l.jsx("div",{style:{height:`${v.getTotalSize()}px`,width:"100%",position:"relative",minWidth:x},children:y.map(h=>{const S=e[h.index],w=h.index,N=w+i+1,L=c?.(S,w)||"";return l.jsxs("div",{className:ce("flex border-b border-slate-100 hover:bg-blue-50/50 transition-colors",L),style:{position:"absolute",top:0,left:0,width:"100%",height:`${h.size}px`,transform:`translateY(${h.start}px)`},children:[d&&l.jsx("div",{className:"px-6 py-3 text-sm text-slate-600 border-r border-slate-200 flex items-center",style:{position:"sticky",left:0,zIndex:5,backgroundColor:L.includes("bg-red-50")?"#FEF2F2":"#F8FAFC",minWidth:"60px",width:"60px"},children:l.jsx("span",{children:N+1})}),s.map((le,ge)=>l.jsx("div",{className:"px-6 py-3",style:{minWidth:"200px",flex:"0 0 200px"},children:r(S,le,w)},ge))]},h.key)})})})]})}function Kn({columns:o,schema:e,data:r,columnMapping:t,selectedHeaderRow:a,onSuccess:n,onCancel:d,isSubmitting:c,backendUrl:i,importerKey:s,filterInvalidRows:f,disableOnInvalidRows:E}){const[v,y]=p.useState([]),[x,h]=p.useState("all"),[S,w]=p.useState(!1),[N,L]=p.useState(100),[le,ge]=p.useState(!1),K=p.useRef(null),V=a||0,u=r.rows[V],[b,g]=p.useState(()=>r.rows.slice(V+1)),C=p.useMemo(()=>Object.entries(t).filter(([M,R])=>R.include).map(([M])=>parseInt(M)),[t]),_=p.useMemo(()=>C.map(M=>String(u.values[M])),[C,u]),I=p.useRef(!0),$=p.useMemo(()=>{const M=new Map;return Object.entries(t).forEach(([R,z])=>{if(z.include){const j=z,D=j.id||j.key;D&&M.set(D,parseInt(R))}}),M},[t]),Y=p.useCallback((M,R,z)=>{if(e){const j={};C.forEach(T=>{const Q=M.values[T],se=t[T];if(!se||!se.include)return;const ee=se,ae=ee.id||ee.key;if(!ae)return;const re=o?.find(Ee=>Ee.id===ae);if(!re)return;const{pre:Se}=jr(re.transformations),X=fr(Q,Se),xe=re.validators?.some(Ee=>Ee.type==="required")??!1;let Re=X;if(re.type==="number"){const Ee=Number(X);Re=X===""?xe?"":void 0:isNaN(Ee)?X:Ee}else if(re.type==="date")if(X==="")Re=xe?"":void 0;else{const Ee=new Date(X);Re=isNaN(Ee.getTime())?X:Ee}else X===""&&!xe&&(Re=void 0);j[ae]=Re});const D=e.safeParse(j);D.success||D.error.issues.forEach(T=>{const Q=T.path[0];if(!o?.find(ae=>ae.id===Q))return;const ee=$.get(Q);ee!=null&&z.push({rowIndex:R+V+1,columnIndex:ee,message:T.message})})}else C.forEach(j=>{const D=M.values[j],T=t[j];if(!T||!T.include)return;const Q=T,se=Q.id||Q.key,ee=o?.find(X=>X.id===se);if(!ee)return;const{pre:ae}=jr(ee.transformations),re=fr(D,ae),Se=Rn(re,ee);Se&&z.push({rowIndex:R+V+1,columnIndex:j,message:Se})})},[C,t,o,e,V,$]);p.useEffect(()=>{K.current&&(K.current.scrollTop=0)},[]),p.useEffect(()=>{if(!o)return;const M=o.map(z=>z.id);Object.entries(t).filter(([z,j])=>{if(!j.include)return!1;const D=j;return!M.includes(D.id||D.key||"")}).length>0},[o,t]);const oe=p.useCallback(()=>{if(!I.current||!o)return;ge(!0),L(0);const M=[],R=b.length,z=Math.min(50,R);for(let j=0;j<z;j++){const D=b[j];Y(D,j,M)}if(y(M),L(Math.floor(z/R*100)),R>z){let j=z;const D=100,T=()=>{const Q=Math.min(j+D,R);for(let ee=j;ee<Q;ee++){const ae=b[ee];Y(ae,ee,M)}j=Q;const se=Math.floor(j/R*100);L(se),y([...M]),j<R?setTimeout(T,0):(ge(!1),I.current=!1)};setTimeout(T,0)}else ge(!1),I.current=!1},[b,Y]);p.useEffect(()=>{b.length>0&&I.current&&oe()},[b,oe]);const A=p.useCallback((M,R,z)=>{b[M]?.values[R]!==z&&(g(j=>{const D=[...j];return D[M]&&D[M].values&&(D[M]={...D[M],values:[...D[M].values]},D[M].values[R]=z),I.current=!0,D}),I.current=!0)},[b]),k=p.useMemo(()=>o?b.map(M=>{const R={...M},z=[...M.values];return C.forEach(j=>{const D=t[j];if(!D||!D.include)return;const T=D,Q=T.id||T.key,se=o.find(ae=>ae.id===Q);if(!se||!se.transformations)return;const{pre:ee}=jr(se.transformations);ee.length>0&&(z[j]=fr(M.values[j],ee))}),R.values=z,R}):b,[b,o,t,C]),{visibleRows:F,validCount:be,errorCount:H}=p.useMemo(()=>{const M=new Set(v.map(D=>D.rowIndex-V-1)),R=k.filter((D,T)=>!M.has(T)),z=k.filter((D,T)=>M.has(T));let j;return x==="valid"?j=R:x==="error"?j=z:j=k,{visibleRows:j,validCount:R.length,errorCount:z.length}},[k,x,v,V]),B=p.useMemo(()=>{const M=new Set,R=new Set;return v.forEach(z=>{const j=z.rowIndex-V-1;j>=0&&j<k.length&&(M.add(j),R.add(k[j]?.index||-1))}),{indices:M,objects:Array.from(R).filter(z=>z!==-1),count:M.size}},[v,V,k]),m=M=>{if(M.preventDefault(),E&&v.length>0)return;const z=(f?b.filter((j,D)=>!B.indices.has(D)):b).map(j=>{const D={...j},T=j.values.map((Q,se)=>{if(!C.includes(se))return Q;const ee=t[se],ae=ee;if(!ee||!(ae.id||ae.key))return Q;const re=o?.find(Ee=>Ee.id===(ae.id||ae.key));if(!re||!re.transformations)return Q;const{pre:Se,post:X}=jr(re.transformations),xe=fr(Q,Se);return fr(xe,X)});return D.values=T,D});n({...r,rows:[u,...z]})},Z=l.jsxs(l.Fragment,{children:[l.jsx(Ue,{variant:"outline",onClick:d,disabled:c,size:"default",children:"Back"}),l.jsx(Ue,{isLoading:c,disabled:le||E&&v.length>0,size:"default",variant:"default",onClick:m,children:le?"Validating...":"Submit"})]}),te=l.jsxs("div",{className:"",children:[le&&l.jsxs("div",{className:ze.spacing.section,children:[l.jsxs("div",{className:"flex justify-between mb-1",children:[l.jsx("span",{className:ze.typography.body,children:"Validating data..."}),l.jsxs("span",{className:ze.typography.body,children:[N,"%"]})]}),l.jsx("div",{className:"w-full bg-slate-200 rounded-full h-2",children:l.jsx("div",{className:"bg-blue-600 h-2 rounded-full transition-all duration-300",style:{width:`${N}%`}})})]}),f&&B.count>0&&l.jsxs(xt,{className:ze.spacing.section,children:[l.jsx(ft,{className:"h-4 w-4"}),l.jsx(mn,{children:"Invalid Rows Will Be Filtered"}),l.jsx(vt,{children:`${B.count} ${B.count===1?"row":"rows"} with validation errors will be excluded from the import. You can fix the errors to include these rows.`})]}),!le&&l.jsx("div",{className:"py-3",children:l.jsxs("div",{className:"flex justify-between items-center",children:[l.jsxs("div",{className:"flex gap-1",children:[l.jsxs("button",{type:"button",className:ce("px-4 py-2 rounded-lg transition-all",ze.typography.body,x==="all"?"bg-slate-100 text-slate-900 border border-slate-300 font-medium shadow-sm":"text-slate-500 hover:text-slate-700 hover:bg-slate-50 border border-transparent"),onClick:()=>h("all"),children:["All ",l.jsx("span",{className:ce("ml-2 px-2 py-0.5 rounded-full text-xs font-medium",x==="all"?"bg-white text-slate-700 shadow-sm":"bg-slate-200 text-slate-600"),children:b.length})]}),l.jsxs("button",{type:"button",className:ce("px-4 py-2 rounded-lg transition-all",ze.typography.body,x==="valid"?"bg-slate-100 text-slate-900 border border-slate-300 font-medium shadow-sm":"text-slate-500 hover:text-slate-700 hover:bg-slate-50 border border-transparent"),onClick:()=>h("valid"),children:["Valid ",l.jsx("span",{className:ce("ml-2 px-2 py-0.5 rounded-full text-xs font-medium",x==="valid"?"bg-emerald-100 text-emerald-700":"bg-emerald-50 text-emerald-600"),children:be})]}),l.jsxs("button",{type:"button",className:ce("px-4 py-2 rounded-lg transition-all",ze.typography.body,x==="error"?"bg-slate-100 text-slate-900 border border-slate-300 font-medium shadow-sm":"text-slate-500 hover:text-slate-700 hover:bg-slate-50 border border-transparent"),onClick:()=>h("error"),children:["Error ",l.jsx("span",{className:ce("ml-2 px-2 py-0.5 rounded-full text-xs font-medium",x==="error"?"bg-red-100 text-red-700":"bg-red-50 text-red-600"),children:H})]})]}),l.jsx("div",{className:"flex items-center space-x-2",children:i&&s&&H>0&&l.jsx(ho,{content:"Use AI to automatically fix validation errors",children:l.jsxs(Ue,{size:"sm",onClick:()=>w(!0),variant:"default",className:"shadow-sm",children:[l.jsx(sn,{className:"mr-2 h-4 w-4"}),"Fix errors"]})})})]})})]});return l.jsx(hr,{title:"Validate Data",subtitle:"Review and correct any errors in your data before importing.",headerContent:te,footerContent:Z,contentClassName:"px-6 py-4 overflow-visible",children:l.jsxs("form",{onSubmit:m,className:"h-full",children:[l.jsx("div",{className:"h-full overflow-x-auto border border-slate-200 rounded-xl bg-gradient-to-b from-white to-slate-50/50 shadow-sm",ref:K,children:F.length>0?l.jsx(Yn,{headers:_,rows:F,headerRowIndex:V,includedColumns:C,rowHeight:56,overscan:5,stickyHeader:!0,stickyFirstColumn:!0,getRowClassName:(M,R)=>{const z=R+V+1;return v.some(D=>D.rowIndex===z)?"bg-red-50/70 hover:bg-red-100/70":""},renderCell:(M,R,z)=>{const j=M.values[R],D=z+V+1,T=v.find(Q=>Q.rowIndex===D&&Q.columnIndex===R);return l.jsxs("div",{className:"relative",children:[l.jsx("input",{type:"text",value:String(j||""),onChange:Q=>{const se=k.indexOf(M);se!==-1&&Q.target&&A(se,R,Q.target.value)},tabIndex:0,className:`w-full px-3 py-2 text-sm border rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500/40 focus:border-blue-400 transition-colors ${T?"border-red-400 bg-red-50/70":"border-slate-200 hover:border-slate-300 bg-white"}`}),T&&l.jsx(ho,{content:T.message,children:l.jsx("span",{className:"absolute right-2 top-1/2 transform -translate-y-1/2",children:l.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",children:[l.jsx("circle",{cx:"8",cy:"8",r:"7",fill:"#DC2626"}),l.jsx("path",{d:"M8 4.5V9",stroke:"white",strokeWidth:"1.5",strokeLinecap:"round"}),l.jsx("circle",{cx:"8",cy:"11.5",r:"0.75",fill:"white"})]})})})]})}}):l.jsx("div",{className:"p-8 text-center",children:l.jsx("span",{className:ce(ze.typography.body,"text-slate-400"),children:x==="error"?"No rows with errors found":x==="valid"?"No valid rows found":"No data to display"})})}),i&&s&&l.jsx(In,{isOpen:S,onClose:()=>w(!1),data:b,columnMapping:t,backendUrl:i,importerKey:s,validationErrors:v.map(M=>{const R=M.rowIndex-V-1,j=t[M.columnIndex];return{rowIndex:R,columnKey:j?.id||j?.key||"",message:M.message,value:b[R]?.values[M.columnIndex]}}),onApplyTransformations:M=>{const R=[...b];M.forEach(z=>{const{rowIndex:j,columnIndex:D,newValue:T}=z;if(D===void 0){console.warn(`Skipping change for row ${j}: columnIndex is undefined`);return}if(j<0||j>=R.length){console.warn(`Skipping change: rowIndex ${j} out of bounds (dataRows has ${R.length} rows)`);return}R[j]&&R[j].values&&(R[j]===b[j]&&(R[j]={...R[j],values:[...R[j].values]}),R[j].values[D]=T)}),g(R),I.current=!0,w(!1)}})]})})}function Xn(o,e){p.useEffect(()=>{},[o,e])}function Jn(o){return/^#([0-9A-F]{3}){1,2}$/i.test(o)}function jt(o){const e=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(o);return e?{r:parseInt(e[1],16),g:parseInt(e[2],16),b:parseInt(e[3],16)}:null}function Nt(o,e,r){return"#"+((1<<24)+(o<<16)+(e<<8)+r).toString(16).slice(1)}function gr(o,e){const r=jt(o);if(!r)return o;const t=e/100,a=Math.min(255,Math.round(r.r+(255-r.r)*t)),n=Math.min(255,Math.round(r.g+(255-r.g)*t)),d=Math.min(255,Math.round(r.b+(255-r.b)*t));return Nt(a,n,d)}function mr(o,e){const r=jt(o);if(!r)return o;const t=1-e/100,a=Math.round(r.r*t),n=Math.round(r.g*t),d=Math.round(r.b*t);return Nt(a,n,d)}function Qn(o){return{50:gr(o,95),100:gr(o,90),200:gr(o,80),300:gr(o,60),400:gr(o,40),500:o,600:mr(o,10),700:mr(o,20),800:mr(o,30),900:mr(o,40)}}function ed(o,e){const r=Qn(o);if(!e){console.warn("applyColorPalette: No target element provided, skipping style application to prevent leakage");return}e.style.setProperty("--color-primary",o),e.style.setProperty("--color-primary-50",r[50]),e.style.setProperty("--color-primary-100",r[100]),e.style.setProperty("--color-primary-200",r[200]),e.style.setProperty("--color-primary-300",r[300]),e.style.setProperty("--color-primary-400",r[400]),e.style.setProperty("--color-primary-500",r[500]),e.style.setProperty("--color-primary-600",r[600]),e.style.setProperty("--color-primary-700",r[700]),e.style.setProperty("--color-primary-800",r[800]),e.style.setProperty("--color-primary-900",r[900]),e.style.setProperty("--color-primary-hover",r[700]),e.style.setProperty("--color-primary-focus",r[600]),e.style.setProperty("--color-primary-disabled",r[200])}function rd(o,e){const{returnType:r="object",escapePercent:t=!1}=e||{};if(typeof o>"u")return r==="string"?"":{};let a={};if(typeof o=="string")try{a=JSON.parse(o)}catch{return r==="string"?"":{}}else a=o;if(t)for(const n in a)typeof a[n]=="string"&&(a[n]=a[n].replace(/%(?!25)/g,"%25"));return r==="string"?JSON.stringify(a):a}const od=(o,e)=>rd(e,{returnType:"string",escapePercent:!0});function td(o,e=0,r){const[t,a]=p.useState(e),n=p.useMemo(()=>o[t],[t,o]);return{steps:o,current:t,step:n,setCurrent:a,skipHeader:r}}function ad(o,e){const r=()=>{if(typeof window>"u")return e;try{const d=window.localStorage.getItem(o);return d?JSON.parse(d):e}catch{return e}},[t,a]=p.useState(r());return p.useEffect(()=>{a(r())},[o]),[t,d=>{try{const c=d instanceof Function?d(t):d;a(c),typeof window<"u"&&window.localStorage.setItem(o,JSON.stringify(c))}catch{}}]}const ve={Upload:0,RowSelection:1,MapColumns:2,Validation:3,Complete:4},nd=(o,e)=>e&&o===ve.RowSelection?ve.MapColumns:o,dd=o=>[{label:"Upload",id:0},{label:"Configure",id:1},{label:"Validation",id:2}];function ld(o,e,r=!1){const{t}=rr(),a=dd().map(h=>({...h,label:t(h.label)})),n=o===ve.MapColumns?1:o===ve.Validation?2:o===ve.Complete?3:0,d=td(a,n,e),c=r?[null,()=>{}]:ad("tf_steps",""),[i,s]=c,[f,E]=p.useState(o),v=h=>{const S=h!==void 0?h:Math.max(0,f-1);x(S)},y=(h=0)=>{h=h||f+1||0;const S=nd(h,e);x(S)},x=h=>{E(h),s(h);const S=h===ve.Upload?0:h===ve.MapColumns?1:h===ve.Validation?2:h===ve.Complete?3:h;d.setCurrent(S)};return p.useEffect(()=>{if(r||i===null)return;const h=i||0,S=h===ve.Upload?0:h===ve.MapColumns?1:h===ve.Validation?2:h===ve.Complete?3:h;d.setCurrent(S),E(h)},[i,r]),{currentStep:r?f:i??f,setStep:x,goBack:v,goNext:y,stepper:d,stepId:d?.step?.id,setStorageStep:s}}function cd({reload:o,close:e,isModal:r,rowCount:t}){const{t:a}=rr();return l.jsx(hr,{title:a("Import Complete"),subtitle:t?a("{{count}} rows imported successfully",{count:t}):a("Your data has been imported successfully"),showFooter:!1,contentClassName:"px-6 py-12",children:l.jsxs("div",{className:"flex flex-col items-center justify-center text-center",children:[l.jsx("div",{className:"w-20 h-20 rounded-full flex items-center justify-center mb-6",style:{background:"linear-gradient(to bottom right, #34d399, #059669)",boxShadow:"0 10px 15px -3px rgba(167, 243, 208, 0.4), 0 4px 6px -4px rgba(167, 243, 208, 0.4)"},children:l.jsx(Jr,{className:"w-10 h-10 text-white",strokeWidth:3})}),l.jsxs(Ue,{type:"button",variant:"outline",onClick:o,className:"mt-4",children:[l.jsx(an,{className:"mr-2 h-4 w-4"}),a("Upload another file")]})]})})}const Et=Te(({className:o,direction:e="row",align:r,justify:t,wrap:a,gap:n,style:d,...c},i)=>{const s=ce("flex",{"flex-row":e==="row","flex-col":e==="column","flex-row-reverse":e==="row-reverse","flex-col-reverse":e==="column-reverse","items-start":r==="start","items-center":r==="center","items-end":r==="end","items-stretch":r==="stretch","items-baseline":r==="baseline","justify-start":t==="start","justify-center":t==="center","justify-end":t==="end","justify-between":t==="between","justify-around":t==="around","justify-evenly":t==="evenly","flex-wrap":a},o),E={...n?{gap:typeof n=="number"?`${n*.25}rem`:n}:{},...d||{}};return l.jsx("div",{ref:i,className:s,style:E,...c})});Et.displayName="Flex";const Ot=Et,It=Te(({className:o,...e},r)=>l.jsx("div",{ref:r,className:ce(o),...e}));It.displayName="Box";const Rt=It,zt=Te(({align:o="center",...e},r)=>l.jsx("div",{ref:r,children:l.jsx(Ot,{direction:"row",align:o,...e})}));zt.displayName="HStack";const sd=zt,id=Te((o,e)=>l.jsx("div",{ref:e,children:l.jsx(Ot,{direction:"column",...o})}));id.displayName="VStack";const Tt=Te(({className:o,...e},r)=>l.jsx("div",{ref:r,className:ce(o),...e}));Tt.displayName="Text";const Dr=Tt,Mt=Te(({className:o,placeholder:e,options:r=[],onValueChange:t,onChange:a,...n},d)=>{const c=f=>{a?.(f),f.target&&t?.(f.target.value)},i=f=>{f.stopPropagation(),n.onFocus?.(f)},s=f=>{f.stopPropagation(),n.onClick?.(f)};return l.jsxs("select",{ref:d,className:ce("flex h-9 w-full items-center justify-between rounded-lg border border-gray-300 bg-white px-3 py-2 text-sm text-gray-900 transition-all duration-200","hover:border-gray-400 hover:bg-gray-50","focus:outline-none focus:border-blue-500 focus:bg-white focus:ring-2 focus:ring-blue-500/20","disabled:cursor-not-allowed disabled:opacity-50 disabled:bg-gray-50",o),value:n.value,defaultValue:n.defaultValue,...n,onChange:c,onFocus:i,onClick:s,children:[e&&l.jsx("option",{value:"",className:"text-gray-500",children:e}),r.map(f=>l.jsx("option",{value:f.value,disabled:f.disabled,className:"text-gray-900",children:f.label},f.value))]})});Mt.displayName="Select";const bd=Mt;function ud({rows:o=5,className:e}){return l.jsx("div",{className:ce("overflow-x-auto border border-gray-200 rounded-lg",e),children:l.jsxs("div",{className:"min-w-[600px]",children:[l.jsxs("div",{className:"flex gap-4 py-3 px-6 border-b bg-gray-50",children:[l.jsx("div",{className:"w-[30%]",children:l.jsx("div",{className:"h-4 bg-gray-200 rounded w-16 animate-pulse"})}),l.jsx("div",{className:"w-[35%]",children:l.jsx("div",{className:"h-4 bg-gray-200 rounded w-24 animate-pulse"})}),l.jsx("div",{className:"w-[35%]",children:l.jsx("div",{className:"h-4 bg-gray-200 rounded w-16 animate-pulse"})})]}),Array.from({length:o}).map((r,t)=>l.jsxs("div",{className:"flex items-center gap-4 py-4 px-6 border-b border-gray-100 last:border-b-0",children:[l.jsxs("div",{className:"w-[30%] flex items-center gap-2",children:[l.jsx("div",{className:"h-5 w-5 bg-gray-200 rounded-full animate-pulse flex-shrink-0"}),l.jsx("div",{className:"h-4 bg-gray-200 rounded w-3/4 animate-pulse"})]}),l.jsx("div",{className:"w-[35%]",children:l.jsx("div",{className:"h-9 bg-gray-200 rounded w-full max-w-[250px] animate-pulse"})}),l.jsx("div",{className:"w-[35%]",children:l.jsx("div",{className:"h-4 bg-gray-100 rounded w-2/3 animate-pulse"})})]},t))]})})}function fd(o,e){const r=o.split(" "),t=e.split(" ");return r.reduce((n,d)=>{const c=t.reduce((i,s)=>{const f=gd(d,s);return f>i?f:i},0);return c>n?c:n},0)}function gd(o,e){let r=o,t=e;o.length<e.length&&(r=e,t=o);const a=r.length;return a===0?1:(a-md(r,t))/parseFloat(a.toString())}function md(o,e){o=o.toLowerCase(),e=e.toLowerCase();const r=new Array(e.length+1);for(let t=0;t<=o.length;t++){let a=t;for(let n=0;n<=e.length;n++)if(t===0)r[n]=n;else if(n>0){let d=r[n-1];o.charAt(t-1)!==e.charAt(n-1)&&(d=Math.min(Math.min(d,a),r[n])+1),r[n-1]=a,a=d}t>0&&(r[e.length]=a)}return r[e.length]}async function pd(o,e,r,t){if(!r||!t||!o.length||!e.length)return[];try{const a=await fetch(`${r}/api/v1/imports/key/mapping-suggestions`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({importerKey:t,uploadColumns:o,templateColumns:e.map(d=>({key:d.id,name:d.label,required:d.validators?.some(c=>c.type==="required")}))})});if(!a.ok)return[];const n=await a.json();return n.success&&Array.isArray(n.mappings)?n.mappings:[]}catch{return[]}}function hd({columns:o,data:e,onSuccess:r,onCancel:t,isSubmitting:a=!1,importerKey:n,backendUrl:d,isDemoMode:c=!1}){const{t:i}=rr(),s=0,[f,E]=p.useState({}),[v,y]=p.useState(null),[x,h]=p.useState(!1),[S,w]=p.useState(!1),N=p.useRef(!1);p.useMemo(()=>e.rows.slice(0,Math.min(5,e.rows.length)),[e.rows]);const L=p.useMemo(()=>e.rows[s]?e.rows[s].values:[],[e.rows]),le=p.useMemo(()=>L.map((_,I)=>({index:I,name:_,sample_data:e.rows.slice(s+1,s+4).map($=>$.values[I]).filter($=>$)})),[L,e.rows,s]),ge=_=>{const I=s+1;return e.rows.slice(I,I+3).map(Y=>Y.values[_]).filter(Y=>Y).join(", ")},K=o||[];p.useEffect(()=>{d&&n&&L.length>0&&K.length>0&&h(!0);const _={};L.forEach((I,$)=>{let Y={column:null,score:0};K.forEach(oe=>{const A=fd(I.toLowerCase().trim(),oe.label.toLowerCase().trim());A>Y.score&&A>.6&&(Y={column:oe,score:A})}),Y.column&&(_[$]={id:Y.column.id||"",label:Y.column.label,include:!0})}),E(_),(!d||!n)&&w(!0)},[L,K,d,n]),p.useEffect(()=>{(async()=>{if(!N.current){if(!le.length||!K.length||!d||!n){h(!1),w(!0);return}N.current=!0;try{const I=await pd(le,K,d,n);I.length>0&&E($=>{const Y={...$},oe=new Set(Object.values($).filter(k=>k.id).map(k=>k.id)),A=[...I].sort((k,F)=>F.confidence-k.confidence);for(const k of A){const F=$[k.uploadIndex],be=F?.id&&!F?.include;if(k.confidence>.7&&(!F?.id||be)&&!oe.has(k.templateKey)){const H=K.find(B=>B.id===k.templateKey);H&&(Y[k.uploadIndex]={id:k.templateKey,label:H.label,include:!0},oe.add(k.templateKey))}}return Y})}catch{}finally{h(!1),w(!0)}}})()},[le,K,d,n]);const V=(_,I)=>{const $={...f};if(Object.keys($).forEach(Y=>{$[parseInt(Y)].id===_&&delete $[parseInt(Y)]}),I!==""&&I!=="none"){const Y=parseInt(I),oe=K.find(A=>A.id===_);oe&&($[Y]={id:_,label:oe.label,include:!0})}E($)},u=_=>{const I=Object.entries(f).find(([$,Y])=>Y.id===_);return I?I[0]:""},b=p.useMemo(()=>K.filter(I=>I.validators?.some($=>$.type==="required")).every(I=>Object.values(f).some($=>$.id===I.id)),[K,f]),g=()=>{if(!b){y(i("Please map all required fields"));return}y(null),r(f,s)},C=l.jsxs(l.Fragment,{children:[!c&&t&&l.jsx(Ue,{variant:"outline",onClick:t,disabled:a,size:"default",children:i("Back")}),c&&l.jsx("div",{}),v&&l.jsx("div",{className:"flex-1 mx-4",children:l.jsx("div",{className:"bg-red-50 border border-red-200 rounded-lg px-4 py-2",children:l.jsx("span",{className:ce(ze.typography.body,"text-red-700"),children:v})})}),l.jsx(Ue,{onClick:g,isLoading:a,disabled:!b,size:"default",variant:"default",children:i("Continue")})]});return x?l.jsx(hr,{title:i("Configure Import"),subtitle:i("Analyzing your columns..."),footerContent:C,contentClassName:"px-6 py-4",children:l.jsx(ud,{rows:K.length||5})}):l.jsx(hr,{title:i("Configure Import"),subtitle:i("Map your CSV columns to the required fields"),footerContent:C,contentClassName:"px-6 py-4",children:l.jsx("div",{className:"overflow-x-auto border border-slate-200 rounded-xl bg-gradient-to-b from-white to-slate-50/50 shadow-sm",children:l.jsxs("table",{className:ce(ze.components.table,"min-w-[600px]"),children:[l.jsx("thead",{className:"bg-slate-50/80 border-b border-slate-200",children:l.jsxs("tr",{children:[l.jsx("th",{className:"text-left px-6 py-3.5 w-[30%]",children:l.jsx("span",{className:"text-xs font-semibold text-slate-500 uppercase tracking-wider",children:i("Fields")})}),l.jsx("th",{className:"text-left px-6 py-3.5 w-[35%]",children:l.jsx("span",{className:"text-xs font-semibold text-slate-500 uppercase tracking-wider",children:i("CSV Column")})}),l.jsx("th",{className:"text-left px-6 py-3.5 w-[35%]",children:l.jsx("span",{className:"text-xs font-semibold text-slate-500 uppercase tracking-wider",children:i("Preview")})})]})}),l.jsx("tbody",{children:K.map((_,I)=>{const $=u(_.id),Y=$!=="",oe=_.validators?.some(A=>A.type==="required");return l.jsxs("tr",{className:ce("border-b border-slate-100 transition-all duration-200","hover:bg-blue-50/50",S&&"mapping-row-animate"),style:S?{animationDelay:`${I*50}ms`}:void 0,children:[l.jsx("td",{className:"px-6 py-5",children:l.jsxs(sd,{className:"gap-2 items-center",children:[Y&&l.jsx(Xa,{className:"w-5 h-5 text-blue-500 flex-shrink-0 check-pulse"}),!Y&&oe&&l.jsx("div",{className:"w-5 h-5 rounded-full border-2 border-dashed border-slate-300 flex-shrink-0 flex items-center justify-center",children:l.jsx("div",{className:"w-1.5 h-1.5 rounded-full bg-slate-300"})}),!Y&&!oe&&l.jsx(Rt,{className:"w-5 h-5 flex-shrink-0"}),l.jsxs("span",{className:ze.typography.body,children:[_.label,oe&&l.jsx("span",{className:"text-red-500 ml-1",children:"*"})]})]})}),l.jsx("td",{className:"px-6 py-5",children:l.jsx(bd,{value:$,onValueChange:A=>V(_.id,A),placeholder:i("Select..."),className:"h-9 w-full max-w-[250px]",options:[{value:"none",label:"— None —"},...L.map((A,k)=>{const F=Object.keys(f).includes(k.toString())&&f[k].id!==_.id;return{value:k.toString(),label:F?`${A} (mapped)`:A,disabled:F}})]})}),l.jsx("td",{className:"px-6 py-5",children:$?l.jsx("div",{className:"flex flex-wrap gap-1.5 max-w-[320px]",children:ge(parseInt($)).split(", ").filter(Boolean).slice(0,3).map((A,k)=>l.jsx("span",{className:"inline-flex px-2 py-0.5 text-xs bg-slate-100 text-slate-600 rounded-md truncate max-w-[100px]",title:A,children:A},k))}):l.jsx("span",{className:"text-sm text-slate-400",children:"—"})})]},_.id)})})]})})})}function At({onFileSelect:o,accept:e={},disabled:r=!1,loading:t=!1,className:a="",children:n}){const[d,c]=p.useState(!1),i=p.useRef(null),s=Object.entries(e).flatMap(([w,N])=>[w,...N]).join(","),f=w=>Object.keys(e).length===0?!0:Object.entries(e).some(([N,L])=>{if(w.type===N)return!0;const le=`.${w.name.split(".").pop()?.toLowerCase()}`;return L.includes(le)}),E=w=>{f(w)&&o(w)},v=w=>{const N=w.target;N.files&&N.files[0]&&(E(N.files[0]),N.value="")},y=w=>{w.preventDefault(),w.stopPropagation(),c(!1),!(r||t)&&w.dataTransfer?.files&&w.dataTransfer.files[0]&&E(w.dataTransfer.files[0])},x=w=>{w.preventDefault(),w.stopPropagation(),!r&&!t&&c(!0)},h=w=>{w.preventDefault(),w.stopPropagation();const N=w.currentTarget.getBoundingClientRect(),L=w.clientX,le=w.clientY;(L<N.left||L>=N.right||le<N.top||le>=N.bottom)&&c(!1)},S=()=>{!r&&!t&&i.current?.click()};return l.jsxs("div",{className:`${a} ${d?"drag-active":""} ${r||t?"opacity-50 cursor-not-allowed":"cursor-pointer"}`,onClick:S,onDrop:y,onDragOver:x,onDragEnter:x,onDragLeave:h,children:[l.jsx("input",{ref:i,id:"file-upload",type:"file",accept:s,onChange:v,disabled:r||t,style:{display:"none"},"aria-label":"Choose file to upload"}),n||l.jsxs("div",{className:"flex flex-col items-center justify-center py-12",children:[l.jsx(Qr,{className:"w-12 h-12 text-gray-400 mb-4"}),l.jsx("p",{className:"text-sm text-gray-600",children:d?"Drop file here":"Drag and drop or click to upload"})]})]})}function xd({onSuccess:o,setDataError:e,...r}){const[t,a]=p.useState(!1),{t:n}=rr(),[d,c]=p.useState(!1);p.useEffect(()=>{const f=()=>{c(window.innerWidth<=480)};return f(),window.addEventListener("resize",f),()=>window.removeEventListener("resize",f)},[]);const i=async f=>{a(!0),o(f),a(!1)},s={"application/vnd.ms-excel":[".xls"],"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":[".xlsx"],"text/csv":[".csv"]};return l.jsxs(At,{onFileSelect:i,accept:s,disabled:t,loading:t,className:`
|
|
112
|
+
color: hsl(${Math.max(0,Math.min(120-120*E,120))}deg 100% 31%);`,r?.key)}return(i=r?.onChange)==null||i.call(r,a),a}return n.updateDeps=l=>{t=l},n}function So(o,e){if(o===void 0)throw new Error("Unexpected undefined");return o}const Un=(o,e)=>Math.abs(o-e)<1.01,Wn=(o,e,r)=>{let t;return function(...a){o.clearTimeout(t),t=o.setTimeout(()=>e.apply(this,a),r)}},Co=o=>{const{offsetWidth:e,offsetHeight:r}=o;return{width:e,height:r}},Bn=o=>o,qn=o=>{const e=Math.max(o.startIndex-o.overscan,0),r=Math.min(o.endIndex+o.overscan,o.count-1),t=[];for(let a=e;a<=r;a++)t.push(a);return t},Yn=(o,e)=>{const r=o.scrollElement;if(!r)return;const t=o.targetWindow;if(!t)return;const a=l=>{const{width:s,height:c}=l;e({width:Math.round(s),height:Math.round(c)})};if(a(Co(r)),!t.ResizeObserver)return()=>{};const n=new t.ResizeObserver(l=>{const s=()=>{const c=l[0];if(c?.borderBoxSize){const i=c.borderBoxSize[0];if(i){a({width:i.inlineSize,height:i.blockSize});return}}a(Co(r))};o.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(s):s()});return n.observe(r,{box:"border-box"}),()=>{n.unobserve(r)}},Vo={passive:!0},Do=typeof window>"u"?!0:"onscrollend"in window,Hn=(o,e)=>{const r=o.scrollElement;if(!r)return;const t=o.targetWindow;if(!t)return;let a=0;const n=o.options.useScrollendEvent&&Do?()=>{}:Wn(t,()=>{e(a,!1)},o.options.isScrollingResetDelay),l=f=>()=>{const{horizontal:T,isRtl:w}=o.options;a=T?r.scrollLeft*(w&&-1||1):r.scrollTop,n(),e(a,f)},s=l(!0),c=l(!1);c(),r.addEventListener("scroll",s,Vo);const i=o.options.useScrollendEvent&&Do;return i&&r.addEventListener("scrollend",c,Vo),()=>{r.removeEventListener("scroll",s),i&&r.removeEventListener("scrollend",c)}},Gn=(o,e,r)=>{if(e?.borderBoxSize){const t=e.borderBoxSize[0];if(t)return Math.round(t[r.options.horizontal?"inlineSize":"blockSize"])}return o[r.options.horizontal?"offsetWidth":"offsetHeight"]},Kn=(o,{adjustments:e=0,behavior:r},t)=>{var a,n;const l=o+e;(n=(a=t.scrollElement)==null?void 0:a.scrollTo)==null||n.call(a,{[t.options.horizontal?"left":"top"]:l,behavior:r})};class Xn{constructor(e){this.unsubs=[],this.scrollElement=null,this.targetWindow=null,this.isScrolling=!1,this.measurementsCache=[],this.itemSizeCache=new Map,this.pendingMeasuredCacheIndexes=[],this.scrollRect=null,this.scrollOffset=null,this.scrollDirection=null,this.scrollAdjustments=0,this.elementsCache=new Map,this.observer=(()=>{let r=null;const t=()=>r||(!this.targetWindow||!this.targetWindow.ResizeObserver?null:r=new this.targetWindow.ResizeObserver(a=>{a.forEach(n=>{const l=()=>{this._measureElement(n.target,n)};this.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(l):l()})}));return{disconnect:()=>{var a;(a=t())==null||a.disconnect(),r=null},observe:a=>{var n;return(n=t())==null?void 0:n.observe(a,{box:"border-box"})},unobserve:a=>{var n;return(n=t())==null?void 0:n.unobserve(a)}}})(),this.range=null,this.setOptions=r=>{Object.entries(r).forEach(([t,a])=>{typeof a>"u"&&delete r[t]}),this.options={debug:!1,initialOffset:0,overscan:1,paddingStart:0,paddingEnd:0,scrollPaddingStart:0,scrollPaddingEnd:0,horizontal:!1,getItemKey:Bn,rangeExtractor:qn,onChange:()=>{},measureElement:Gn,initialRect:{width:0,height:0},scrollMargin:0,gap:0,indexAttribute:"data-index",initialMeasurementsCache:[],lanes:1,isScrollingResetDelay:150,enabled:!0,isRtl:!1,useScrollendEvent:!1,useAnimationFrameWithResizeObserver:!1,...r}},this.notify=r=>{var t,a;(a=(t=this.options).onChange)==null||a.call(t,this,r)},this.maybeNotify=tr(()=>(this.calculateRange(),[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]),r=>{this.notify(r)},{key:"maybeNotify",debug:()=>this.options.debug,initialDeps:[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]}),this.cleanup=()=>{this.unsubs.filter(Boolean).forEach(r=>r()),this.unsubs=[],this.observer.disconnect(),this.scrollElement=null,this.targetWindow=null},this._didMount=()=>()=>{this.cleanup()},this._willUpdate=()=>{var r;const t=this.options.enabled?this.options.getScrollElement():null;if(this.scrollElement!==t){if(this.cleanup(),!t){this.maybeNotify();return}this.scrollElement=t,this.scrollElement&&"ownerDocument"in this.scrollElement?this.targetWindow=this.scrollElement.ownerDocument.defaultView:this.targetWindow=((r=this.scrollElement)==null?void 0:r.window)??null,this.elementsCache.forEach(a=>{this.observer.observe(a)}),this._scrollToOffset(this.getScrollOffset(),{adjustments:void 0,behavior:void 0}),this.unsubs.push(this.options.observeElementRect(this,a=>{this.scrollRect=a,this.maybeNotify()})),this.unsubs.push(this.options.observeElementOffset(this,(a,n)=>{this.scrollAdjustments=0,this.scrollDirection=n?this.getScrollOffset()<a?"forward":"backward":null,this.scrollOffset=a,this.isScrolling=n,this.maybeNotify()}))}},this.getSize=()=>this.options.enabled?(this.scrollRect=this.scrollRect??this.options.initialRect,this.scrollRect[this.options.horizontal?"width":"height"]):(this.scrollRect=null,0),this.getScrollOffset=()=>this.options.enabled?(this.scrollOffset=this.scrollOffset??(typeof this.options.initialOffset=="function"?this.options.initialOffset():this.options.initialOffset),this.scrollOffset):(this.scrollOffset=null,0),this.getFurthestMeasurement=(r,t)=>{const a=new Map,n=new Map;for(let l=t-1;l>=0;l--){const s=r[l];if(a.has(s.lane))continue;const c=n.get(s.lane);if(c==null||s.end>c.end?n.set(s.lane,s):s.end<c.end&&a.set(s.lane,!0),a.size===this.options.lanes)break}return n.size===this.options.lanes?Array.from(n.values()).sort((l,s)=>l.end===s.end?l.index-s.index:l.end-s.end)[0]:void 0},this.getMeasurementOptions=tr(()=>[this.options.count,this.options.paddingStart,this.options.scrollMargin,this.options.getItemKey,this.options.enabled],(r,t,a,n,l)=>(this.pendingMeasuredCacheIndexes=[],{count:r,paddingStart:t,scrollMargin:a,getItemKey:n,enabled:l}),{key:!1}),this.getMeasurements=tr(()=>[this.getMeasurementOptions(),this.itemSizeCache],({count:r,paddingStart:t,scrollMargin:a,getItemKey:n,enabled:l},s)=>{if(!l)return this.measurementsCache=[],this.itemSizeCache.clear(),[];this.measurementsCache.length===0&&(this.measurementsCache=this.options.initialMeasurementsCache,this.measurementsCache.forEach(f=>{this.itemSizeCache.set(f.key,f.size)}));const c=this.pendingMeasuredCacheIndexes.length>0?Math.min(...this.pendingMeasuredCacheIndexes):0;this.pendingMeasuredCacheIndexes=[];const i=this.measurementsCache.slice(0,c);for(let f=c;f<r;f++){const T=n(f),w=this.options.lanes===1?i[f-1]:this.getFurthestMeasurement(i,f),y=w?w.end+this.options.gap:t+a,v=s.get(T),x=typeof v=="number"?v:this.options.estimateSize(f),E=y+x,k=w?w.lane:f%this.options.lanes;i[f]={index:f,start:y,size:x,end:E,key:T,lane:k}}return this.measurementsCache=i,i},{key:"getMeasurements",debug:()=>this.options.debug}),this.calculateRange=tr(()=>[this.getMeasurements(),this.getSize(),this.getScrollOffset(),this.options.lanes],(r,t,a,n)=>this.range=r.length>0&&t>0?Jn({measurements:r,outerSize:t,scrollOffset:a,lanes:n}):null,{key:"calculateRange",debug:()=>this.options.debug}),this.getVirtualIndexes=tr(()=>{let r=null,t=null;const a=this.calculateRange();return a&&(r=a.startIndex,t=a.endIndex),this.maybeNotify.updateDeps([this.isScrolling,r,t]),[this.options.rangeExtractor,this.options.overscan,this.options.count,r,t]},(r,t,a,n,l)=>n===null||l===null?[]:r({startIndex:n,endIndex:l,overscan:t,count:a}),{key:"getVirtualIndexes",debug:()=>this.options.debug}),this.indexFromElement=r=>{const t=this.options.indexAttribute,a=r.getAttribute(t);return a?parseInt(a,10):(console.warn(`Missing attribute name '${t}={index}' on measured element.`),-1)},this._measureElement=(r,t)=>{const a=this.indexFromElement(r),n=this.measurementsCache[a];if(!n)return;const l=n.key,s=this.elementsCache.get(l);s!==r&&(s&&this.observer.unobserve(s),this.observer.observe(r),this.elementsCache.set(l,r)),r.isConnected&&this.resizeItem(a,this.options.measureElement(r,t,this))},this.resizeItem=(r,t)=>{const a=this.measurementsCache[r];if(!a)return;const n=this.itemSizeCache.get(a.key)??a.size,l=t-n;l!==0&&((this.shouldAdjustScrollPositionOnItemSizeChange!==void 0?this.shouldAdjustScrollPositionOnItemSizeChange(a,l,this):a.start<this.getScrollOffset()+this.scrollAdjustments)&&(this.options.debug&&console.info("correction",l),this._scrollToOffset(this.getScrollOffset(),{adjustments:this.scrollAdjustments+=l,behavior:void 0})),this.pendingMeasuredCacheIndexes.push(a.index),this.itemSizeCache=new Map(this.itemSizeCache.set(a.key,t)),this.notify(!1))},this.measureElement=r=>{if(!r){this.elementsCache.forEach((t,a)=>{t.isConnected||(this.observer.unobserve(t),this.elementsCache.delete(a))});return}this._measureElement(r,void 0)},this.getVirtualItems=tr(()=>[this.getVirtualIndexes(),this.getMeasurements()],(r,t)=>{const a=[];for(let n=0,l=r.length;n<l;n++){const s=r[n],c=t[s];a.push(c)}return a},{key:"getVirtualItems",debug:()=>this.options.debug}),this.getVirtualItemForOffset=r=>{const t=this.getMeasurements();if(t.length!==0)return So(t[Dt(0,t.length-1,a=>So(t[a]).start,r)])},this.getOffsetForAlignment=(r,t,a=0)=>{const n=this.getSize(),l=this.getScrollOffset();t==="auto"&&(t=r>=l+n?"end":"start"),t==="center"?r+=(a-n)/2:t==="end"&&(r-=n);const s=this.getTotalSize()+this.options.scrollMargin-n;return Math.max(Math.min(s,r),0)},this.getOffsetForIndex=(r,t="auto")=>{r=Math.max(0,Math.min(r,this.options.count-1));const a=this.measurementsCache[r];if(!a)return;const n=this.getSize(),l=this.getScrollOffset();if(t==="auto")if(a.end>=l+n-this.options.scrollPaddingEnd)t="end";else if(a.start<=l+this.options.scrollPaddingStart)t="start";else return[l,t];const s=t==="end"?a.end+this.options.scrollPaddingEnd:a.start-this.options.scrollPaddingStart;return[this.getOffsetForAlignment(s,t,a.size),t]},this.isDynamicMode=()=>this.elementsCache.size>0,this.scrollToOffset=(r,{align:t="start",behavior:a}={})=>{a==="smooth"&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."),this._scrollToOffset(this.getOffsetForAlignment(r,t),{adjustments:void 0,behavior:a})},this.scrollToIndex=(r,{align:t="auto",behavior:a}={})=>{a==="smooth"&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."),r=Math.max(0,Math.min(r,this.options.count-1));let n=0;const l=10,s=i=>{if(!this.targetWindow)return;const f=this.getOffsetForIndex(r,i);if(!f){console.warn("Failed to get offset for index:",r);return}const[T,w]=f;this._scrollToOffset(T,{adjustments:void 0,behavior:a}),this.targetWindow.requestAnimationFrame(()=>{const y=this.getScrollOffset(),v=this.getOffsetForIndex(r,w);if(!v){console.warn("Failed to get offset for index:",r);return}Un(v[0],y)||c(w)})},c=i=>{this.targetWindow&&(n++,n<l?(this.options.debug&&console.info("Schedule retry",n,l),this.targetWindow.requestAnimationFrame(()=>s(i))):console.warn(`Failed to scroll to index ${r} after ${l} attempts.`))};s(t)},this.scrollBy=(r,{behavior:t}={})=>{t==="smooth"&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."),this._scrollToOffset(this.getScrollOffset()+r,{adjustments:void 0,behavior:t})},this.getTotalSize=()=>{var r;const t=this.getMeasurements();let a;if(t.length===0)a=this.options.paddingStart;else if(this.options.lanes===1)a=((r=t[t.length-1])==null?void 0:r.end)??0;else{const n=Array(this.options.lanes).fill(null);let l=t.length-1;for(;l>=0&&n.some(s=>s===null);){const s=t[l];n[s.lane]===null&&(n[s.lane]=s.end),l--}a=Math.max(...n.filter(s=>s!==null))}return Math.max(a-this.options.scrollMargin+this.options.paddingEnd,0)},this._scrollToOffset=(r,{adjustments:t,behavior:a})=>{this.options.scrollToFn(r,{behavior:a,adjustments:t},this)},this.measure=()=>{this.itemSizeCache=new Map,this.notify(!1)},this.setOptions(e)}}const Dt=(o,e,r,t)=>{for(;o<=e;){const a=(o+e)/2|0,n=r(a);if(n<t)o=a+1;else if(n>t)e=a-1;else return a}return o>0?o-1:0};function Jn({measurements:o,outerSize:e,scrollOffset:r,lanes:t}){const a=o.length-1,n=c=>o[c].start;if(o.length<=t)return{startIndex:0,endIndex:a};let l=Dt(0,a,n,r),s=l;if(t===1)for(;s<a&&o[s].end<r+e;)s++;else if(t>1){const c=Array(t).fill(0);for(;s<a&&c.some(f=>f<r+e);){const f=o[s];c[f.lane]=f.end,s++}const i=Array(t).fill(r+e);for(;l>=0&&i.some(f=>f>=r);){const f=o[l];i[f.lane]=f.start,l--}l=Math.max(0,l-l%t),s=Math.min(a,s+(t-1-s%t))}return{startIndex:l,endIndex:s}}const jo=typeof document<"u"?nr.useLayoutEffect:nr.useEffect;function Qn(o){const e=nr.useReducer(()=>({}),{})[1],r={...o,onChange:(a,n)=>{var l;n?rt.flushSync(e):e(),(l=o.onChange)==null||l.call(o,a,n)}},[t]=nr.useState(()=>new Xn(r));return t.setOptions(r),jo(()=>t._didMount(),[]),jo(()=>t._willUpdate()),t}function el(o){return Qn({observeElementRect:Yn,observeElementOffset:Hn,scrollToFn:Kn,...o})}function rl({headers:o,rows:e,renderCell:r,rowHeight:t=56,overscan:a=5,stickyHeader:n=!0,stickyFirstColumn:l=!0,getRowClassName:s,headerRowIndex:c=0,includedColumns:i}){const f=h.useRef(null),T=h.useRef(null),w=el({count:e.length,getScrollElement:()=>T.current,estimateSize:()=>t,overscan:a}),y=w.getVirtualItems(),v=l?60+o.length*200:o.length*200;return d.jsxDEV("div",{className:"flex-1 overflow-hidden relative",ref:f,children:[n&&d.jsxDEV("div",{className:"bg-slate-50/80 border-b border-slate-200 sticky top-0 z-20 overflow-hidden",style:{minWidth:v},children:d.jsxDEV("div",{className:"flex",children:[l&&d.jsxDEV("div",{className:"text-left px-6 py-3.5 text-xs font-semibold text-slate-500 uppercase tracking-wider bg-slate-50/80 border-r border-slate-200",style:{position:"sticky",left:0,zIndex:21,minWidth:"60px",width:"60px"},children:"#"},void 0,!1,{fileName:"/frontend/src/importer/components/VirtualTable/index.tsx",lineNumber:61,columnNumber:15},this),o.map((x,E)=>d.jsxDEV("div",{className:"text-left px-6 py-3.5 text-xs font-semibold text-slate-500 uppercase tracking-wider bg-slate-50/80",style:{minWidth:"200px",flex:"0 0 200px"},children:x},E,!1,{fileName:"/frontend/src/importer/components/VirtualTable/index.tsx",lineNumber:75,columnNumber:15},this))]},void 0,!0,{fileName:"/frontend/src/importer/components/VirtualTable/index.tsx",lineNumber:59,columnNumber:11},this)},void 0,!1,{fileName:"/frontend/src/importer/components/VirtualTable/index.tsx",lineNumber:55,columnNumber:9},this),d.jsxDEV("div",{ref:T,className:"overflow-auto",style:{height:n?"calc(100% - 56px)":"100%",maxHeight:"500px"},children:d.jsxDEV("div",{style:{height:`${w.getTotalSize()}px`,width:"100%",position:"relative",minWidth:v},children:y.map(x=>{const E=e[x.index],k=x.index,j=k+c+1,F=s?.(E,k)||"";return d.jsxDEV("div",{className:ie("flex border-b border-slate-100 hover:bg-blue-50/50 transition-colors",F),style:{position:"absolute",top:0,left:0,width:"100%",height:`${x.size}px`,transform:`translateY(${x.start}px)`},children:[l&&d.jsxDEV("div",{className:"px-6 py-3 text-sm text-slate-600 border-r border-slate-200 flex items-center",style:{position:"sticky",left:0,zIndex:5,backgroundColor:F.includes("bg-red-50")?"#FEF2F2":"#F8FAFC",minWidth:"60px",width:"60px"},children:d.jsxDEV("span",{children:j+1},void 0,!1,{fileName:"/frontend/src/importer/components/VirtualTable/index.tsx",lineNumber:141,columnNumber:21},this)},void 0,!1,{fileName:"/frontend/src/importer/components/VirtualTable/index.tsx",lineNumber:130,columnNumber:19},this),i.map((de,me)=>d.jsxDEV("div",{className:"px-6 py-3",style:{minWidth:"200px",flex:"0 0 200px"},children:r(E,de,k)},me,!1,{fileName:"/frontend/src/importer/components/VirtualTable/index.tsx",lineNumber:148,columnNumber:21},this))]},x.key,!0,{fileName:"/frontend/src/importer/components/VirtualTable/index.tsx",lineNumber:113,columnNumber:15},this)})},void 0,!1,{fileName:"/frontend/src/importer/components/VirtualTable/index.tsx",lineNumber:97,columnNumber:9},this)},void 0,!1,{fileName:"/frontend/src/importer/components/VirtualTable/index.tsx",lineNumber:88,columnNumber:7},this)]},void 0,!0,{fileName:"/frontend/src/importer/components/VirtualTable/index.tsx",lineNumber:52,columnNumber:5},this)}function ol({columns:o,schema:e,data:r,columnMapping:t,selectedHeaderRow:a,onSuccess:n,onCancel:l,isSubmitting:s,backendUrl:c,importerKey:i,filterInvalidRows:f,disableOnInvalidRows:T}){const[w,y]=h.useState([]),[v,x]=h.useState("all"),[E,k]=h.useState(!1),[j,F]=h.useState(100),[de,me]=h.useState(!1),K=h.useRef(null),$=a||0,b=r.rows[$],[u,p]=h.useState(()=>r.rows.slice($+1)),C=h.useMemo(()=>Object.entries(t).filter(([z,V])=>V.include).map(([z])=>parseInt(z)),[t]),_=h.useMemo(()=>C.map(z=>String(b.values[z])),[C,b]),O=h.useRef(!0),Z=h.useMemo(()=>{const z=new Map;return Object.entries(t).forEach(([V,M])=>{if(M.include){const S=M,L=S.id||S.key;L&&z.set(L,parseInt(V))}}),z},[t]),H=h.useCallback((z,V,M)=>{if(e){const S={};C.forEach(P=>{const ee=z.values[P],ce=t[P];if(!ce||!ce.include)return;const re=ce,ae=re.id||re.key;if(!ae)return;const oe=o?.find(Ve=>Ve.id===ae);if(!oe)return;const{pre:Ne}=Cr(oe.transformations),X=fr(ee,Ne),xe=oe.validators?.some(Ve=>Ve.type==="required")??!1;let Te=X;if(oe.type==="number"){const Ve=Number(X);Te=X===""?xe?"":void 0:isNaN(Ve)?X:Ve}else if(oe.type==="date")if(X==="")Te=xe?"":void 0;else{const Ve=new Date(X);Te=isNaN(Ve.getTime())?X:Ve}else X===""&&!xe&&(Te=void 0);S[ae]=Te});const L=e.safeParse(S);L.success||L.error.issues.forEach(P=>{const ee=P.path[0];if(!o?.find(ae=>ae.id===ee))return;const re=Z.get(ee);re!=null&&M.push({rowIndex:V+$+1,columnIndex:re,message:P.message})})}else C.forEach(S=>{const L=z.values[S],P=t[S];if(!P||!P.include)return;const ee=P,ce=ee.id||ee.key,re=o?.find(X=>X.id===ce);if(!re)return;const{pre:ae}=Cr(re.transformations),oe=fr(L,ae),Ne=An(oe,re);Ne&&M.push({rowIndex:V+$+1,columnIndex:S,message:Ne})})},[C,t,o,e,$,Z]);h.useEffect(()=>{K.current&&(K.current.scrollTop=0)},[]),h.useEffect(()=>{if(!o)return;const z=o.map(M=>M.id);Object.entries(t).filter(([M,S])=>{if(!S.include)return!1;const L=S;return!z.includes(L.id||L.key||"")}).length>0},[o,t]);const te=h.useCallback(()=>{if(!O.current||!o)return;me(!0),F(0);const z=[],V=u.length,M=Math.min(50,V);for(let S=0;S<M;S++){const L=u[S];H(L,S,z)}if(y(z),F(Math.floor(M/V*100)),V>M){let S=M;const L=100,P=()=>{const ee=Math.min(S+L,V);for(let re=S;re<ee;re++){const ae=u[re];H(ae,re,z)}S=ee;const ce=Math.floor(S/V*100);F(ce),y([...z]),S<V?setTimeout(P,0):(me(!1),O.current=!1)};setTimeout(P,0)}else me(!1),O.current=!1},[u,H]);h.useEffect(()=>{u.length>0&&O.current&&te()},[u,te]);const A=h.useCallback((z,V,M)=>{u[z]?.values[V]!==M&&(p(S=>{const L=[...S];return L[z]&&L[z].values&&(L[z]={...L[z],values:[...L[z].values]},L[z].values[V]=M),O.current=!0,L}),O.current=!0)},[u]),N=h.useMemo(()=>o?u.map(z=>{const V={...z},M=[...z.values];return C.forEach(S=>{const L=t[S];if(!L||!L.include)return;const P=L,ee=P.id||P.key,ce=o.find(ae=>ae.id===ee);if(!ce||!ce.transformations)return;const{pre:re}=Cr(ce.transformations);re.length>0&&(M[S]=fr(z.values[S],re))}),V.values=M,V}):u,[u,o,t,C]),{visibleRows:W,validCount:se,errorCount:m}=h.useMemo(()=>{const z=new Set(w.map(L=>L.rowIndex-$-1)),V=N.filter((L,P)=>!z.has(P)),M=N.filter((L,P)=>z.has(P));let S;return v==="valid"?S=V:v==="error"?S=M:S=N,{visibleRows:S,validCount:V.length,errorCount:M.length}},[N,v,w,$]),D=h.useMemo(()=>{const z=new Set,V=new Set;return w.forEach(M=>{const S=M.rowIndex-$-1;S>=0&&S<N.length&&(z.add(S),V.add(N[S]?.index||-1))}),{indices:z,objects:Array.from(V).filter(M=>M!==-1),count:z.size}},[w,$,N]),g=z=>{if(z.preventDefault(),T&&w.length>0)return;const M=(f?u.filter((S,L)=>!D.indices.has(L)):u).map(S=>{const L={...S},P=S.values.map((ee,ce)=>{if(!C.includes(ce))return ee;const re=t[ce],ae=re;if(!re||!(ae.id||ae.key))return ee;const oe=o?.find(Ve=>Ve.id===(ae.id||ae.key));if(!oe||!oe.transformations)return ee;const{pre:Ne,post:X}=Cr(oe.transformations),xe=fr(ee,Ne);return fr(xe,X)});return L.values=P,L});n({...r,rows:[b,...M]})},I=d.jsxDEV(d.Fragment,{children:[d.jsxDEV(qe,{variant:"outline",onClick:l,disabled:s,size:"default",children:"Back"},void 0,!1,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:425,columnNumber:7},this),d.jsxDEV(qe,{isLoading:s,disabled:de||T&&w.length>0,size:"default",variant:"default",onClick:g,children:de?"Validating...":"Submit"},void 0,!1,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:433,columnNumber:7},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:424,columnNumber:5},this),Q=d.jsxDEV("div",{className:"",children:[de&&d.jsxDEV("div",{className:Oe.spacing.section,children:[d.jsxDEV("div",{className:"flex justify-between mb-1",children:[d.jsxDEV("span",{className:Oe.typography.body,children:"Validating data..."},void 0,!1,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:452,columnNumber:13},this),d.jsxDEV("span",{className:Oe.typography.body,children:[j,"%"]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:453,columnNumber:13},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:451,columnNumber:11},this),d.jsxDEV("div",{className:"w-full bg-slate-200 rounded-full h-2",children:d.jsxDEV("div",{className:"bg-blue-600 h-2 rounded-full transition-all duration-300",style:{width:`${j}%`}},void 0,!1,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:456,columnNumber:13},this)},void 0,!1,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:455,columnNumber:11},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:450,columnNumber:9},this),f&&D.count>0&&d.jsxDEV(wt,{className:Oe.spacing.section,children:[d.jsxDEV(ht,{className:"h-4 w-4"},void 0,!1,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:466,columnNumber:11},this),d.jsxDEV(_n,{children:"Invalid Rows Will Be Filtered"},void 0,!1,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:467,columnNumber:11},this),d.jsxDEV(Et,{children:`${D.count} ${D.count===1?"row":"rows"} with validation errors will be excluded from the import. You can fix the errors to include these rows.`},void 0,!1,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:468,columnNumber:11},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:465,columnNumber:9},this),!de&&d.jsxDEV("div",{className:"py-3",children:d.jsxDEV("div",{className:"flex justify-between items-center",children:[d.jsxDEV("div",{className:"flex gap-1",children:[d.jsxDEV("button",{type:"button",className:ie("px-4 py-2 rounded-lg transition-all",Oe.typography.body,v==="all"?"bg-slate-100 text-slate-900 border border-slate-300 font-medium shadow-sm":"text-slate-500 hover:text-slate-700 hover:bg-slate-50 border border-transparent"),onClick:()=>x("all"),children:["All ",d.jsxDEV("span",{className:ie("ml-2 px-2 py-0.5 rounded-full text-xs font-medium",v==="all"?"bg-white text-slate-700 shadow-sm":"bg-slate-200 text-slate-600"),children:u.length},void 0,!1,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:489,columnNumber:21},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:478,columnNumber:15},this),d.jsxDEV("button",{type:"button",className:ie("px-4 py-2 rounded-lg transition-all",Oe.typography.body,v==="valid"?"bg-slate-100 text-slate-900 border border-slate-300 font-medium shadow-sm":"text-slate-500 hover:text-slate-700 hover:bg-slate-50 border border-transparent"),onClick:()=>x("valid"),children:["Valid ",d.jsxDEV("span",{className:ie("ml-2 px-2 py-0.5 rounded-full text-xs font-medium",v==="valid"?"bg-emerald-100 text-emerald-700":"bg-emerald-50 text-emerald-600"),children:se},void 0,!1,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:502,columnNumber:23},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:491,columnNumber:15},this),d.jsxDEV("button",{type:"button",className:ie("px-4 py-2 rounded-lg transition-all",Oe.typography.body,v==="error"?"bg-slate-100 text-slate-900 border border-slate-300 font-medium shadow-sm":"text-slate-500 hover:text-slate-700 hover:bg-slate-50 border border-transparent"),onClick:()=>x("error"),children:["Error ",d.jsxDEV("span",{className:ie("ml-2 px-2 py-0.5 rounded-full text-xs font-medium",v==="error"?"bg-red-100 text-red-700":"bg-red-50 text-red-600"),children:m},void 0,!1,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:515,columnNumber:23},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:504,columnNumber:15},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:477,columnNumber:13},this),d.jsxDEV("div",{className:"flex items-center space-x-2",children:c&&i&&m>0&&d.jsxDEV(_o,{content:"Use AI to automatically fix validation errors",children:d.jsxDEV(qe,{size:"sm",onClick:()=>k(!0),variant:"default",className:"shadow-sm",children:[d.jsxDEV(pn,{className:"mr-2 h-4 w-4"},void 0,!1,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:527,columnNumber:21},this),"Fix errors"]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:521,columnNumber:19},this)},void 0,!1,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:520,columnNumber:17},this)},void 0,!1,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:518,columnNumber:13},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:476,columnNumber:11},this)},void 0,!1,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:475,columnNumber:9},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:447,columnNumber:5},this);return d.jsxDEV(hr,{title:"Validate Data",subtitle:"Review and correct any errors in your data before importing.",headerContent:Q,footerContent:I,contentClassName:"px-6 py-4 overflow-visible",children:d.jsxDEV("form",{onSubmit:g,className:"h-full",children:[d.jsxDEV("div",{className:"h-full overflow-x-auto border border-slate-200 rounded-xl bg-gradient-to-b from-white to-slate-50/50 shadow-sm",ref:K,children:W.length>0?d.jsxDEV(rl,{headers:_,rows:W,headerRowIndex:$,includedColumns:C,rowHeight:56,overscan:5,stickyHeader:!0,stickyFirstColumn:!0,getRowClassName:(z,V)=>{const M=V+$+1;return w.some(L=>L.rowIndex===M)?"bg-red-50/70 hover:bg-red-100/70":""},renderCell:(z,V,M)=>{const S=z.values[V],L=M+$+1,P=w.find(ee=>ee.rowIndex===L&&ee.columnIndex===V);return d.jsxDEV("div",{className:"relative",children:[d.jsxDEV("input",{type:"text",value:String(S||""),onChange:ee=>{const ce=N.indexOf(z);ce!==-1&&ee.target&&A(ce,V,ee.target.value)},tabIndex:0,className:`w-full px-3 py-2 text-sm border rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500/40 focus:border-blue-400 transition-colors ${P?"border-red-400 bg-red-50/70":"border-slate-200 hover:border-slate-300 bg-white"}`},void 0,!1,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:574,columnNumber:19},this),P&&d.jsxDEV(_o,{content:P.message,children:d.jsxDEV("span",{className:"absolute right-2 top-1/2 transform -translate-y-1/2",children:d.jsxDEV("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",children:[d.jsxDEV("circle",{cx:"8",cy:"8",r:"7",fill:"#DC2626"},void 0,!1,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:591,columnNumber:27},this),d.jsxDEV("path",{d:"M8 4.5V9",stroke:"white",strokeWidth:"1.5",strokeLinecap:"round"},void 0,!1,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:592,columnNumber:27},this),d.jsxDEV("circle",{cx:"8",cy:"11.5",r:"0.75",fill:"white"},void 0,!1,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:593,columnNumber:27},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:590,columnNumber:25},this)},void 0,!1,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:589,columnNumber:23},this)},void 0,!1,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:588,columnNumber:21},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:573,columnNumber:17},this)}},void 0,!1,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:551,columnNumber:13},this):d.jsxDEV("div",{className:"p-8 text-center",children:d.jsxDEV("span",{className:ie(Oe.typography.body,"text-slate-400"),children:v==="error"?"No rows with errors found":v==="valid"?"No valid rows found":"No data to display"},void 0,!1,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:604,columnNumber:15},this)},void 0,!1,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:603,columnNumber:13},this)},void 0,!1,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:549,columnNumber:9},this),c&&i&&d.jsxDEV(zn,{isOpen:E,onClose:()=>k(!1),data:u,columnMapping:t,backendUrl:c,importerKey:i,validationErrors:w.map(z=>{const V=z.rowIndex-$-1,S=t[z.columnIndex];return{rowIndex:V,columnKey:S?.id||S?.key||"",message:z.message,value:u[V]?.values[z.columnIndex]}}),onApplyTransformations:z=>{const V=[...u];z.forEach(M=>{const{rowIndex:S,columnIndex:L,newValue:P}=M;if(L===void 0){console.warn(`Skipping change for row ${S}: columnIndex is undefined`);return}if(S<0||S>=V.length){console.warn(`Skipping change: rowIndex ${S} out of bounds (dataRows has ${V.length} rows)`);return}V[S]&&V[S].values&&(V[S]===u[S]&&(V[S]={...V[S],values:[...V[S].values]}),V[S].values[L]=P)}),p(V),O.current=!0,k(!1)}},void 0,!1,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:615,columnNumber:11},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:547,columnNumber:7},this)},void 0,!1,{fileName:"/frontend/src/importer/features/validation/Validation.tsx",lineNumber:540,columnNumber:5},this)}function tl(o,e){h.useEffect(()=>{},[o,e])}function al(o){return/^#([0-9A-F]{3}){1,2}$/i.test(o)}function jt(o){const e=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(o);return e?{r:parseInt(e[1],16),g:parseInt(e[2],16),b:parseInt(e[3],16)}:null}function Tt(o,e,r){return"#"+((1<<24)+(o<<16)+(e<<8)+r).toString(16).slice(1)}function mr(o,e){const r=jt(o);if(!r)return o;const t=e/100,a=Math.min(255,Math.round(r.r+(255-r.r)*t)),n=Math.min(255,Math.round(r.g+(255-r.g)*t)),l=Math.min(255,Math.round(r.b+(255-r.b)*t));return Tt(a,n,l)}function gr(o,e){const r=jt(o);if(!r)return o;const t=1-e/100,a=Math.round(r.r*t),n=Math.round(r.g*t),l=Math.round(r.b*t);return Tt(a,n,l)}function nl(o){return{50:mr(o,95),100:mr(o,90),200:mr(o,80),300:mr(o,60),400:mr(o,40),500:o,600:gr(o,10),700:gr(o,20),800:gr(o,30),900:gr(o,40)}}function ll(o,e){const r=nl(o);if(!e){console.warn("applyColorPalette: No target element provided, skipping style application to prevent leakage");return}e.style.setProperty("--color-primary",o),e.style.setProperty("--color-primary-50",r[50]),e.style.setProperty("--color-primary-100",r[100]),e.style.setProperty("--color-primary-200",r[200]),e.style.setProperty("--color-primary-300",r[300]),e.style.setProperty("--color-primary-400",r[400]),e.style.setProperty("--color-primary-500",r[500]),e.style.setProperty("--color-primary-600",r[600]),e.style.setProperty("--color-primary-700",r[700]),e.style.setProperty("--color-primary-800",r[800]),e.style.setProperty("--color-primary-900",r[900]),e.style.setProperty("--color-primary-hover",r[700]),e.style.setProperty("--color-primary-focus",r[600]),e.style.setProperty("--color-primary-disabled",r[200])}function dl(o,e){const{returnType:r="object",escapePercent:t=!1}=e||{};if(typeof o>"u")return r==="string"?"":{};let a={};if(typeof o=="string")try{a=JSON.parse(o)}catch{return r==="string"?"":{}}else a=o;if(t)for(const n in a)typeof a[n]=="string"&&(a[n]=a[n].replace(/%(?!25)/g,"%25"));return r==="string"?JSON.stringify(a):a}const sl=(o,e)=>dl(e,{returnType:"string",escapePercent:!0});function il(o,e=0,r){const[t,a]=h.useState(e),n=h.useMemo(()=>o[t],[t,o]);return{steps:o,current:t,step:n,setCurrent:a,skipHeader:r}}function cl(o,e){const r=()=>{if(typeof window>"u")return e;try{const l=window.localStorage.getItem(o);return l?JSON.parse(l):e}catch{return e}},[t,a]=h.useState(r());return h.useEffect(()=>{a(r())},[o]),[t,l=>{try{const s=l instanceof Function?l(t):l;a(s),typeof window<"u"&&window.localStorage.setItem(o,JSON.stringify(s))}catch{}}]}const _e={Upload:0,RowSelection:1,MapColumns:2,Validation:3,Complete:4},ul=(o,e)=>e&&o===_e.RowSelection?_e.MapColumns:o,bl=o=>[{label:"Upload",id:0},{label:"Configure",id:1},{label:"Validation",id:2}];function fl(o,e,r=!1){const{t}=rr(),a=bl().map(x=>({...x,label:t(x.label)})),n=o===_e.MapColumns?1:o===_e.Validation?2:o===_e.Complete?3:0,l=il(a,n,e),s=r?[null,()=>{}]:cl("tf_steps",""),[c,i]=s,[f,T]=h.useState(o),w=x=>{const E=x!==void 0?x:Math.max(0,f-1);v(E)},y=(x=0)=>{x=x||f+1||0;const E=ul(x,e);v(E)},v=x=>{T(x),i(x);const E=x===_e.Upload?0:x===_e.MapColumns?1:x===_e.Validation?2:x===_e.Complete?3:x;l.setCurrent(E)};return h.useEffect(()=>{if(r||c===null)return;const x=c||0,E=x===_e.Upload?0:x===_e.MapColumns?1:x===_e.Validation?2:x===_e.Complete?3:x;l.setCurrent(E),T(x)},[c,r]),{currentStep:r?f:c??f,setStep:v,goBack:w,goNext:y,stepper:l,stepId:l?.step?.id,setStorageStep:i}}function ml({reload:o,close:e,isModal:r,rowCount:t}){const{t:a}=rr();return d.jsxDEV(hr,{title:a("Import Complete"),subtitle:t?a("{{count}} rows imported successfully",{count:t}):a("Your data has been imported successfully"),showFooter:!1,contentClassName:"px-6 py-12",children:d.jsxDEV("div",{className:"flex flex-col items-center justify-center text-center",children:[d.jsxDEV("div",{className:"w-20 h-20 rounded-full flex items-center justify-center mb-6",style:{background:"linear-gradient(to bottom right, #34d399, #059669)",boxShadow:"0 10px 15px -3px rgba(167, 243, 208, 0.4), 0 4px 6px -4px rgba(167, 243, 208, 0.4)"},children:d.jsxDEV(eo,{className:"w-10 h-10 text-white",strokeWidth:3},void 0,!1,{fileName:"/frontend/src/importer/features/complete/index.tsx",lineNumber:27,columnNumber:11},this)},void 0,!1,{fileName:"/frontend/src/importer/features/complete/index.tsx",lineNumber:20,columnNumber:9},this),d.jsxDEV(qe,{type:"button",variant:"outline",onClick:o,className:"mt-4",children:[d.jsxDEV(un,{className:"mr-2 h-4 w-4"},void 0,!1,{fileName:"/frontend/src/importer/features/complete/index.tsx",lineNumber:32,columnNumber:11},this),a("Upload another file")]},void 0,!0,{fileName:"/frontend/src/importer/features/complete/index.tsx",lineNumber:31,columnNumber:9},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/complete/index.tsx",lineNumber:17,columnNumber:7},this)},void 0,!1,{fileName:"/frontend/src/importer/features/complete/index.tsx",lineNumber:11,columnNumber:5},this)}const Ot=Re(({className:o,direction:e="row",align:r,justify:t,wrap:a,gap:n,style:l,...s},c)=>{const i=ie("flex",{"flex-row":e==="row","flex-col":e==="column","flex-row-reverse":e==="row-reverse","flex-col-reverse":e==="column-reverse","items-start":r==="start","items-center":r==="center","items-end":r==="end","items-stretch":r==="stretch","items-baseline":r==="baseline","justify-start":t==="start","justify-center":t==="center","justify-end":t==="end","justify-between":t==="between","justify-around":t==="around","justify-evenly":t==="evenly","flex-wrap":a},o),T={...n?{gap:typeof n=="number"?`${n*.25}rem`:n}:{},...l||{}};return d.jsxDEV("div",{ref:c,className:i,style:T,...s},void 0,!1,{fileName:"/frontend/src/importer/components/ui/flex.tsx",lineNumber:42,columnNumber:7},void 0)});Ot.displayName="Flex";const Rt=Ot,Mt=Re(({className:o,...e},r)=>d.jsxDEV("div",{ref:r,className:ie(o),...e},void 0,!1,{fileName:"/frontend/src/importer/components/ui/flex.tsx",lineNumber:57,columnNumber:12},void 0));Mt.displayName="Box";const It=Mt,zt=Re(({align:o="center",...e},r)=>d.jsxDEV("div",{ref:r,children:d.jsxDEV(Rt,{direction:"row",align:o,...e},void 0,!1,{fileName:"/frontend/src/importer/components/ui/flex.tsx",lineNumber:67,columnNumber:7},void 0)},void 0,!1,{fileName:"/frontend/src/importer/components/ui/flex.tsx",lineNumber:66,columnNumber:5},void 0));zt.displayName="HStack";const gl=zt,pl=Re((o,e)=>d.jsxDEV("div",{ref:e,children:d.jsxDEV(Rt,{direction:"column",...o},void 0,!1,{fileName:"/frontend/src/importer/components/ui/flex.tsx",lineNumber:78,columnNumber:7},void 0)},void 0,!1,{fileName:"/frontend/src/importer/components/ui/flex.tsx",lineNumber:77,columnNumber:5},void 0));pl.displayName="VStack";const At=Re(({className:o,...e},r)=>d.jsxDEV("div",{ref:r,className:ie(o),...e},void 0,!1,{fileName:"/frontend/src/importer/components/ui/flex.tsx",lineNumber:88,columnNumber:12},void 0));At.displayName="Text";const Pr=At,Pt=Re(({className:o,placeholder:e,options:r=[],onValueChange:t,onChange:a,...n},l)=>{const s=f=>{a?.(f),f.target&&t?.(f.target.value)},c=f=>{f.stopPropagation(),n.onFocus?.(f)},i=f=>{f.stopPropagation(),n.onClick?.(f)};return d.jsxDEV("select",{ref:l,className:ie("flex h-9 w-full items-center justify-between rounded-lg border border-gray-300 bg-white px-3 py-2 text-sm text-gray-900 transition-all duration-200","hover:border-gray-400 hover:bg-gray-50","focus:outline-none focus:border-blue-500 focus:bg-white focus:ring-2 focus:ring-blue-500/20","disabled:cursor-not-allowed disabled:opacity-50 disabled:bg-gray-50",o),value:n.value,defaultValue:n.defaultValue,...n,onChange:s,onFocus:c,onClick:i,children:[e&&d.jsxDEV("option",{value:"",className:"text-gray-500",children:e},void 0,!1,{fileName:"/frontend/src/importer/components/ui/select.tsx",lineNumber:54,columnNumber:11},void 0),r.map(f=>d.jsxDEV("option",{value:f.value,disabled:f.disabled,className:"text-gray-900",children:f.label},f.value,!1,{fileName:"/frontend/src/importer/components/ui/select.tsx",lineNumber:59,columnNumber:11},void 0))]},void 0,!0,{fileName:"/frontend/src/importer/components/ui/select.tsx",lineNumber:37,columnNumber:7},void 0)});Pt.displayName="Select";const hl=Pt;function xl({rows:o=5,className:e}){return d.jsxDEV("div",{className:ie("overflow-x-auto border border-gray-200 rounded-lg",e),children:d.jsxDEV("div",{className:"min-w-[600px]",children:[d.jsxDEV("div",{className:"flex gap-4 py-3 px-6 border-b bg-gray-50",children:[d.jsxDEV("div",{className:"w-[30%]",children:d.jsxDEV("div",{className:"h-4 bg-gray-200 rounded w-16 animate-pulse"},void 0,!1,{fileName:"/frontend/src/importer/components/MappingSkeleton/index.tsx",lineNumber:15,columnNumber:13},this)},void 0,!1,{fileName:"/frontend/src/importer/components/MappingSkeleton/index.tsx",lineNumber:14,columnNumber:11},this),d.jsxDEV("div",{className:"w-[35%]",children:d.jsxDEV("div",{className:"h-4 bg-gray-200 rounded w-24 animate-pulse"},void 0,!1,{fileName:"/frontend/src/importer/components/MappingSkeleton/index.tsx",lineNumber:18,columnNumber:13},this)},void 0,!1,{fileName:"/frontend/src/importer/components/MappingSkeleton/index.tsx",lineNumber:17,columnNumber:11},this),d.jsxDEV("div",{className:"w-[35%]",children:d.jsxDEV("div",{className:"h-4 bg-gray-200 rounded w-16 animate-pulse"},void 0,!1,{fileName:"/frontend/src/importer/components/MappingSkeleton/index.tsx",lineNumber:21,columnNumber:13},this)},void 0,!1,{fileName:"/frontend/src/importer/components/MappingSkeleton/index.tsx",lineNumber:20,columnNumber:11},this)]},void 0,!0,{fileName:"/frontend/src/importer/components/MappingSkeleton/index.tsx",lineNumber:13,columnNumber:9},this),Array.from({length:o}).map((r,t)=>d.jsxDEV("div",{className:"flex items-center gap-4 py-4 px-6 border-b border-gray-100 last:border-b-0",children:[d.jsxDEV("div",{className:"w-[30%] flex items-center gap-2",children:[d.jsxDEV("div",{className:"h-5 w-5 bg-gray-200 rounded-full animate-pulse flex-shrink-0"},void 0,!1,{fileName:"/frontend/src/importer/components/MappingSkeleton/index.tsx",lineNumber:33,columnNumber:15},this),d.jsxDEV("div",{className:"h-4 bg-gray-200 rounded w-3/4 animate-pulse"},void 0,!1,{fileName:"/frontend/src/importer/components/MappingSkeleton/index.tsx",lineNumber:34,columnNumber:15},this)]},void 0,!0,{fileName:"/frontend/src/importer/components/MappingSkeleton/index.tsx",lineNumber:32,columnNumber:13},this),d.jsxDEV("div",{className:"w-[35%]",children:d.jsxDEV("div",{className:"h-9 bg-gray-200 rounded w-full max-w-[250px] animate-pulse"},void 0,!1,{fileName:"/frontend/src/importer/components/MappingSkeleton/index.tsx",lineNumber:39,columnNumber:15},this)},void 0,!1,{fileName:"/frontend/src/importer/components/MappingSkeleton/index.tsx",lineNumber:38,columnNumber:13},this),d.jsxDEV("div",{className:"w-[35%]",children:d.jsxDEV("div",{className:"h-4 bg-gray-100 rounded w-2/3 animate-pulse"},void 0,!1,{fileName:"/frontend/src/importer/components/MappingSkeleton/index.tsx",lineNumber:44,columnNumber:15},this)},void 0,!1,{fileName:"/frontend/src/importer/components/MappingSkeleton/index.tsx",lineNumber:43,columnNumber:13},this)]},t,!0,{fileName:"/frontend/src/importer/components/MappingSkeleton/index.tsx",lineNumber:27,columnNumber:11},this))]},void 0,!0,{fileName:"/frontend/src/importer/components/MappingSkeleton/index.tsx",lineNumber:11,columnNumber:7},this)},void 0,!1,{fileName:"/frontend/src/importer/components/MappingSkeleton/index.tsx",lineNumber:10,columnNumber:5},this)}function yl(o,e){const r=o.split(" "),t=e.split(" ");return r.reduce((n,l)=>{const s=t.reduce((c,i)=>{const f=vl(l,i);return f>c?f:c},0);return s>n?s:n},0)}function vl(o,e){let r=o,t=e;o.length<e.length&&(r=e,t=o);const a=r.length;return a===0?1:(a-_l(r,t))/parseFloat(a.toString())}function _l(o,e){o=o.toLowerCase(),e=e.toLowerCase();const r=new Array(e.length+1);for(let t=0;t<=o.length;t++){let a=t;for(let n=0;n<=e.length;n++)if(t===0)r[n]=n;else if(n>0){let l=r[n-1];o.charAt(t-1)!==e.charAt(n-1)&&(l=Math.min(Math.min(l,a),r[n])+1),r[n-1]=a,a=l}t>0&&(r[e.length]=a)}return r[e.length]}async function wl(o,e,r,t){if(!r||!t||!o.length||!e.length)return[];try{const a=await fetch(`${r}/api/v1/imports/key/mapping-suggestions`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({importerKey:t,uploadColumns:o,templateColumns:e.map(l=>({key:l.id,name:l.label,required:l.validators?.some(s=>s.type==="required")}))})});if(!a.ok)return[];const n=await a.json();return n.success&&Array.isArray(n.mappings)?n.mappings:[]}catch{return[]}}function kl({columns:o,data:e,onSuccess:r,onCancel:t,isSubmitting:a=!1,importerKey:n,backendUrl:l,isDemoMode:s=!1}){const{t:c}=rr(),i=0,[f,T]=h.useState({}),[w,y]=h.useState(null),[v,x]=h.useState(!1),[E,k]=h.useState(!1),j=h.useRef(!1);h.useMemo(()=>e.rows.slice(0,Math.min(5,e.rows.length)),[e.rows]);const F=h.useMemo(()=>e.rows[i]?e.rows[i].values:[],[e.rows]),de=h.useMemo(()=>F.map((_,O)=>({index:O,name:_,sample_data:e.rows.slice(i+1,i+4).map(Z=>Z.values[O]).filter(Z=>Z)})),[F,e.rows,i]),me=_=>{const O=i+1;return e.rows.slice(O,O+3).map(H=>H.values[_]).filter(H=>H).join(", ")},K=o||[];h.useEffect(()=>{l&&n&&F.length>0&&K.length>0&&x(!0);const _={};F.forEach((O,Z)=>{let H={column:null,score:0};K.forEach(te=>{const A=yl(O.toLowerCase().trim(),te.label.toLowerCase().trim());A>H.score&&A>.6&&(H={column:te,score:A})}),H.column&&(_[Z]={id:H.column.id||"",label:H.column.label,include:!0})}),T(_),(!l||!n)&&k(!0)},[F,K,l,n]),h.useEffect(()=>{(async()=>{if(!j.current){if(!de.length||!K.length||!l||!n){x(!1),k(!0);return}j.current=!0;try{const O=await wl(de,K,l,n);O.length>0&&T(Z=>{const H={...Z},te=new Set(Object.values(Z).filter(N=>N.id).map(N=>N.id)),A=[...O].sort((N,W)=>W.confidence-N.confidence);for(const N of A){const W=Z[N.uploadIndex],se=W?.id&&!W?.include;if(N.confidence>.7&&(!W?.id||se)&&!te.has(N.templateKey)){const m=K.find(D=>D.id===N.templateKey);m&&(H[N.uploadIndex]={id:N.templateKey,label:m.label,include:!0},te.add(N.templateKey))}}return H})}catch{}finally{x(!1),k(!0)}}})()},[de,K,l,n]);const $=(_,O)=>{const Z={...f};if(Object.keys(Z).forEach(H=>{Z[parseInt(H)].id===_&&delete Z[parseInt(H)]}),O!==""&&O!=="none"){const H=parseInt(O),te=K.find(A=>A.id===_);te&&(Z[H]={id:_,label:te.label,include:!0})}T(Z)},b=_=>{const O=Object.entries(f).find(([Z,H])=>H.id===_);return O?O[0]:""},u=h.useMemo(()=>K.filter(O=>O.validators?.some(Z=>Z.type==="required")).every(O=>Object.values(f).some(Z=>Z.id===O.id)),[K,f]),p=()=>{if(!u){y(c("Please map all required fields"));return}y(null),r(f,i)},C=d.jsxDEV(d.Fragment,{children:[!s&&t&&d.jsxDEV(qe,{variant:"outline",onClick:t,disabled:a,size:"default",children:c("Back")},void 0,!1,{fileName:"/frontend/src/importer/features/configure-import/index.tsx",lineNumber:264,columnNumber:9},this),s&&d.jsxDEV("div",{},void 0,!1,{fileName:"/frontend/src/importer/features/configure-import/index.tsx",lineNumber:273,columnNumber:22},this),w&&d.jsxDEV("div",{className:"flex-1 mx-4",children:d.jsxDEV("div",{className:"bg-red-50 border border-red-200 rounded-lg px-4 py-2",children:d.jsxDEV("span",{className:ie(Oe.typography.body,"text-red-700"),children:w},void 0,!1,{fileName:"/frontend/src/importer/features/configure-import/index.tsx",lineNumber:277,columnNumber:13},this)},void 0,!1,{fileName:"/frontend/src/importer/features/configure-import/index.tsx",lineNumber:276,columnNumber:11},this)},void 0,!1,{fileName:"/frontend/src/importer/features/configure-import/index.tsx",lineNumber:275,columnNumber:9},this),d.jsxDEV(qe,{onClick:p,isLoading:a,disabled:!u,size:"default",variant:"default",children:c("Continue")},void 0,!1,{fileName:"/frontend/src/importer/features/configure-import/index.tsx",lineNumber:281,columnNumber:7},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/configure-import/index.tsx",lineNumber:262,columnNumber:5},this);return v?d.jsxDEV(hr,{title:c("Configure Import"),subtitle:c("Analyzing your columns..."),footerContent:C,contentClassName:"px-6 py-4",children:d.jsxDEV(xl,{rows:K.length||5},void 0,!1,{fileName:"/frontend/src/importer/features/configure-import/index.tsx",lineNumber:302,columnNumber:9},this)},void 0,!1,{fileName:"/frontend/src/importer/features/configure-import/index.tsx",lineNumber:296,columnNumber:7},this):d.jsxDEV(hr,{title:c("Configure Import"),subtitle:c("Map your CSV columns to the required fields"),footerContent:C,contentClassName:"px-6 py-4",children:d.jsxDEV("div",{className:"overflow-x-auto border border-slate-200 rounded-xl bg-gradient-to-b from-white to-slate-50/50 shadow-sm",children:d.jsxDEV("table",{className:ie(Oe.components.table,"min-w-[600px]"),children:[d.jsxDEV("thead",{className:"bg-slate-50/80 border-b border-slate-200",children:d.jsxDEV("tr",{children:[d.jsxDEV("th",{className:"text-left px-6 py-3.5 w-[30%]",children:d.jsxDEV("span",{className:"text-xs font-semibold text-slate-500 uppercase tracking-wider",children:c("Fields")},void 0,!1,{fileName:"/frontend/src/importer/features/configure-import/index.tsx",lineNumber:319,columnNumber:17},this)},void 0,!1,{fileName:"/frontend/src/importer/features/configure-import/index.tsx",lineNumber:318,columnNumber:15},this),d.jsxDEV("th",{className:"text-left px-6 py-3.5 w-[35%]",children:d.jsxDEV("span",{className:"text-xs font-semibold text-slate-500 uppercase tracking-wider",children:c("CSV Column")},void 0,!1,{fileName:"/frontend/src/importer/features/configure-import/index.tsx",lineNumber:324,columnNumber:17},this)},void 0,!1,{fileName:"/frontend/src/importer/features/configure-import/index.tsx",lineNumber:323,columnNumber:15},this),d.jsxDEV("th",{className:"text-left px-6 py-3.5 w-[35%]",children:d.jsxDEV("span",{className:"text-xs font-semibold text-slate-500 uppercase tracking-wider",children:c("Preview")},void 0,!1,{fileName:"/frontend/src/importer/features/configure-import/index.tsx",lineNumber:329,columnNumber:17},this)},void 0,!1,{fileName:"/frontend/src/importer/features/configure-import/index.tsx",lineNumber:328,columnNumber:15},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/configure-import/index.tsx",lineNumber:317,columnNumber:13},this)},void 0,!1,{fileName:"/frontend/src/importer/features/configure-import/index.tsx",lineNumber:316,columnNumber:11},this),d.jsxDEV("tbody",{children:K.map((_,O)=>{const Z=b(_.id),H=Z!=="",te=_.validators?.some(A=>A.type==="required");return d.jsxDEV("tr",{className:ie("border-b border-slate-100 transition-all duration-200","hover:bg-blue-50/50",E&&"mapping-row-animate"),style:E?{animationDelay:`${O*50}ms`}:void 0,children:[d.jsxDEV("td",{className:"px-6 py-5",children:d.jsxDEV(gl,{className:"gap-2 items-center",children:[H&&d.jsxDEV(tn,{className:"w-5 h-5 text-blue-500 flex-shrink-0 check-pulse"},void 0,!1,{fileName:"/frontend/src/importer/features/configure-import/index.tsx",lineNumber:354,columnNumber:25},this),!H&&te&&d.jsxDEV("div",{className:"w-5 h-5 rounded-full border-2 border-dashed border-slate-300 flex-shrink-0 flex items-center justify-center",children:d.jsxDEV("div",{className:"w-1.5 h-1.5 rounded-full bg-slate-300"},void 0,!1,{fileName:"/frontend/src/importer/features/configure-import/index.tsx",lineNumber:358,columnNumber:27},this)},void 0,!1,{fileName:"/frontend/src/importer/features/configure-import/index.tsx",lineNumber:357,columnNumber:25},this),!H&&!te&&d.jsxDEV(It,{className:"w-5 h-5 flex-shrink-0"},void 0,!1,{fileName:"/frontend/src/importer/features/configure-import/index.tsx",lineNumber:362,columnNumber:25},this),d.jsxDEV("span",{className:Oe.typography.body,children:[_.label,te&&d.jsxDEV("span",{className:"text-red-500 ml-1",children:"*"},void 0,!1,{fileName:"/frontend/src/importer/features/configure-import/index.tsx",lineNumber:367,columnNumber:27},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/configure-import/index.tsx",lineNumber:364,columnNumber:23},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/configure-import/index.tsx",lineNumber:352,columnNumber:21},this)},void 0,!1,{fileName:"/frontend/src/importer/features/configure-import/index.tsx",lineNumber:351,columnNumber:19},this),d.jsxDEV("td",{className:"px-6 py-5",children:d.jsxDEV(hl,{value:Z,onValueChange:A=>$(_.id,A),placeholder:c("Select..."),className:"h-9 w-full max-w-[250px]",options:[{value:"none",label:"— None —"},...F.map((A,N)=>{const W=Object.keys(f).includes(N.toString())&&f[N].id!==_.id;return{value:N.toString(),label:W?`${A} (mapped)`:A,disabled:W}})]},void 0,!1,{fileName:"/frontend/src/importer/features/configure-import/index.tsx",lineNumber:373,columnNumber:21},this)},void 0,!1,{fileName:"/frontend/src/importer/features/configure-import/index.tsx",lineNumber:372,columnNumber:19},this),d.jsxDEV("td",{className:"px-6 py-5",children:Z?d.jsxDEV("div",{className:"flex flex-wrap gap-1.5 max-w-[320px]",children:me(parseInt(Z)).split(", ").filter(Boolean).slice(0,3).map((A,N)=>d.jsxDEV("span",{className:"inline-flex px-2 py-0.5 text-xs bg-slate-100 text-slate-600 rounded-md truncate max-w-[100px]",title:A,children:A},N,!1,{fileName:"/frontend/src/importer/features/configure-import/index.tsx",lineNumber:397,columnNumber:27},this))},void 0,!1,{fileName:"/frontend/src/importer/features/configure-import/index.tsx",lineNumber:395,columnNumber:23},this):d.jsxDEV("span",{className:"text-sm text-slate-400",children:"—"},void 0,!1,{fileName:"/frontend/src/importer/features/configure-import/index.tsx",lineNumber:407,columnNumber:23},this)},void 0,!1,{fileName:"/frontend/src/importer/features/configure-import/index.tsx",lineNumber:393,columnNumber:19},this)]},_.id,!0,{fileName:"/frontend/src/importer/features/configure-import/index.tsx",lineNumber:342,columnNumber:17},this)})},void 0,!1,{fileName:"/frontend/src/importer/features/configure-import/index.tsx",lineNumber:335,columnNumber:11},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/configure-import/index.tsx",lineNumber:315,columnNumber:9},this)},void 0,!1,{fileName:"/frontend/src/importer/features/configure-import/index.tsx",lineNumber:314,columnNumber:7},this)},void 0,!1,{fileName:"/frontend/src/importer/features/configure-import/index.tsx",lineNumber:308,columnNumber:5},this)}function Lt({onFileSelect:o,accept:e={},disabled:r=!1,loading:t=!1,className:a="",children:n}){const[l,s]=h.useState(!1),c=h.useRef(null),i=Object.entries(e).flatMap(([k,j])=>[k,...j]).join(","),f=k=>Object.keys(e).length===0?!0:Object.entries(e).some(([j,F])=>{if(k.type===j)return!0;const de=`.${k.name.split(".").pop()?.toLowerCase()}`;return F.includes(de)}),T=k=>{f(k)&&o(k)},w=k=>{const j=k.target;j.files&&j.files[0]&&(T(j.files[0]),j.value="")},y=k=>{k.preventDefault(),k.stopPropagation(),s(!1),!(r||t)&&k.dataTransfer?.files&&k.dataTransfer.files[0]&&T(k.dataTransfer.files[0])},v=k=>{k.preventDefault(),k.stopPropagation(),!r&&!t&&s(!0)},x=k=>{k.preventDefault(),k.stopPropagation();const j=k.currentTarget.getBoundingClientRect(),F=k.clientX,de=k.clientY;(F<j.left||F>=j.right||de<j.top||de>=j.bottom)&&s(!1)},E=()=>{!r&&!t&&c.current?.click()};return d.jsxDEV("div",{className:`${a} ${l?"drag-active":""} ${r||t?"opacity-50 cursor-not-allowed":"cursor-pointer"}`,onClick:E,onDrop:y,onDragOver:v,onDragEnter:v,onDragLeave:x,children:[d.jsxDEV("input",{ref:c,id:"file-upload",type:"file",accept:i,onChange:w,disabled:r||t,style:{display:"none"},"aria-label":"Choose file to upload"},void 0,!1,{fileName:"/frontend/src/importer/components/UploaderWrapper/NativeDropzone.tsx",lineNumber:104,columnNumber:7},this),n||d.jsxDEV("div",{className:"flex flex-col items-center justify-center py-12",children:[d.jsxDEV(ro,{className:"w-12 h-12 text-gray-400 mb-4"},void 0,!1,{fileName:"/frontend/src/importer/components/UploaderWrapper/NativeDropzone.tsx",lineNumber:116,columnNumber:11},this),d.jsxDEV("p",{className:"text-sm text-gray-600",children:l?"Drop file here":"Drag and drop or click to upload"},void 0,!1,{fileName:"/frontend/src/importer/components/UploaderWrapper/NativeDropzone.tsx",lineNumber:117,columnNumber:11},this)]},void 0,!0,{fileName:"/frontend/src/importer/components/UploaderWrapper/NativeDropzone.tsx",lineNumber:115,columnNumber:9},this)]},void 0,!0,{fileName:"/frontend/src/importer/components/UploaderWrapper/NativeDropzone.tsx",lineNumber:96,columnNumber:5},this)}function Nl({onSuccess:o,setDataError:e,...r}){const[t,a]=h.useState(!1),{t:n}=rr(),[l,s]=h.useState(!1);h.useEffect(()=>{const f=()=>{s(window.innerWidth<=480)};return f(),window.addEventListener("resize",f),()=>window.removeEventListener("resize",f)},[]);const c=async f=>{a(!0),o(f),a(!1)},i={"application/vnd.ms-excel":[".xls"],"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":[".xlsx"],"text/csv":[".csv"]};return d.jsxDEV(Lt,{onFileSelect:c,accept:i,disabled:t,loading:t,className:`
|
|
100
113
|
group
|
|
101
114
|
w-full flex justify-center items-center flex-col
|
|
102
115
|
bg-gradient-to-b from-slate-50 to-slate-100
|
|
@@ -108,16 +121,16 @@ License: MIT
|
|
|
108
121
|
[&.drag-active]:bg-gradient-to-b [&.drag-active]:from-blue-50 [&.drag-active]:to-blue-100
|
|
109
122
|
[&.drag-active]:shadow-xl [&.drag-active]:shadow-blue-500/20
|
|
110
123
|
[&.drag-active]:scale-[1.02]
|
|
111
|
-
${
|
|
124
|
+
${l?"min-h-[220px] py-8 px-6":"min-h-[380px] py-12 px-10"}
|
|
112
125
|
border-slate-200
|
|
113
|
-
`,children:[
|
|
126
|
+
`,children:[d.jsxDEV(It,{className:`
|
|
114
127
|
mb-6 p-5 rounded-2xl
|
|
115
128
|
bg-white shadow-sm
|
|
116
129
|
border border-slate-200
|
|
117
130
|
transition-all duration-300 ease-out
|
|
118
131
|
group-hover:shadow-md group-hover:scale-110 group-hover:border-blue-200
|
|
119
132
|
[.drag-active_&]:scale-125 [.drag-active_&]:shadow-lg [.drag-active_&]:bg-blue-500
|
|
120
|
-
`,children:l.jsx(Qr,{size:d?36:52,className:"text-slate-400 transition-colors duration-300 group-hover:text-blue-500 [.drag-active_&]:text-white",strokeWidth:1.5})}),t?l.jsx(Dr,{className:`${d?"text-base":"text-lg"} font-medium text-slate-700`,children:n("Loading...")}):l.jsxs(l.Fragment,{children:[l.jsx(Dr,{className:`${d?"text-base":"text-lg"} font-semibold text-slate-800 mb-2 transition-colors duration-300 group-hover:text-blue-600`,children:n("Drop a file or click to browse")}),l.jsx(Dr,{className:"text-sm text-slate-500",children:n("CSV, XLS, or XLSX up to 50MB")})]})]})}function yd({columns:o,skipHeaderRowSelection:e,onSuccess:r,showDownloadTemplateButton:t,setDataError:a}){const n=l.jsx(xd,{onSuccess:r,skipHeaderRowSelection:e,setDataError:a});t=t??!0;const{t:d}=rr(),c=o?.filter(f=>f.validators?.some(E=>E.type==="required"))||[],i=o?.filter(f=>!f.validators?.some(E=>E.type==="required"))||[];function s(){const E=(o||[]).map(y=>y.label).join(","),v=document.createElement("a");v.href=URL.createObjectURL(new Blob([E],{type:"text/csv"})),v.download="template.csv",v.click()}return l.jsx(hr,{title:d("Upload file"),subtitle:d("Choose a CSV or Excel file to import your data"),contentClassName:"px-6 py-6",children:l.jsx("div",{className:"w-full max-w-[1200px] mx-auto",children:l.jsxs("div",{className:ce("grid gap-8 w-full items-start",o&&o.length>0?"grid-cols-[320px_1fr]":"grid-cols-1"),children:[o&&o.length>0&&l.jsxs("div",{className:"p-6 h-fit sticky top-4 bg-white border border-slate-200 rounded-xl shadow-sm",children:[c.length>0&&l.jsxs("div",{className:"mb-6",children:[l.jsxs("div",{className:"flex items-center gap-2 mb-3",children:[l.jsx("span",{className:"w-2 h-2 rounded-full bg-blue-500"}),l.jsx("span",{className:"text-xs font-semibold text-slate-500 uppercase tracking-wider",children:d("Required")})]}),l.jsx("div",{className:"flex flex-wrap gap-2",children:c.map(f=>l.jsx("span",{className:"px-3 py-1.5 text-sm font-medium bg-slate-100 text-slate-700 rounded-lg",children:f.label},f.id))})]}),i.length>0&&l.jsxs("div",{className:"mb-6",children:[l.jsxs("div",{className:"flex items-center gap-2 mb-3",children:[l.jsx("span",{className:"w-2 h-2 rounded-full bg-slate-300"}),l.jsx("span",{className:"text-xs font-semibold text-slate-500 uppercase tracking-wider",children:d("Optional")})]}),l.jsx("div",{className:"flex flex-wrap gap-2",children:i.map(f=>l.jsx("span",{className:"px-3 py-1.5 text-sm bg-slate-50 text-slate-500 rounded-lg border border-slate-200",children:f.label},f.id))})]}),t&&l.jsxs("div",{className:"pt-5 border-t border-slate-200",children:[l.jsxs("div",{className:"flex items-start gap-3 p-3 rounded-lg bg-amber-50 border border-amber-200 mb-4",children:[l.jsx(Ya,{className:"h-4 w-4 text-amber-600 flex-shrink-0 mt-0.5"}),l.jsx("p",{className:"text-sm text-amber-800 leading-relaxed",children:d("Make sure your file includes all the required columns.")})]}),l.jsxs(Ue,{onClick:s,variant:"outline",className:"w-full group hover:border-blue-400 hover:bg-blue-50 transition-all duration-200",children:[l.jsx(en,{className:"w-4 h-4 mr-2 transition-transform group-hover:-translate-y-0.5"}),d("Download CSV template")]})]})]}),l.jsx("div",{className:"",children:n})]})})})}const _d=o=>o||"https://api.importcsv.com",vd="importcsv",wd=Te(function({children:e,className:r="",primaryColor:t},a){const n=p.useRef(null),d=a||n;return p.useEffect(()=>{const c=new MutationObserver(i=>{for(const s of i)s.addedNodes.forEach(f=>{f.nodeType===Node.ELEMENT_NODE&&f.id?.includes("portal")&&f.classList.add(vd)})});return c.observe(document.body,{childList:!0,subtree:!1}),()=>c.disconnect()},[]),p.useEffect(()=>{const c=d?.current||n.current;t&&c&&(c.style.setProperty("--color-primary",t),c.style.setProperty("--color-primary-hover",t))},[t]),l.jsx("div",{ref:n,className:`${r} min-h-0 w-full overflow-auto bg-white h-full`,style:{isolation:"isolate"},children:e})});function kd(o){return{text:"string",string:"string",number:"number",email:"email",date:"date",phone:"phone",select:"select",boolean:"string",custom_regex:"string"}[o]||"string"}function Sd(o){const{isModal:e=!0,modalOnCloseTriggered:r=()=>null,onComplete:t,customStyles:a,showDownloadTemplateButton:n,skipHeaderRowSelection:d,invalidRowHandling:c="block",includeUnmatchedColumns:i=!1,importerKey:s,columns:f,schema:E,backendUrl:v,user:y,metadata:x,demoData:h}=o,S=d??!1,w=!!h,N=!s,L=_d(v||""),{t:le}=rr();Xn(od("customStyles",a));const ge=w?ve.MapColumns:ve.Upload,{currentStep:K,setStep:V,goNext:u,goBack:b,stepper:g}=ld(ge,S,w),[C,_]=p.useState(null),[I,$]=p.useState(null),Y={fileName:"",rows:[],sheetList:[],errors:[]},[oe,A]=p.useState(Y),[k,F]=p.useState(0),[be,H]=p.useState({}),[B,m]=p.useState(!1),[Z,te]=p.useState(0),[M,R]=p.useState(!1),[z,j]=p.useState([]),[D,T]=p.useState(i),[Q,se]=p.useState(c==="exclude"),[ee,ae]=p.useState(c==="block");p.useEffect(()=>{w&&h&&co.parse(h.csvContent,{complete:function(_e){const ke=_e.data,me=J=>J.some(ue=>ue.toString().trim()!==""),Ce=ke.filter(me).map((J,ue)=>({index:ue,values:J}));A({fileName:h.fileName,rows:Ce,sheetList:[],errors:_e.errors.map(J=>J.message)})},error:function(_e){console.error("Papa.parse error:",_e)}})},[w,h]),p.useEffect(()=>{(async()=>{if(N){if(!f){_("Please provide 'columns' for standalone mode or 'importerKey' for backend mode.");return}j(f);return}if(!s){_("ImporterKey is required for backend mode.");return}try{const ke=await fetch(`${L}/api/v1/imports/key/schema?importer_key=${s}`);if(!ke.ok)throw new Error(`Failed to fetch schema: ${ke.statusText}`);const me=await ke.json();me.include_unmatched_columns!==void 0&&T(me.include_unmatched_columns),me.filter_invalid_rows!==void 0&&se(me.filter_invalid_rows),me.disable_on_invalid_rows!==void 0&&ae(me.disable_on_invalid_rows),me.dark_mode!==void 0&&o.darkMode;const Ce=me.fields.map(J=>{const ue={id:J.id||J.name,label:J.label||J.display_name||J.name.replace(/_/g," ").replace(/-/g," ").replace(/\b\w/g,ye=>ye.toUpperCase()),type:kd(J.type)};if(J.validators&&Array.isArray(J.validators))ue.validators=J.validators;else{const ye=[];J.required&&ye.push({type:"required",message:J.validation_error_message}),ye.length>0&&(ue.validators=ye)}return J.transformations&&Array.isArray(J.transformations)&&(ue.transformations=J.transformations),J.options&&Array.isArray(J.options)?ue.options=J.options:J.type==="select"&&J.validation_format?ue.options=J.validation_format.split(",").map(ye=>ye.trim()):J.validation_format&&J.type!=="select"&&(ue.validators||(ue.validators=[]),ue.validators.some(De=>De.type==="regex")||ue.validators.push({type:"regex",pattern:J.validation_format,message:J.validation_error_message})),ue});j(Ce)}catch(ke){_(`Failed to fetch schema: ${ke instanceof Error?ke.message:String(ke)}`)}})()},[s,L,N,f]),p.useEffect(()=>{!w&&oe.rows.length===0&&K!==ve.Upload&&re()},[oe,w]);const re=()=>{A(Y),F(0),H({}),$(null),V(ve.Upload)},Se=()=>{e&&(r&&r(),K===ve.Complete&&re())},X=_e=>{A(_e),m(!0);const ke=(k||0)+1,me=_e.rows[k||0],Ce=_e.rows.slice(ke).map(we=>{const Oe={data:{},unmapped_data:{}};return we.values.forEach((je,Pe)=>{const Be=be[Pe],to=me.values[Pe],ao=je==null||je===""||typeof je=="number"&&isNaN(je)?"":je.toString();if(Be&&Be.include)Oe.data[Be.id]=ao;else if(D&&to){const Bt=to.toString().toLowerCase().replace(/\s+/g,"_");Oe.unmapped_data[Bt]=ao}}),Oe});if(te(Ce.length),Object.values(be).filter(({include:we})=>we),N){const we=Ce.map(Oe=>Oe.data);t&&t(we),m(!1),u();return}if(!s){$("ImporterKey is required for backend mode."),m(!1);return}const J={validData:Ce,invalidData:[]},ue={};Object.entries(be).forEach(([we,Oe])=>{Oe.include&&(ue[we]=Oe.id)});const ye=`${L}/api/v1/imports/key/process`,De={...J,columnMapping:ue,user:y||{},metadata:x||{},importer_key:s||""};fetch(ye,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(De)}).then(we=>{if(!we.ok)throw new Error(`Failed to process import: ${we.statusText}`);return we.json()}).then(we=>{we.success?t&&t([]):t&&t([])}).catch(we=>{t&&t([])}),m(!1),u()},xe=()=>{b(ve.MapColumns)};if(C)return l.jsx("div",{className:"flex flex-col h-auto min-h-[400px] p-4 w-full box-border overflow-auto",children:l.jsx(go,{error:C,centered:!0})});const Re=()=>{switch(K){case ve.Upload:return l.jsx(yd,{columns:z||f,skipHeaderRowSelection:S||!1,showDownloadTemplateButton:n,setDataError:$,onSuccess:async _e=>{$(null);const ke=_e.name.slice(_e.name.lastIndexOf(".")+1);if(!["csv","xls","xlsx"].includes(ke)){$(le("Only CSV, XLS, and XLSX files can be uploaded"));return}const me=new FileReader,Ce=J=>J.some(ue=>ue.toString().trim()!=="");switch(me.onload=async J=>{const ue=J?.target?.result;if(ue)switch(ke){case"csv":co.parse(ue.toString(),{complete:function(ye){const we=ye.data.filter(Ce).map((Oe,je)=>({index:je,values:Oe}));A({fileName:_e.name,rows:we,sheetList:[],errors:ye.errors.map(Oe=>Oe.message)}),u()}});break;case"xlsx":case"xls":R(!0),$(null),import("xlsx").then(ye=>{const De=ye.read(ue,{type:"binary"}),we=De.SheetNames,je=ye.utils.sheet_to_json(De.Sheets[we[0]],{header:1}).filter(Ce).map((Pe,Be)=>({index:Be,values:Pe}));A({fileName:_e.name,rows:je,sheetList:we,errors:[]}),R(!1),u()}).catch(ye=>{const we=ye.message?.includes("Cannot find module")||ye.message?.includes("Failed to fetch dynamically imported module")?"Excel support requires the 'xlsx' package. Please install it with: npm install xlsx":"Failed to load Excel parser. Please try again or use CSV format.";$(we),R(!1),console.error("Failed to load XLSX library:",ye)});break}},ke){case"csv":me.readAsText(_e,"utf-8");break;case"xlsx":case"xls":me.readAsBinaryString(_e);break}}});case ve.RowSelection:return u(),null;case ve.MapColumns:return l.jsx(hd,{columns:z||f,data:oe,onSuccess:(_e,ke)=>{H(_e),F(ke),u()},onCancel:w?void 0:()=>b(ve.Upload),isSubmitting:B,importerKey:s,backendUrl:L,isDemoMode:w});case ve.Validation:return l.jsx(Kn,{columns:z||f,schema:E,data:oe,columnMapping:be,selectedHeaderRow:k,onSuccess:X,onCancel:xe,isSubmitting:B,backendUrl:L,importerKey:s,filterInvalidRows:Q,disableOnInvalidRows:ee});case ve.Complete:return l.jsx(cd,{reload:re,close:Se,isModal:e,rowCount:Z});default:return null}},Ee=l.jsxs("div",{className:ce("flex flex-col h-auto min-h-[400px] p-4 w-full box-border overflow-visible"),children:[l.jsx("div",{children:l.jsx(un,{...g})}),l.jsx("div",{className:"flex-1 overflow-visible min-w-0 w-full",children:Re()}),(!!I||M)&&l.jsxs("div",{className:"flex items-center justify-between gap-4 px-2 pb-2",children:[l.jsx("div",{}),M?l.jsxs("div",{className:"text-center p-5",children:[l.jsx("div",{className:"mb-2",children:l.jsx("span",{className:"text-base",children:"Loading Excel parser..."})}),l.jsx("small",{className:"opacity-70 text-xs",children:"This may take a moment on first use"})]}):l.jsx(go,{error:I,centered:!0}),l.jsx("div",{})]}),e&&l.jsx("button",{className:ce("absolute right-2 top-2 rounded-full","min-w-[36px] h-[36px] aspect-square text-xl p-0","hover:bg-gray-100 transition-colors"),"aria-label":"Close",onClick:Se,children:l.jsx(gt,{className:"h-5 w-5"})})]});return l.jsx(wd,{primaryColor:o.primaryColor,children:l.jsx("div",{className:"csv-importer relative","data-theme":o.darkMode?"dark":"light",children:Ee})})}const Me={colors:{primary:"#2563eb",primaryHover:"#1d4ed8",primaryForeground:"#ffffff",secondary:"#f3f4f6",secondaryHover:"#e5e7eb",secondaryForeground:"#111827",background:"#ffffff",foreground:"#111827",card:"#ffffff",cardForeground:"#111827",border:"#e5e7eb",input:"#e5e7eb",ring:"#2563eb",muted:"#f9fafb",mutedForeground:"#6b7280",accent:"#f3f4f6",accentForeground:"#111827",destructive:"#ef4444",destructiveForeground:"#ffffff",success:"#10b981",successForeground:"#ffffff",warning:"#f59e0b",warningForeground:"#ffffff",info:"#3b82f6",infoForeground:"#ffffff"},typography:{fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',fontFamilyMono:'ui-monospace, SFMono-Regular, "SF Mono", Consolas, monospace',fontSize:{xs:"0.75rem",sm:"0.875rem",base:"1rem",lg:"1.125rem",xl:"1.25rem","2xl":"1.5rem","3xl":"1.875rem"},fontWeight:{light:300,normal:400,medium:500,semibold:600,bold:700},lineHeight:{tight:"1.25",normal:"1.5",relaxed:"1.75"}},spacing:{xs:"0.25rem",sm:"0.5rem",md:"1rem",lg:"1.5rem",xl:"2rem","2xl":"3rem","3xl":"4rem"},borders:{radius:{none:"0",sm:"0.25rem",md:"0.5rem",lg:"0.75rem",xl:"1rem",full:"9999px"},width:{none:"0",thin:"1px",medium:"2px",thick:"4px"}},shadows:{sm:"0 1px 2px 0 rgb(0 0 0 / 0.05)",md:"0 4px 6px -1px rgb(0 0 0 / 0.1)",lg:"0 10px 15px -3px rgb(0 0 0 / 0.1)",xl:"0 20px 25px -5px rgb(0 0 0 / 0.1)"},animations:{duration:{fast:"200ms",normal:"300ms",slow:"500ms"},easing:"cubic-bezier(0.4, 0, 0.2, 1)"}},No={default:Me,minimal:{...Me,colors:{...Me.colors,primary:"#000000",primaryHover:"#333333",secondary:"#ffffff",secondaryForeground:"#000000",border:"#e5e5e5"},typography:{...Me.typography,fontFamily:"system-ui, -apple-system, sans-serif"},borders:{...Me.borders,radius:{none:"0",sm:"2px",md:"4px",lg:"6px",xl:"8px",full:"9999px"}}},modern:{...Me,colors:{...Me.colors,primary:"#6366f1",primaryHover:"#4f46e5",secondary:"#f0f9ff",secondaryForeground:"#1e293b",accent:"#10b981",accentForeground:"#ffffff"},typography:{...Me.typography,fontFamily:'"Inter", -apple-system, BlinkMacSystemFont, sans-serif'},borders:{...Me.borders,radius:{none:"0",sm:"8px",md:"12px",lg:"16px",xl:"20px",full:"9999px"}},shadows:{sm:"0 2px 4px rgba(0,0,0,0.08)",md:"0 4px 8px rgba(0,0,0,0.12)",lg:"0 8px 16px rgba(0,0,0,0.16)",xl:"0 12px 24px rgba(0,0,0,0.20)"}},compact:{...Me,spacing:{xs:"2px",sm:"4px",md:"8px",lg:"12px",xl:"16px","2xl":"24px","3xl":"32px"},components:{button:{height:"32px",padding:"0 12px",fontSize:"13px"},input:{height:"32px",padding:"0 8px",fontSize:"13px"},table:{cellPadding:"6px 8px"}}},dark:{...Me,colors:{primary:"#3b82f6",primaryHover:"#2563eb",primaryForeground:"#ffffff",secondary:"#1f2937",secondaryHover:"#374151",secondaryForeground:"#f9fafb",background:"#111827",foreground:"#f9fafb",card:"#1f2937",cardForeground:"#f9fafb",border:"#374151",input:"#374151",ring:"#3b82f6",muted:"#1f2937",mutedForeground:"#9ca3af",accent:"#374151",accentForeground:"#f9fafb",destructive:"#dc2626",destructiveForeground:"#ffffff",success:"#10b981",successForeground:"#ffffff",warning:"#f59e0b",warningForeground:"#ffffff",info:"#3b82f6",infoForeground:"#ffffff"}}};function Er(o,e){const r={...o};return Object.keys(e).forEach(t=>{const a=t;typeof e[a]=="object"&&!Array.isArray(e[a])&&e[a]!==null?r[a]=Er(o[a]||{},e[a]):r[a]=e[a]}),r}function Cd(o){const e={};return o.colors&&Object.entries(o.colors).forEach(([r,t])=>{t&&(e[`--csv-color-${Xe(r)}`]=t)}),o.typography&&(o.typography.fontFamily&&(e["--csv-font-family"]=o.typography.fontFamily),o.typography.fontFamilyMono&&(e["--csv-font-family-mono"]=o.typography.fontFamilyMono),o.typography.fontSize&&Object.entries(o.typography.fontSize).forEach(([r,t])=>{t&&(e[`--csv-text-${r}`]=t)}),o.typography.fontWeight&&Object.entries(o.typography.fontWeight).forEach(([r,t])=>{t&&(e[`--csv-font-${r}`]=String(t))}),o.typography.lineHeight&&Object.entries(o.typography.lineHeight).forEach(([r,t])=>{t&&(e[`--csv-leading-${r}`]=t)})),o.spacing&&Object.entries(o.spacing).forEach(([r,t])=>{t&&(e[`--csv-spacing-${r}`]=t)}),o.borders&&(o.borders.radius&&Object.entries(o.borders.radius).forEach(([r,t])=>{t&&(e[`--csv-radius-${r}`]=t)}),o.borders.width&&Object.entries(o.borders.width).forEach(([r,t])=>{t&&(e[`--csv-border-${r}`]=t)})),o.shadows&&Object.entries(o.shadows).forEach(([r,t])=>{t&&(e[`--csv-shadow-${r}`]=t)}),o.animations&&(o.animations.duration&&Object.entries(o.animations.duration).forEach(([r,t])=>{t&&(e[`--csv-duration-${r}`]=t)}),o.animations.easing&&(e["--csv-easing"]=o.animations.easing)),o.components&&(o.components.button&&Object.entries(o.components.button).forEach(([r,t])=>{t&&(e[`--csv-button-${Xe(r)}`]=t)}),o.components.input&&Object.entries(o.components.input).forEach(([r,t])=>{t&&(e[`--csv-input-${Xe(r)}`]=t)}),o.components.modal&&Object.entries(o.components.modal).forEach(([r,t])=>{t&&(e[`--csv-modal-${Xe(r)}`]=t)}),o.components.table&&Object.entries(o.components.table).forEach(([r,t])=>{t&&(e[`--csv-table-${Xe(r)}`]=t)}),o.components.stepper&&Object.entries(o.components.stepper).forEach(([r,t])=>{t&&(e[`--csv-stepper-${Xe(r)}`]=t)}),o.components.dropzone&&Object.entries(o.components.dropzone).forEach(([r,t])=>{t&&(e[`--csv-dropzone-${Xe(r)}`]=t)})),e}function jd(o,e){Object.entries(e).forEach(([r,t])=>{o.style.setProperty(r,t)})}function Xe(o){return o.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}function Nd({children:o,theme:e,primaryColor:r,customStyles:t,targetElement:a}){const n=p.useMemo(()=>{let d=Me;return typeof e=="string"&&e in No?d=Er(Me,No[e]):typeof e=="object"&&(d=Er(Me,e)),r&&(d=Er(d,{colors:{primary:r,primaryHover:r}})),d},[e,r]);return p.useEffect(()=>{const d=Cd(n),c=a||document.querySelector(".importcsv")||document.documentElement;if(c){if(jd(c,d),t){const i=typeof t=="string"?JSON.parse(t):t;Object.entries(i).forEach(([s,f])=>{c.style.setProperty(`--${s}`,f)})}r&&ed(r,c)}},[n,t,r,a]),l.jsx(l.Fragment,{children:o})}function Ed({children:o,theme:e,primaryColor:r,customStyles:t,targetElement:a}){return l.jsx(Nd,{theme:e,primaryColor:r,customStyles:t,targetElement:a,children:o})}const Od={},Eo=o=>{let e;const r=new Set,t=(f,E)=>{const v=typeof f=="function"?f(e):f;if(!Object.is(v,e)){const y=e;e=E??(typeof v!="object"||v===null)?v:Object.assign({},e,v),r.forEach(x=>x(e,y))}},a=()=>e,i={setState:t,getState:a,getInitialState:()=>s,subscribe:f=>(r.add(f),()=>r.delete(f)),destroy:()=>{(Od?"react":void 0)!=="production"&&console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected."),r.clear()}},s=e=o(t,a,i);return i},Id=o=>o?Eo(o):Eo;var Vr={exports:{}},Lr={},Pr={exports:{}},$r={},Oo;function Rd(){if(Oo)return $r;Oo=1;/**
|
|
133
|
+
`,children:d.jsxDEV(ro,{size:l?36:52,className:"text-slate-400 transition-colors duration-300 group-hover:text-blue-500 [.drag-active_&]:text-white",strokeWidth:1.5},void 0,!1,{fileName:"/frontend/src/importer/components/UploaderWrapper/UploaderWrapper.tsx",lineNumber:67,columnNumber:9},this)},void 0,!1,{fileName:"/frontend/src/importer/components/UploaderWrapper/UploaderWrapper.tsx",lineNumber:57,columnNumber:7},this),t?d.jsxDEV(Pr,{className:`${l?"text-base":"text-lg"} font-medium text-slate-700`,children:n("Loading...")},void 0,!1,{fileName:"/frontend/src/importer/components/UploaderWrapper/UploaderWrapper.tsx",lineNumber:75,columnNumber:9},this):d.jsxDEV(d.Fragment,{children:[d.jsxDEV(Pr,{className:`${l?"text-base":"text-lg"} font-semibold text-slate-800 mb-2 transition-colors duration-300 group-hover:text-blue-600`,children:n("Drop a file or click to browse")},void 0,!1,{fileName:"/frontend/src/importer/components/UploaderWrapper/UploaderWrapper.tsx",lineNumber:80,columnNumber:11},this),d.jsxDEV(Pr,{className:"text-sm text-slate-500",children:n("CSV, XLS, or XLSX up to 50MB")},void 0,!1,{fileName:"/frontend/src/importer/components/UploaderWrapper/UploaderWrapper.tsx",lineNumber:85,columnNumber:11},this)]},void 0,!0,{fileName:"/frontend/src/importer/components/UploaderWrapper/UploaderWrapper.tsx",lineNumber:79,columnNumber:9},this)]},void 0,!0,{fileName:"/frontend/src/importer/components/UploaderWrapper/UploaderWrapper.tsx",lineNumber:35,columnNumber:5},this)}function El({columns:o,skipHeaderRowSelection:e,onSuccess:r,showDownloadTemplateButton:t,setDataError:a}){const n=d.jsxDEV(Nl,{onSuccess:r,skipHeaderRowSelection:e,setDataError:a},void 0,!1,{fileName:"/frontend/src/importer/features/uploader/index.tsx",lineNumber:19,columnNumber:5},this);t=t??!0;const{t:l}=rr(),s=o?.filter(f=>f.validators?.some(T=>T.type==="required"))||[],c=o?.filter(f=>!f.validators?.some(T=>T.type==="required"))||[];function i(){const T=(o||[]).map(y=>y.label).join(","),w=document.createElement("a");w.href=URL.createObjectURL(new Blob([T],{type:"text/csv"})),w.download="template.csv",w.click()}return d.jsxDEV(hr,{title:l("Upload file"),subtitle:l("Choose a CSV or Excel file to import your data"),contentClassName:"px-6 py-6",children:d.jsxDEV("div",{className:"w-full max-w-[1200px] mx-auto",children:d.jsxDEV("div",{className:ie("grid gap-8 w-full items-start",o&&o.length>0?"grid-cols-[320px_1fr]":"grid-cols-1"),children:[o&&o.length>0&&d.jsxDEV("div",{className:"p-6 h-fit sticky top-4 bg-white border border-slate-200 rounded-xl shadow-sm",children:[s.length>0&&d.jsxDEV("div",{className:"mb-6",children:[d.jsxDEV("div",{className:"flex items-center gap-2 mb-3",children:[d.jsxDEV("span",{className:"w-2 h-2 rounded-full bg-blue-500"},void 0,!1,{fileName:"/frontend/src/importer/features/uploader/index.tsx",lineNumber:68,columnNumber:21},this),d.jsxDEV("span",{className:"text-xs font-semibold text-slate-500 uppercase tracking-wider",children:l("Required")},void 0,!1,{fileName:"/frontend/src/importer/features/uploader/index.tsx",lineNumber:69,columnNumber:21},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/uploader/index.tsx",lineNumber:67,columnNumber:19},this),d.jsxDEV("div",{className:"flex flex-wrap gap-2",children:s.map(f=>d.jsxDEV("span",{className:"px-3 py-1.5 text-sm font-medium bg-slate-100 text-slate-700 rounded-lg",children:f.label},f.id,!1,{fileName:"/frontend/src/importer/features/uploader/index.tsx",lineNumber:75,columnNumber:23},this))},void 0,!1,{fileName:"/frontend/src/importer/features/uploader/index.tsx",lineNumber:73,columnNumber:19},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/uploader/index.tsx",lineNumber:66,columnNumber:17},this),c.length>0&&d.jsxDEV("div",{className:"mb-6",children:[d.jsxDEV("div",{className:"flex items-center gap-2 mb-3",children:[d.jsxDEV("span",{className:"w-2 h-2 rounded-full bg-slate-300"},void 0,!1,{fileName:"/frontend/src/importer/features/uploader/index.tsx",lineNumber:90,columnNumber:21},this),d.jsxDEV("span",{className:"text-xs font-semibold text-slate-500 uppercase tracking-wider",children:l("Optional")},void 0,!1,{fileName:"/frontend/src/importer/features/uploader/index.tsx",lineNumber:91,columnNumber:21},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/uploader/index.tsx",lineNumber:89,columnNumber:19},this),d.jsxDEV("div",{className:"flex flex-wrap gap-2",children:c.map(f=>d.jsxDEV("span",{className:"px-3 py-1.5 text-sm bg-slate-50 text-slate-500 rounded-lg border border-slate-200",children:f.label},f.id,!1,{fileName:"/frontend/src/importer/features/uploader/index.tsx",lineNumber:97,columnNumber:23},this))},void 0,!1,{fileName:"/frontend/src/importer/features/uploader/index.tsx",lineNumber:95,columnNumber:19},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/uploader/index.tsx",lineNumber:88,columnNumber:17},this),t&&d.jsxDEV("div",{className:"pt-5 border-t border-slate-200",children:[d.jsxDEV("div",{className:"flex items-start gap-3 p-3 rounded-lg bg-amber-50 border border-amber-200 mb-4",children:[d.jsxDEV(rn,{className:"h-4 w-4 text-amber-600 flex-shrink-0 mt-0.5"},void 0,!1,{fileName:"/frontend/src/importer/features/uploader/index.tsx",lineNumber:112,columnNumber:21},this),d.jsxDEV("p",{className:"text-sm text-amber-800 leading-relaxed",children:l("Make sure your file includes all the required columns.")},void 0,!1,{fileName:"/frontend/src/importer/features/uploader/index.tsx",lineNumber:113,columnNumber:21},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/uploader/index.tsx",lineNumber:111,columnNumber:19},this),d.jsxDEV(qe,{onClick:i,variant:"outline",className:"w-full group hover:border-blue-400 hover:bg-blue-50 transition-all duration-200",children:[d.jsxDEV(ln,{className:"w-4 h-4 mr-2 transition-transform group-hover:-translate-y-0.5"},void 0,!1,{fileName:"/frontend/src/importer/features/uploader/index.tsx",lineNumber:122,columnNumber:21},this),l("Download CSV template")]},void 0,!0,{fileName:"/frontend/src/importer/features/uploader/index.tsx",lineNumber:117,columnNumber:19},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/uploader/index.tsx",lineNumber:110,columnNumber:17},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/uploader/index.tsx",lineNumber:63,columnNumber:13},this),d.jsxDEV("div",{className:"",children:n},void 0,!1,{fileName:"/frontend/src/importer/features/uploader/index.tsx",lineNumber:131,columnNumber:11},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/uploader/index.tsx",lineNumber:56,columnNumber:9},this)},void 0,!1,{fileName:"/frontend/src/importer/features/uploader/index.tsx",lineNumber:53,columnNumber:7},this)},void 0,!1,{fileName:"/frontend/src/importer/features/uploader/index.tsx",lineNumber:48,columnNumber:5},this)}const Sl=o=>o||"https://api.importcsv.com",Cl="importcsv",Vl=Re(function({children:e,className:r="",primaryColor:t},a){const n=h.useRef(null),l=a||n;return h.useEffect(()=>{const s=new MutationObserver(c=>{for(const i of c)i.addedNodes.forEach(f=>{f.nodeType===Node.ELEMENT_NODE&&f.id?.includes("portal")&&f.classList.add(Cl)})});return s.observe(document.body,{childList:!0,subtree:!1}),()=>s.disconnect()},[]),h.useEffect(()=>{const s=l?.current||n.current;t&&s&&(s.style.setProperty("--color-primary",t),s.style.setProperty("--color-primary-hover",t))},[t]),d.jsxDEV("div",{ref:n,className:`${r} min-h-0 w-full overflow-auto bg-white h-full`,style:{isolation:"isolate"},children:e},void 0,!1,{fileName:"/frontend/src/importer/components/Root/index.tsx",lineNumber:54,columnNumber:5},this)});function Dl(o){return{text:"string",string:"string",number:"number",email:"email",date:"date",phone:"phone",select:"select",boolean:"string",custom_regex:"string"}[o]||"string"}function jl(o){const{isModal:e=!0,modalOnCloseTriggered:r=()=>null,onComplete:t,customStyles:a,showDownloadTemplateButton:n,skipHeaderRowSelection:l,invalidRowHandling:s="block",includeUnmatchedColumns:c=!1,importerKey:i,columns:f,schema:T,backendUrl:w,user:y,metadata:v,demoData:x}=o,E=l??!1,k=!!x,j=!i,F=Sl(w||""),{t:de}=rr();tl(sl("customStyles",a));const me=k?_e.MapColumns:_e.Upload,{currentStep:K,setStep:$,goNext:b,goBack:u,stepper:p}=fl(me,E,k),[C,_]=h.useState(null),[O,Z]=h.useState(null),H={fileName:"",rows:[],sheetList:[],errors:[]},[te,A]=h.useState(H),[N,W]=h.useState(0),[se,m]=h.useState({}),[D,g]=h.useState(!1),[I,Q]=h.useState(0),[z,V]=h.useState(!1),[M,S]=h.useState([]),[L,P]=h.useState(c),[ee,ce]=h.useState(s==="exclude"),[re,ae]=h.useState(s==="block");h.useEffect(()=>{k&&x&&bo.parse(x.csvContent,{complete:function(ve){const ke=ve.data,ge=J=>J.some(be=>be.toString().trim()!==""),Ee=ke.filter(ge).map((J,be)=>({index:be,values:J}));A({fileName:x.fileName,rows:Ee,sheetList:[],errors:ve.errors.map(J=>J.message)})},error:function(ve){console.error("Papa.parse error:",ve)}})},[k,x]),h.useEffect(()=>{(async()=>{if(j){if(!f){_("Please provide 'columns' for standalone mode or 'importerKey' for backend mode.");return}S(f);return}if(!i){_("ImporterKey is required for backend mode.");return}try{const ke=await fetch(`${F}/api/v1/imports/key/schema?importer_key=${i}`);if(!ke.ok)throw new Error(`Failed to fetch schema: ${ke.statusText}`);const ge=await ke.json();ge.include_unmatched_columns!==void 0&&P(ge.include_unmatched_columns),ge.filter_invalid_rows!==void 0&&ce(ge.filter_invalid_rows),ge.disable_on_invalid_rows!==void 0&&ae(ge.disable_on_invalid_rows),ge.dark_mode!==void 0&&o.darkMode;const Ee=ge.fields.map(J=>{const be={id:J.id||J.name,label:J.label||J.display_name||J.name.replace(/_/g," ").replace(/-/g," ").replace(/\b\w/g,ye=>ye.toUpperCase()),type:Dl(J.type)};if(J.validators&&Array.isArray(J.validators))be.validators=J.validators;else{const ye=[];J.required&&ye.push({type:"required",message:J.validation_error_message}),ye.length>0&&(be.validators=ye)}return J.transformations&&Array.isArray(J.transformations)&&(be.transformations=J.transformations),J.options&&Array.isArray(J.options)?be.options=J.options:J.type==="select"&&J.validation_format?be.options=J.validation_format.split(",").map(ye=>ye.trim()):J.validation_format&&J.type!=="select"&&(be.validators||(be.validators=[]),be.validators.some(ze=>ze.type==="regex")||be.validators.push({type:"regex",pattern:J.validation_format,message:J.validation_error_message})),be});S(Ee)}catch(ke){_(`Failed to fetch schema: ${ke instanceof Error?ke.message:String(ke)}`)}})()},[i,F,j,f]),h.useEffect(()=>{!k&&te.rows.length===0&&K!==_e.Upload&&oe()},[te,k]);const oe=()=>{A(H),W(0),m({}),Z(null),$(_e.Upload)},Ne=()=>{e&&(r&&r(),K===_e.Complete&&oe())},X=ve=>{A(ve),g(!0);const ke=(N||0)+1,ge=ve.rows[N||0],Ee=ve.rows.slice(ke).map(we=>{const De={data:{},unmapped_data:{}};return we.values.forEach((Se,Le)=>{const Ue=se[Le],no=ge.values[Le],lo=Se==null||Se===""||typeof Se=="number"&&isNaN(Se)?"":Se.toString();if(Ue&&Ue.include)De.data[Ue.id]=lo;else if(L&&no){const Yt=no.toString().toLowerCase().replace(/\s+/g,"_");De.unmapped_data[Yt]=lo}}),De});if(Q(Ee.length),Object.values(se).filter(({include:we})=>we),j){const we=Ee.map(De=>De.data);t&&t(we),g(!1),b();return}if(!i){Z("ImporterKey is required for backend mode."),g(!1);return}const J={validData:Ee,invalidData:[]},be={};Object.entries(se).forEach(([we,De])=>{De.include&&(be[we]=De.id)});const ye=`${F}/api/v1/imports/key/process`,ze={...J,columnMapping:be,user:y||{},metadata:v||{},importer_key:i||""};fetch(ye,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(ze)}).then(we=>{if(!we.ok)throw new Error(`Failed to process import: ${we.statusText}`);return we.json()}).then(we=>{we.success?t&&t([]):t&&t([])}).catch(we=>{t&&t([])}),g(!1),b()},xe=()=>{u(_e.MapColumns)};if(C)return d.jsxDEV("div",{className:"flex flex-col h-auto min-h-[400px] p-4 w-full box-border overflow-auto",children:d.jsxDEV(xo,{error:C,centered:!0},void 0,!1,{fileName:"/frontend/src/importer/features/main/index.tsx",lineNumber:426,columnNumber:9},this)},void 0,!1,{fileName:"/frontend/src/importer/features/main/index.tsx",lineNumber:425,columnNumber:7},this);const Te=()=>{switch(K){case _e.Upload:return d.jsxDEV(El,{columns:M||f,skipHeaderRowSelection:E||!1,showDownloadTemplateButton:n,setDataError:Z,onSuccess:async ve=>{Z(null);const ke=ve.name.slice(ve.name.lastIndexOf(".")+1);if(!["csv","xls","xlsx"].includes(ke)){Z(de("Only CSV, XLS, and XLSX files can be uploaded"));return}const ge=new FileReader,Ee=J=>J.some(be=>be.toString().trim()!=="");switch(ge.onload=async J=>{const be=J?.target?.result;if(be)switch(ke){case"csv":bo.parse(be.toString(),{complete:function(ye){const we=ye.data.filter(Ee).map((De,Se)=>({index:Se,values:De}));A({fileName:ve.name,rows:we,sheetList:[],errors:ye.errors.map(De=>De.message)}),b()}});break;case"xlsx":case"xls":V(!0),Z(null),import("xlsx").then(ye=>{const ze=ye.read(be,{type:"binary"}),we=ze.SheetNames,Se=ye.utils.sheet_to_json(ze.Sheets[we[0]],{header:1}).filter(Ee).map((Le,Ue)=>({index:Ue,values:Le}));A({fileName:ve.name,rows:Se,sheetList:we,errors:[]}),V(!1),b()}).catch(ye=>{const we=ye.message?.includes("Cannot find module")||ye.message?.includes("Failed to fetch dynamically imported module")?"Excel support requires the 'xlsx' package. Please install it with: npm install xlsx":"Failed to load Excel parser. Please try again or use CSV format.";Z(we),V(!1),console.error("Failed to load XLSX library:",ye)});break}},ke){case"csv":ge.readAsText(ve,"utf-8");break;case"xlsx":case"xls":ge.readAsBinaryString(ve);break}}},void 0,!1,{fileName:"/frontend/src/importer/features/main/index.tsx",lineNumber:435,columnNumber:11},this);case _e.RowSelection:return b(),null;case _e.MapColumns:return d.jsxDEV(kl,{columns:M||f,data:te,onSuccess:(ve,ke)=>{m(ve),W(ke),b()},onCancel:k?void 0:()=>u(_e.Upload),isSubmitting:D,importerKey:i,backendUrl:F,isDemoMode:k},void 0,!1,{fileName:"/frontend/src/importer/features/main/index.tsx",lineNumber:524,columnNumber:11},this);case _e.Validation:return d.jsxDEV(ol,{columns:M||f,schema:T,data:te,columnMapping:se,selectedHeaderRow:N,onSuccess:X,onCancel:xe,isSubmitting:D,backendUrl:F,importerKey:i,filterInvalidRows:ee,disableOnInvalidRows:re},void 0,!1,{fileName:"/frontend/src/importer/features/main/index.tsx",lineNumber:541,columnNumber:11},this);case _e.Complete:return d.jsxDEV(ml,{reload:oe,close:Ne,isModal:e,rowCount:I},void 0,!1,{fileName:"/frontend/src/importer/features/main/index.tsx",lineNumber:557,columnNumber:16},this);default:return null}},Ve=d.jsxDEV("div",{className:ie("flex flex-col h-auto min-h-[400px] p-4 w-full box-border overflow-visible"),children:[d.jsxDEV("div",{children:d.jsxDEV(xn,{...p},void 0,!1,{fileName:"/frontend/src/importer/features/main/index.tsx",lineNumber:568,columnNumber:9},this)},void 0,!1,{fileName:"/frontend/src/importer/features/main/index.tsx",lineNumber:567,columnNumber:7},this),d.jsxDEV("div",{className:"flex-1 overflow-visible min-w-0 w-full",children:Te()},void 0,!1,{fileName:"/frontend/src/importer/features/main/index.tsx",lineNumber:571,columnNumber:7},this),(!!O||z)&&d.jsxDEV("div",{className:"flex items-center justify-between gap-4 px-2 pb-2",children:[d.jsxDEV("div",{},void 0,!1,{fileName:"/frontend/src/importer/features/main/index.tsx",lineNumber:575,columnNumber:11},this),z?d.jsxDEV("div",{className:"text-center p-5",children:[d.jsxDEV("div",{className:"mb-2",children:d.jsxDEV("span",{className:"text-base",children:"Loading Excel parser..."},void 0,!1,{fileName:"/frontend/src/importer/features/main/index.tsx",lineNumber:579,columnNumber:17},this)},void 0,!1,{fileName:"/frontend/src/importer/features/main/index.tsx",lineNumber:578,columnNumber:15},this),d.jsxDEV("small",{className:"opacity-70 text-xs",children:"This may take a moment on first use"},void 0,!1,{fileName:"/frontend/src/importer/features/main/index.tsx",lineNumber:581,columnNumber:15},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/main/index.tsx",lineNumber:577,columnNumber:13},this):d.jsxDEV(xo,{error:O,centered:!0},void 0,!1,{fileName:"/frontend/src/importer/features/main/index.tsx",lineNumber:586,columnNumber:13},this),d.jsxDEV("div",{},void 0,!1,{fileName:"/frontend/src/importer/features/main/index.tsx",lineNumber:588,columnNumber:11},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/main/index.tsx",lineNumber:574,columnNumber:9},this),e&&d.jsxDEV("button",{className:ie("absolute right-2 top-2 rounded-full","min-w-[36px] h-[36px] aspect-square text-xl p-0","hover:bg-gray-100 transition-colors"),"aria-label":"Close",onClick:Ne,children:d.jsxDEV(xt,{className:"h-5 w-5"},void 0,!1,{fileName:"/frontend/src/importer/features/main/index.tsx",lineNumber:602,columnNumber:11},this)},void 0,!1,{fileName:"/frontend/src/importer/features/main/index.tsx",lineNumber:593,columnNumber:9},this)]},void 0,!0,{fileName:"/frontend/src/importer/features/main/index.tsx",lineNumber:564,columnNumber:5},this);return d.jsxDEV(Vl,{primaryColor:o.primaryColor,children:d.jsxDEV("div",{className:"csv-importer relative","data-theme":o.darkMode?"dark":"light",children:Ve},void 0,!1,{fileName:"/frontend/src/importer/features/main/index.tsx",lineNumber:611,columnNumber:7},this)},void 0,!1,{fileName:"/frontend/src/importer/features/main/index.tsx",lineNumber:610,columnNumber:5},this)}const Me={colors:{primary:"#2563eb",primaryHover:"#1d4ed8",primaryForeground:"#ffffff",secondary:"#f3f4f6",secondaryHover:"#e5e7eb",secondaryForeground:"#111827",background:"#ffffff",foreground:"#111827",card:"#ffffff",cardForeground:"#111827",border:"#e5e7eb",input:"#e5e7eb",ring:"#2563eb",muted:"#f9fafb",mutedForeground:"#6b7280",accent:"#f3f4f6",accentForeground:"#111827",destructive:"#ef4444",destructiveForeground:"#ffffff",success:"#10b981",successForeground:"#ffffff",warning:"#f59e0b",warningForeground:"#ffffff",info:"#3b82f6",infoForeground:"#ffffff"},typography:{fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',fontFamilyMono:'ui-monospace, SFMono-Regular, "SF Mono", Consolas, monospace',fontSize:{xs:"0.75rem",sm:"0.875rem",base:"1rem",lg:"1.125rem",xl:"1.25rem","2xl":"1.5rem","3xl":"1.875rem"},fontWeight:{light:300,normal:400,medium:500,semibold:600,bold:700},lineHeight:{tight:"1.25",normal:"1.5",relaxed:"1.75"}},spacing:{xs:"0.25rem",sm:"0.5rem",md:"1rem",lg:"1.5rem",xl:"2rem","2xl":"3rem","3xl":"4rem"},borders:{radius:{none:"0",sm:"0.25rem",md:"0.5rem",lg:"0.75rem",xl:"1rem",full:"9999px"},width:{none:"0",thin:"1px",medium:"2px",thick:"4px"}},shadows:{sm:"0 1px 2px 0 rgb(0 0 0 / 0.05)",md:"0 4px 6px -1px rgb(0 0 0 / 0.1)",lg:"0 10px 15px -3px rgb(0 0 0 / 0.1)",xl:"0 20px 25px -5px rgb(0 0 0 / 0.1)"},animations:{duration:{fast:"200ms",normal:"300ms",slow:"500ms"},easing:"cubic-bezier(0.4, 0, 0.2, 1)"}},To={default:Me,minimal:{...Me,colors:{...Me.colors,primary:"#000000",primaryHover:"#333333",secondary:"#ffffff",secondaryForeground:"#000000",border:"#e5e5e5"},typography:{...Me.typography,fontFamily:"system-ui, -apple-system, sans-serif"},borders:{...Me.borders,radius:{none:"0",sm:"2px",md:"4px",lg:"6px",xl:"8px",full:"9999px"}}},modern:{...Me,colors:{...Me.colors,primary:"#6366f1",primaryHover:"#4f46e5",secondary:"#f0f9ff",secondaryForeground:"#1e293b",accent:"#10b981",accentForeground:"#ffffff"},typography:{...Me.typography,fontFamily:'"Inter", -apple-system, BlinkMacSystemFont, sans-serif'},borders:{...Me.borders,radius:{none:"0",sm:"8px",md:"12px",lg:"16px",xl:"20px",full:"9999px"}},shadows:{sm:"0 2px 4px rgba(0,0,0,0.08)",md:"0 4px 8px rgba(0,0,0,0.12)",lg:"0 8px 16px rgba(0,0,0,0.16)",xl:"0 12px 24px rgba(0,0,0,0.20)"}},compact:{...Me,spacing:{xs:"2px",sm:"4px",md:"8px",lg:"12px",xl:"16px","2xl":"24px","3xl":"32px"},components:{button:{height:"32px",padding:"0 12px",fontSize:"13px"},input:{height:"32px",padding:"0 8px",fontSize:"13px"},table:{cellPadding:"6px 8px"}}},dark:{...Me,colors:{primary:"#3b82f6",primaryHover:"#2563eb",primaryForeground:"#ffffff",secondary:"#1f2937",secondaryHover:"#374151",secondaryForeground:"#f9fafb",background:"#111827",foreground:"#f9fafb",card:"#1f2937",cardForeground:"#f9fafb",border:"#374151",input:"#374151",ring:"#3b82f6",muted:"#1f2937",mutedForeground:"#9ca3af",accent:"#374151",accentForeground:"#f9fafb",destructive:"#dc2626",destructiveForeground:"#ffffff",success:"#10b981",successForeground:"#ffffff",warning:"#f59e0b",warningForeground:"#ffffff",info:"#3b82f6",infoForeground:"#ffffff"}}};function Dr(o,e){const r={...o};return Object.keys(e).forEach(t=>{const a=t;typeof e[a]=="object"&&!Array.isArray(e[a])&&e[a]!==null?r[a]=Dr(o[a]||{},e[a]):r[a]=e[a]}),r}function Tl(o){const e={};return o.colors&&Object.entries(o.colors).forEach(([r,t])=>{t&&(e[`--csv-color-${Xe(r)}`]=t)}),o.typography&&(o.typography.fontFamily&&(e["--csv-font-family"]=o.typography.fontFamily),o.typography.fontFamilyMono&&(e["--csv-font-family-mono"]=o.typography.fontFamilyMono),o.typography.fontSize&&Object.entries(o.typography.fontSize).forEach(([r,t])=>{t&&(e[`--csv-text-${r}`]=t)}),o.typography.fontWeight&&Object.entries(o.typography.fontWeight).forEach(([r,t])=>{t&&(e[`--csv-font-${r}`]=String(t))}),o.typography.lineHeight&&Object.entries(o.typography.lineHeight).forEach(([r,t])=>{t&&(e[`--csv-leading-${r}`]=t)})),o.spacing&&Object.entries(o.spacing).forEach(([r,t])=>{t&&(e[`--csv-spacing-${r}`]=t)}),o.borders&&(o.borders.radius&&Object.entries(o.borders.radius).forEach(([r,t])=>{t&&(e[`--csv-radius-${r}`]=t)}),o.borders.width&&Object.entries(o.borders.width).forEach(([r,t])=>{t&&(e[`--csv-border-${r}`]=t)})),o.shadows&&Object.entries(o.shadows).forEach(([r,t])=>{t&&(e[`--csv-shadow-${r}`]=t)}),o.animations&&(o.animations.duration&&Object.entries(o.animations.duration).forEach(([r,t])=>{t&&(e[`--csv-duration-${r}`]=t)}),o.animations.easing&&(e["--csv-easing"]=o.animations.easing)),o.components&&(o.components.button&&Object.entries(o.components.button).forEach(([r,t])=>{t&&(e[`--csv-button-${Xe(r)}`]=t)}),o.components.input&&Object.entries(o.components.input).forEach(([r,t])=>{t&&(e[`--csv-input-${Xe(r)}`]=t)}),o.components.modal&&Object.entries(o.components.modal).forEach(([r,t])=>{t&&(e[`--csv-modal-${Xe(r)}`]=t)}),o.components.table&&Object.entries(o.components.table).forEach(([r,t])=>{t&&(e[`--csv-table-${Xe(r)}`]=t)}),o.components.stepper&&Object.entries(o.components.stepper).forEach(([r,t])=>{t&&(e[`--csv-stepper-${Xe(r)}`]=t)}),o.components.dropzone&&Object.entries(o.components.dropzone).forEach(([r,t])=>{t&&(e[`--csv-dropzone-${Xe(r)}`]=t)})),e}function Ol(o,e){Object.entries(e).forEach(([r,t])=>{o.style.setProperty(r,t)})}function Xe(o){return o.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}function Rl({children:o,theme:e,primaryColor:r,customStyles:t,targetElement:a}){const n=h.useMemo(()=>{let l=Me;return typeof e=="string"&&e in To?l=Dr(Me,To[e]):typeof e=="object"&&(l=Dr(Me,e)),r&&(l=Dr(l,{colors:{primary:r,primaryHover:r}})),l},[e,r]);return h.useEffect(()=>{const l=Tl(n),s=a||document.querySelector(".importcsv")||document.documentElement;if(s){if(Ol(s,l),t){const c=typeof t=="string"?JSON.parse(t):t;Object.entries(c).forEach(([i,f])=>{s.style.setProperty(`--${i}`,f)})}r&&ll(r,s)}},[n,t,r,a]),d.jsxDEV(d.Fragment,{children:o},void 0,!1,{fileName:"/frontend/src/importer/providers/Theme.tsx",lineNumber:80,columnNumber:5},this)}function Ml({children:o,theme:e,primaryColor:r,customStyles:t,targetElement:a}){return d.jsxDEV(Rl,{theme:e,primaryColor:r,customStyles:t,targetElement:a,children:o},void 0,!1,{fileName:"/frontend/src/importer/providers/index.tsx",lineNumber:8,columnNumber:5},this)}const Il={},Oo=o=>{let e;const r=new Set,t=(f,T)=>{const w=typeof f=="function"?f(e):f;if(!Object.is(w,e)){const y=e;e=T??(typeof w!="object"||w===null)?w:Object.assign({},e,w),r.forEach(v=>v(e,y))}},a=()=>e,c={setState:t,getState:a,getInitialState:()=>i,subscribe:f=>(r.add(f),()=>r.delete(f)),destroy:()=>{(Il?"react":void 0)!=="production"&&console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected."),r.clear()}},i=e=o(t,a,c);return c},zl=o=>o?Oo(o):Oo;var Lr={exports:{}},$r={},Fr={exports:{}},Zr={},Ro;function Al(){if(Ro)return Zr;Ro=1;/**
|
|
121
134
|
* @license React
|
|
122
135
|
* use-sync-external-store-shim.development.js
|
|
123
136
|
*
|
|
@@ -125,7 +138,7 @@ License: MIT
|
|
|
125
138
|
*
|
|
126
139
|
* This source code is licensed under the MIT license found in the
|
|
127
140
|
* LICENSE file in the root directory of this source tree.
|
|
128
|
-
*/return(function(){function o(y,
|
|
141
|
+
*/return(function(){function o(y,v){return y===v&&(y!==0||1/y===1/v)||y!==y&&v!==v}function e(y,v){f||a.startTransition===void 0||(f=!0,console.error("You are using an outdated, pre-release alpha of React 18 that does not support useSyncExternalStore. The use-sync-external-store shim will not work correctly. Upgrade to a newer pre-release."));var x=v();if(!T){var E=v();n(x,E)||(console.error("The result of getSnapshot should be cached to avoid an infinite loop"),T=!0)}E=l({inst:{value:x,getSnapshot:v}});var k=E[0].inst,j=E[1];return c(function(){k.value=x,k.getSnapshot=v,r(k)&&j({inst:k})},[y,x,v]),s(function(){return r(k)&&j({inst:k}),y(function(){r(k)&&j({inst:k})})},[y]),i(x),x}function r(y){var v=y.getSnapshot;y=y.value;try{var x=v();return!n(y,x)}catch{return!0}}function t(y,v){return v()}typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var a=h,n=typeof Object.is=="function"?Object.is:o,l=a.useState,s=a.useEffect,c=a.useLayoutEffect,i=a.useDebugValue,f=!1,T=!1,w=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?t:e;Zr.useSyncExternalStore=a.useSyncExternalStore!==void 0?a.useSyncExternalStore:w,typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})(),Zr}var Mo;function Pl(){return Mo||(Mo=1,Fr.exports=Al()),Fr.exports}var Io;function Ll(){if(Io)return $r;Io=1;/**
|
|
129
142
|
* @license React
|
|
130
143
|
* use-sync-external-store-shim/with-selector.development.js
|
|
131
144
|
*
|
|
@@ -133,7 +146,7 @@ License: MIT
|
|
|
133
146
|
*
|
|
134
147
|
* This source code is licensed under the MIT license found in the
|
|
135
148
|
* LICENSE file in the root directory of this source tree.
|
|
136
|
-
*/return(function(){function o(s,f){return s===f&&(s!==0||1/s===1/f)||s!==s&&f!==f}typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var e=p,r=zd(),t=typeof Object.is=="function"?Object.is:o,a=r.useSyncExternalStore,n=e.useRef,d=e.useEffect,c=e.useMemo,i=e.useDebugValue;Lr.useSyncExternalStoreWithSelector=function(s,f,E,v,y){var x=n(null);if(x.current===null){var h={hasValue:!1,value:null};x.current=h}else h=x.current;x=c(function(){function w(K){if(!N){if(N=!0,L=K,K=v(K),y!==void 0&&h.hasValue){var V=h.value;if(y(V,K))return le=V}return le=K}if(V=le,t(L,K))return V;var u=v(K);return y!==void 0&&y(V,u)?(L=K,V):(L=K,le=u)}var N=!1,L,le,ge=E===void 0?null:E;return[function(){return w(f())},ge===null?void 0:function(){return w(ge())}]},[f,E,v,y]);var S=a(s,x[0],x[1]);return d(function(){h.hasValue=!0,h.value=S},[S]),i(S),S},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})(),Lr}var zo;function Md(){return zo||(zo=1,Vr.exports=Td()),Vr.exports}var Ad=Md();const Dd=Qo(Ad),Dt={},{useDebugValue:Vd}=p,{useSyncExternalStoreWithSelector:Ld}=Dd;let To=!1;const Pd=o=>o;function $d(o,e=Pd,r){(Dt?"react":void 0)!=="production"&&r&&!To&&(console.warn("[DEPRECATED] Use `createWithEqualityFn` instead of `create` or use `useStoreWithEqualityFn` instead of `useStore`. They can be imported from 'zustand/traditional'. https://github.com/pmndrs/zustand/discussions/1937"),To=!0);const t=Ld(o.subscribe,o.getState,o.getServerState||o.getInitialState,e,r);return Vd(t),t}const Fd=o=>{(Dt?"react":void 0)!=="production"&&typeof o!="function"&&console.warn("[DEPRECATED] Passing a vanilla store will be unsupported in a future version. Instead use `import { useStore } from 'zustand'`.");const e=typeof o=="function"?Id(o):o,r=(t,a)=>$d(e,t,a);return Object.assign(r,e),r},Zd=o=>Fd,Bd={};function Wd(o,e){let r;try{r=o()}catch{return}return{getItem:a=>{var n;const d=i=>i===null?null:JSON.parse(i,void 0),c=(n=r.getItem(a))!=null?n:null;return c instanceof Promise?c.then(d):d(c)},setItem:(a,n)=>r.setItem(a,JSON.stringify(n,void 0)),removeItem:a=>r.removeItem(a)}}const xr=o=>e=>{try{const r=o(e);return r instanceof Promise?r:{then(t){return xr(t)(r)},catch(t){return this}}}catch(r){return{then(t){return this},catch(t){return xr(t)(r)}}}},qd=(o,e)=>(r,t,a)=>{let n={getStorage:()=>localStorage,serialize:JSON.stringify,deserialize:JSON.parse,partialize:S=>S,version:0,merge:(S,w)=>({...w,...S}),...e},d=!1;const c=new Set,i=new Set;let s;try{s=n.getStorage()}catch{}if(!s)return o((...S)=>{console.warn(`[zustand persist middleware] Unable to update item '${n.name}', the given storage is currently unavailable.`),r(...S)},t,a);const f=xr(n.serialize),E=()=>{const S=n.partialize({...t()});let w;const N=f({state:S,version:n.version}).then(L=>s.setItem(n.name,L)).catch(L=>{w=L});if(w)throw w;return N},v=a.setState;a.setState=(S,w)=>{v(S,w),E()};const y=o((...S)=>{r(...S),E()},t,a);let x;const h=()=>{var S;if(!s)return;d=!1,c.forEach(N=>N(t()));const w=((S=n.onRehydrateStorage)==null?void 0:S.call(n,t()))||void 0;return xr(s.getItem.bind(s))(n.name).then(N=>{if(N)return n.deserialize(N)}).then(N=>{if(N)if(typeof N.version=="number"&&N.version!==n.version){if(n.migrate)return n.migrate(N.state,N.version);console.error("State loaded from storage couldn't be migrated since no migrate function was provided")}else return N.state}).then(N=>{var L;return x=n.merge(N,(L=t())!=null?L:y),r(x,!0),E()}).then(()=>{w?.(x,void 0),d=!0,i.forEach(N=>N(x))}).catch(N=>{w?.(void 0,N)})};return a.persist={setOptions:S=>{n={...n,...S},S.getStorage&&(s=S.getStorage())},clearStorage:()=>{s?.removeItem(n.name)},getOptions:()=>n,rehydrate:()=>h(),hasHydrated:()=>d,onHydrate:S=>(c.add(S),()=>{c.delete(S)}),onFinishHydration:S=>(i.add(S),()=>{i.delete(S)})},h(),x||y},Ud=(o,e)=>(r,t,a)=>{let n={storage:Wd(()=>localStorage),partialize:h=>h,version:0,merge:(h,S)=>({...S,...h}),...e},d=!1;const c=new Set,i=new Set;let s=n.storage;if(!s)return o((...h)=>{console.warn(`[zustand persist middleware] Unable to update item '${n.name}', the given storage is currently unavailable.`),r(...h)},t,a);const f=()=>{const h=n.partialize({...t()});return s.setItem(n.name,{state:h,version:n.version})},E=a.setState;a.setState=(h,S)=>{E(h,S),f()};const v=o((...h)=>{r(...h),f()},t,a);a.getInitialState=()=>v;let y;const x=()=>{var h,S;if(!s)return;d=!1,c.forEach(N=>{var L;return N((L=t())!=null?L:v)});const w=((S=n.onRehydrateStorage)==null?void 0:S.call(n,(h=t())!=null?h:v))||void 0;return xr(s.getItem.bind(s))(n.name).then(N=>{if(N)if(typeof N.version=="number"&&N.version!==n.version){if(n.migrate)return[!0,n.migrate(N.state,N.version)];console.error("State loaded from storage couldn't be migrated since no migrate function was provided")}else return[!1,N.state];return[!1,void 0]}).then(N=>{var L;const[le,ge]=N;if(y=n.merge(ge,(L=t())!=null?L:v),r(y,!0),le)return f()}).then(()=>{w?.(y,void 0),y=t(),d=!0,i.forEach(N=>N(y))}).catch(N=>{w?.(void 0,N)})};return a.persist={setOptions:h=>{n={...n,...h},h.storage&&(s=h.storage)},clearStorage:()=>{s?.removeItem(n.name)},getOptions:()=>n,rehydrate:()=>x(),hasHydrated:()=>d,onHydrate:h=>(c.add(h),()=>{c.delete(h)}),onFinishHydration:h=>(i.add(h),()=>{i.delete(h)})},n.skipHydration||x(),y||v},Hd=(o,e)=>"getStorage"in e||"serialize"in e||"deserialize"in e?((Bd?"react":void 0)!=="production"&&console.warn("[DEPRECATED] `getStorage`, `serialize` and `deserialize` options are deprecated. Use `storage` option instead."),qd(o,e)):Ud(o,e),Gd=Hd,Mo="csv-importer-theme",Yd=Zd()(Gd(o=>({theme:typeof window<"u"?localStorage.getItem(Mo):"light",setTheme:e=>o(r=>({theme:e||(r.theme==="light"?"dark":"light")}))}),{name:Mo})),Kd=({isOpen:o,onClose:e,children:r,closeOnOutsideClick:t=!0,className:a="",overlayClassName:n="",contentClassName:d=""})=>{const c=p.useRef(null),i=p.useRef(null),s='a[href], area[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), button:not([disabled]), iframe, object, embed, [tabindex]:not([tabindex="-1"]), [contenteditable]';p.useEffect(()=>{if(!o)return;const v=y=>{y.key==="Escape"&&e()};return document.addEventListener("keydown",v),()=>document.removeEventListener("keydown",v)},[o,e]),p.useEffect(()=>{if(!o||!c.current)return;const v=c.current,y=v.querySelectorAll(s),x=y[0],h=y[y.length-1],S=w=>{if(w.key==="Tab"){if(y.length===0){w.preventDefault();return}w.shiftKey?document.activeElement===x&&(w.preventDefault(),h?.focus()):document.activeElement===h&&(w.preventDefault(),x?.focus())}};return v.addEventListener("keydown",S),i.current=document.activeElement,x?x.focus():v.focus(),()=>{v.removeEventListener("keydown",S),i.current&&i.current instanceof HTMLElement&&i.current.focus()}},[o]),p.useEffect(()=>{if(!o)return;const v=document.body.style.overflow,y=document.body.style.paddingRight,x=window.innerWidth-document.documentElement.clientWidth;return document.body.style.overflow="hidden",x>0&&(document.body.style.paddingRight=`${x}px`),()=>{document.body.style.overflow=v,document.body.style.paddingRight=y}},[o]);const f=p.useCallback(v=>{t&&v.target===v.currentTarget&&e()},[t,e]);if(!o)return null;const E=l.jsx("div",{className:`csv-importer-modal-overlay ${n}`,onClick:f,role:"presentation","aria-hidden":"true",children:l.jsx("div",{ref:c,className:`csv-importer-modal-content ${d} ${a}`,role:"dialog","aria-modal":"true",tabIndex:-1,onClick:v=>v.stopPropagation(),children:r})});return typeof document<"u"?ea(E,document.body):null};var he;(function(o){o.assertEqual=a=>{};function e(a){}o.assertIs=e;function r(a){throw new Error}o.assertNever=r,o.arrayToEnum=a=>{const n={};for(const d of a)n[d]=d;return n},o.getValidEnumValues=a=>{const n=o.objectKeys(a).filter(c=>typeof a[a[c]]!="number"),d={};for(const c of n)d[c]=a[c];return o.objectValues(d)},o.objectValues=a=>o.objectKeys(a).map(function(n){return a[n]}),o.objectKeys=typeof Object.keys=="function"?a=>Object.keys(a):a=>{const n=[];for(const d in a)Object.prototype.hasOwnProperty.call(a,d)&&n.push(d);return n},o.find=(a,n)=>{for(const d of a)if(n(d))return d},o.isInteger=typeof Number.isInteger=="function"?a=>Number.isInteger(a):a=>typeof a=="number"&&Number.isFinite(a)&&Math.floor(a)===a;function t(a,n=" | "){return a.map(d=>typeof d=="string"?`'${d}'`:d).join(n)}o.joinValues=t,o.jsonStringifyReplacer=(a,n)=>typeof n=="bigint"?n.toString():n})(he||(he={}));var Ao;(function(o){o.mergeShapes=(e,r)=>({...e,...r})})(Ao||(Ao={}));const U=he.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),qe=o=>{switch(typeof o){case"undefined":return U.undefined;case"string":return U.string;case"number":return Number.isNaN(o)?U.nan:U.number;case"boolean":return U.boolean;case"function":return U.function;case"bigint":return U.bigint;case"symbol":return U.symbol;case"object":return Array.isArray(o)?U.array:o===null?U.null:o.then&&typeof o.then=="function"&&o.catch&&typeof o.catch=="function"?U.promise:typeof Map<"u"&&o instanceof Map?U.map:typeof Set<"u"&&o instanceof Set?U.set:typeof Date<"u"&&o instanceof Date?U.date:U.object;default:return U.unknown}},O=he.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]);class Ze extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=t=>{this.issues=[...this.issues,t]},this.addIssues=(t=[])=>{this.issues=[...this.issues,...t]};const r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=e}format(e){const r=e||function(n){return n.message},t={_errors:[]},a=n=>{for(const d of n.issues)if(d.code==="invalid_union")d.unionErrors.map(a);else if(d.code==="invalid_return_type")a(d.returnTypeError);else if(d.code==="invalid_arguments")a(d.argumentsError);else if(d.path.length===0)t._errors.push(r(d));else{let c=t,i=0;for(;i<d.path.length;){const s=d.path[i];i===d.path.length-1?(c[s]=c[s]||{_errors:[]},c[s]._errors.push(r(d))):c[s]=c[s]||{_errors:[]},c=c[s],i++}}};return a(this),t}static assert(e){if(!(e instanceof Ze))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,he.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=r=>r.message){const r={},t=[];for(const a of this.issues)if(a.path.length>0){const n=a.path[0];r[n]=r[n]||[],r[n].push(e(a))}else t.push(e(a));return{formErrors:t,fieldErrors:r}}get formErrors(){return this.flatten()}}Ze.create=o=>new Ze(o);const Ur=(o,e)=>{let r;switch(o.code){case O.invalid_type:o.received===U.undefined?r="Required":r=`Expected ${o.expected}, received ${o.received}`;break;case O.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(o.expected,he.jsonStringifyReplacer)}`;break;case O.unrecognized_keys:r=`Unrecognized key(s) in object: ${he.joinValues(o.keys,", ")}`;break;case O.invalid_union:r="Invalid input";break;case O.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${he.joinValues(o.options)}`;break;case O.invalid_enum_value:r=`Invalid enum value. Expected ${he.joinValues(o.options)}, received '${o.received}'`;break;case O.invalid_arguments:r="Invalid function arguments";break;case O.invalid_return_type:r="Invalid function return type";break;case O.invalid_date:r="Invalid date";break;case O.invalid_string:typeof o.validation=="object"?"includes"in o.validation?(r=`Invalid input: must include "${o.validation.includes}"`,typeof o.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${o.validation.position}`)):"startsWith"in o.validation?r=`Invalid input: must start with "${o.validation.startsWith}"`:"endsWith"in o.validation?r=`Invalid input: must end with "${o.validation.endsWith}"`:he.assertNever(o.validation):o.validation!=="regex"?r=`Invalid ${o.validation}`:r="Invalid";break;case O.too_small:o.type==="array"?r=`Array must contain ${o.exact?"exactly":o.inclusive?"at least":"more than"} ${o.minimum} element(s)`:o.type==="string"?r=`String must contain ${o.exact?"exactly":o.inclusive?"at least":"over"} ${o.minimum} character(s)`:o.type==="number"?r=`Number must be ${o.exact?"exactly equal to ":o.inclusive?"greater than or equal to ":"greater than "}${o.minimum}`:o.type==="bigint"?r=`Number must be ${o.exact?"exactly equal to ":o.inclusive?"greater than or equal to ":"greater than "}${o.minimum}`:o.type==="date"?r=`Date must be ${o.exact?"exactly equal to ":o.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(o.minimum))}`:r="Invalid input";break;case O.too_big:o.type==="array"?r=`Array must contain ${o.exact?"exactly":o.inclusive?"at most":"less than"} ${o.maximum} element(s)`:o.type==="string"?r=`String must contain ${o.exact?"exactly":o.inclusive?"at most":"under"} ${o.maximum} character(s)`:o.type==="number"?r=`Number must be ${o.exact?"exactly":o.inclusive?"less than or equal to":"less than"} ${o.maximum}`:o.type==="bigint"?r=`BigInt must be ${o.exact?"exactly":o.inclusive?"less than or equal to":"less than"} ${o.maximum}`:o.type==="date"?r=`Date must be ${o.exact?"exactly":o.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(o.maximum))}`:r="Invalid input";break;case O.custom:r="Invalid input";break;case O.invalid_intersection_types:r="Intersection results could not be merged";break;case O.not_multiple_of:r=`Number must be a multiple of ${o.multipleOf}`;break;case O.not_finite:r="Number must be finite";break;default:r=e.defaultError,he.assertNever(o)}return{message:r}};let Xd=Ur;function Jd(){return Xd}const Qd=o=>{const{data:e,path:r,errorMaps:t,issueData:a}=o,n=[...r,...a.path||[]],d={...a,path:n};if(a.message!==void 0)return{...a,path:n,message:a.message};let c="";const i=t.filter(s=>!!s).slice().reverse();for(const s of i)c=s(d,{data:e,defaultError:c}).message;return{...a,path:n,message:c}};function P(o,e){const r=Jd(),t=Qd({issueData:e,data:o.data,path:o.path,errorMaps:[o.common.contextualErrorMap,o.schemaErrorMap,r,r===Ur?void 0:Ur].filter(a=>!!a)});o.common.issues.push(t)}class Ae{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,r){const t=[];for(const a of r){if(a.status==="aborted")return ne;a.status==="dirty"&&e.dirty(),t.push(a.value)}return{status:e.value,value:t}}static async mergeObjectAsync(e,r){const t=[];for(const a of r){const n=await a.key,d=await a.value;t.push({key:n,value:d})}return Ae.mergeObjectSync(e,t)}static mergeObjectSync(e,r){const t={};for(const a of r){const{key:n,value:d}=a;if(n.status==="aborted"||d.status==="aborted")return ne;n.status==="dirty"&&e.dirty(),d.status==="dirty"&&e.dirty(),n.value!=="__proto__"&&(typeof d.value<"u"||a.alwaysSet)&&(t[n.value]=d.value)}return{status:e.value,value:t}}}const ne=Object.freeze({status:"aborted"}),pr=o=>({status:"dirty",value:o}),Le=o=>({status:"valid",value:o}),Do=o=>o.status==="aborted",Vo=o=>o.status==="dirty",dr=o=>o.status==="valid",Or=o=>typeof Promise<"u"&&o instanceof Promise;var G;(function(o){o.errToObj=e=>typeof e=="string"?{message:e}:e||{},o.toString=e=>typeof e=="string"?e:e?.message})(G||(G={}));class Ge{constructor(e,r,t,a){this._cachedPath=[],this.parent=e,this.data=r,this._path=t,this._key=a}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}}const Lo=(o,e)=>{if(dr(e))return{success:!0,data:e.value};if(!o.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;const r=new Ze(o.common.issues);return this._error=r,this._error}}};function fe(o){if(!o)return{};const{errorMap:e,invalid_type_error:r,required_error:t,description:a}=o;if(e&&(r||t))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:a}:{errorMap:(d,c)=>{const{message:i}=o;return d.code==="invalid_enum_value"?{message:i??c.defaultError}:typeof c.data>"u"?{message:i??t??c.defaultError}:d.code!=="invalid_type"?{message:c.defaultError}:{message:i??r??c.defaultError}},description:a}}class pe{get description(){return this._def.description}_getType(e){return qe(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:qe(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Ae,ctx:{common:e.parent.common,data:e.data,parsedType:qe(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){const r=this._parse(e);if(Or(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(e){const r=this._parse(e);return Promise.resolve(r)}parse(e,r){const t=this.safeParse(e,r);if(t.success)return t.data;throw t.error}safeParse(e,r){const t={common:{issues:[],async:r?.async??!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:qe(e)},a=this._parseSync({data:e,path:t.path,parent:t});return Lo(t,a)}"~validate"(e){const r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:qe(e)};if(!this["~standard"].async)try{const t=this._parseSync({data:e,path:[],parent:r});return dr(t)?{value:t.value}:{issues:r.common.issues}}catch(t){t?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),r.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:r}).then(t=>dr(t)?{value:t.value}:{issues:r.common.issues})}async parseAsync(e,r){const t=await this.safeParseAsync(e,r);if(t.success)return t.data;throw t.error}async safeParseAsync(e,r){const t={common:{issues:[],contextualErrorMap:r?.errorMap,async:!0},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:qe(e)},a=this._parse({data:e,path:t.path,parent:t}),n=await(Or(a)?a:Promise.resolve(a));return Lo(t,n)}refine(e,r){const t=a=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(a):r;return this._refinement((a,n)=>{const d=e(a),c=()=>n.addIssue({code:O.custom,...t(a)});return typeof Promise<"u"&&d instanceof Promise?d.then(i=>i?!0:(c(),!1)):d?!0:(c(),!1)})}refinement(e,r){return this._refinement((t,a)=>e(t)?!0:(a.addIssue(typeof r=="function"?r(t,a):r),!1))}_refinement(e){return new cr({schema:this,typeName:de.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:r=>this["~validate"](r)}}optional(){return He.create(this,this._def)}nullable(){return sr.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return $e.create(this)}promise(){return Tr.create(this,this._def)}or(e){return Rr.create([this,e],this._def)}and(e){return zr.create(this,e,this._def)}transform(e){return new cr({...fe(this._def),schema:this,typeName:de.ZodEffects,effect:{type:"transform",transform:e}})}default(e){const r=typeof e=="function"?e:()=>e;return new Gr({...fe(this._def),innerType:this,defaultValue:r,typeName:de.ZodDefault})}brand(){return new wl({typeName:de.ZodBranded,type:this,...fe(this._def)})}catch(e){const r=typeof e=="function"?e:()=>e;return new Yr({...fe(this._def),innerType:this,catchValue:r,typeName:de.ZodCatch})}describe(e){const r=this.constructor;return new r({...this._def,description:e})}pipe(e){return eo.create(this,e)}readonly(){return Kr.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}const el=/^c[^\s-]{8,}$/i,rl=/^[0-9a-z]+$/,ol=/^[0-9A-HJKMNP-TV-Z]{26}$/i,tl=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,al=/^[a-z0-9_-]{21}$/i,nl=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,dl=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,ll=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,cl="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";let Fr;const sl=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,il=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,bl=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,ul=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,fl=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,gl=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Vt="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",ml=new RegExp(`^${Vt}$`);function Lt(o){let e="[0-5]\\d";o.precision?e=`${e}\\.\\d{${o.precision}}`:o.precision==null&&(e=`${e}(\\.\\d+)?`);const r=o.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${r}`}function pl(o){return new RegExp(`^${Lt(o)}$`)}function hl(o){let e=`${Vt}T${Lt(o)}`;const r=[];return r.push(o.local?"Z?":"Z"),o.offset&&r.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${r.join("|")})`,new RegExp(`^${e}$`)}function xl(o,e){return!!((e==="v4"||!e)&&sl.test(o)||(e==="v6"||!e)&&bl.test(o))}function yl(o,e){if(!nl.test(o))return!1;try{const[r]=o.split(".");if(!r)return!1;const t=r.replace(/-/g,"+").replace(/_/g,"/").padEnd(r.length+(4-r.length%4)%4,"="),a=JSON.parse(atob(t));return!(typeof a!="object"||a===null||"typ"in a&&a?.typ!=="JWT"||!a.alg||e&&a.alg!==e)}catch{return!1}}function _l(o,e){return!!((e==="v4"||!e)&&il.test(o)||(e==="v6"||!e)&&ul.test(o))}class Qe extends pe{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==U.string){const n=this._getOrReturnCtx(e);return P(n,{code:O.invalid_type,expected:U.string,received:n.parsedType}),ne}const t=new Ae;let a;for(const n of this._def.checks)if(n.kind==="min")e.data.length<n.value&&(a=this._getOrReturnCtx(e,a),P(a,{code:O.too_small,minimum:n.value,type:"string",inclusive:!0,exact:!1,message:n.message}),t.dirty());else if(n.kind==="max")e.data.length>n.value&&(a=this._getOrReturnCtx(e,a),P(a,{code:O.too_big,maximum:n.value,type:"string",inclusive:!0,exact:!1,message:n.message}),t.dirty());else if(n.kind==="length"){const d=e.data.length>n.value,c=e.data.length<n.value;(d||c)&&(a=this._getOrReturnCtx(e,a),d?P(a,{code:O.too_big,maximum:n.value,type:"string",inclusive:!0,exact:!0,message:n.message}):c&&P(a,{code:O.too_small,minimum:n.value,type:"string",inclusive:!0,exact:!0,message:n.message}),t.dirty())}else if(n.kind==="email")ll.test(e.data)||(a=this._getOrReturnCtx(e,a),P(a,{validation:"email",code:O.invalid_string,message:n.message}),t.dirty());else if(n.kind==="emoji")Fr||(Fr=new RegExp(cl,"u")),Fr.test(e.data)||(a=this._getOrReturnCtx(e,a),P(a,{validation:"emoji",code:O.invalid_string,message:n.message}),t.dirty());else if(n.kind==="uuid")tl.test(e.data)||(a=this._getOrReturnCtx(e,a),P(a,{validation:"uuid",code:O.invalid_string,message:n.message}),t.dirty());else if(n.kind==="nanoid")al.test(e.data)||(a=this._getOrReturnCtx(e,a),P(a,{validation:"nanoid",code:O.invalid_string,message:n.message}),t.dirty());else if(n.kind==="cuid")el.test(e.data)||(a=this._getOrReturnCtx(e,a),P(a,{validation:"cuid",code:O.invalid_string,message:n.message}),t.dirty());else if(n.kind==="cuid2")rl.test(e.data)||(a=this._getOrReturnCtx(e,a),P(a,{validation:"cuid2",code:O.invalid_string,message:n.message}),t.dirty());else if(n.kind==="ulid")ol.test(e.data)||(a=this._getOrReturnCtx(e,a),P(a,{validation:"ulid",code:O.invalid_string,message:n.message}),t.dirty());else if(n.kind==="url")try{new URL(e.data)}catch{a=this._getOrReturnCtx(e,a),P(a,{validation:"url",code:O.invalid_string,message:n.message}),t.dirty()}else n.kind==="regex"?(n.regex.lastIndex=0,n.regex.test(e.data)||(a=this._getOrReturnCtx(e,a),P(a,{validation:"regex",code:O.invalid_string,message:n.message}),t.dirty())):n.kind==="trim"?e.data=e.data.trim():n.kind==="includes"?e.data.includes(n.value,n.position)||(a=this._getOrReturnCtx(e,a),P(a,{code:O.invalid_string,validation:{includes:n.value,position:n.position},message:n.message}),t.dirty()):n.kind==="toLowerCase"?e.data=e.data.toLowerCase():n.kind==="toUpperCase"?e.data=e.data.toUpperCase():n.kind==="startsWith"?e.data.startsWith(n.value)||(a=this._getOrReturnCtx(e,a),P(a,{code:O.invalid_string,validation:{startsWith:n.value},message:n.message}),t.dirty()):n.kind==="endsWith"?e.data.endsWith(n.value)||(a=this._getOrReturnCtx(e,a),P(a,{code:O.invalid_string,validation:{endsWith:n.value},message:n.message}),t.dirty()):n.kind==="datetime"?hl(n).test(e.data)||(a=this._getOrReturnCtx(e,a),P(a,{code:O.invalid_string,validation:"datetime",message:n.message}),t.dirty()):n.kind==="date"?ml.test(e.data)||(a=this._getOrReturnCtx(e,a),P(a,{code:O.invalid_string,validation:"date",message:n.message}),t.dirty()):n.kind==="time"?pl(n).test(e.data)||(a=this._getOrReturnCtx(e,a),P(a,{code:O.invalid_string,validation:"time",message:n.message}),t.dirty()):n.kind==="duration"?dl.test(e.data)||(a=this._getOrReturnCtx(e,a),P(a,{validation:"duration",code:O.invalid_string,message:n.message}),t.dirty()):n.kind==="ip"?xl(e.data,n.version)||(a=this._getOrReturnCtx(e,a),P(a,{validation:"ip",code:O.invalid_string,message:n.message}),t.dirty()):n.kind==="jwt"?yl(e.data,n.alg)||(a=this._getOrReturnCtx(e,a),P(a,{validation:"jwt",code:O.invalid_string,message:n.message}),t.dirty()):n.kind==="cidr"?_l(e.data,n.version)||(a=this._getOrReturnCtx(e,a),P(a,{validation:"cidr",code:O.invalid_string,message:n.message}),t.dirty()):n.kind==="base64"?fl.test(e.data)||(a=this._getOrReturnCtx(e,a),P(a,{validation:"base64",code:O.invalid_string,message:n.message}),t.dirty()):n.kind==="base64url"?gl.test(e.data)||(a=this._getOrReturnCtx(e,a),P(a,{validation:"base64url",code:O.invalid_string,message:n.message}),t.dirty()):he.assertNever(n);return{status:t.value,value:e.data}}_regex(e,r,t){return this.refinement(a=>e.test(a),{validation:r,code:O.invalid_string,...G.errToObj(t)})}_addCheck(e){return new Qe({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...G.errToObj(e)})}url(e){return this._addCheck({kind:"url",...G.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...G.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...G.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...G.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...G.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...G.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...G.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...G.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...G.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...G.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...G.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...G.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...G.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...G.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...G.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...G.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...G.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...G.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...G.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...G.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...G.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...G.errToObj(r)})}nonempty(e){return this.min(1,G.errToObj(e))}trim(){return new Qe({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new Qe({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new Qe({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(const r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxLength(){let e=null;for(const r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}}Qe.create=o=>new Qe({checks:[],typeName:de.ZodString,coerce:o?.coerce??!1,...fe(o)});function vl(o,e){const r=(o.toString().split(".")[1]||"").length,t=(e.toString().split(".")[1]||"").length,a=r>t?r:t,n=Number.parseInt(o.toFixed(a).replace(".","")),d=Number.parseInt(e.toFixed(a).replace(".",""));return n%d/10**a}class yr extends pe{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==U.number){const n=this._getOrReturnCtx(e);return P(n,{code:O.invalid_type,expected:U.number,received:n.parsedType}),ne}let t;const a=new Ae;for(const n of this._def.checks)n.kind==="int"?he.isInteger(e.data)||(t=this._getOrReturnCtx(e,t),P(t,{code:O.invalid_type,expected:"integer",received:"float",message:n.message}),a.dirty()):n.kind==="min"?(n.inclusive?e.data<n.value:e.data<=n.value)&&(t=this._getOrReturnCtx(e,t),P(t,{code:O.too_small,minimum:n.value,type:"number",inclusive:n.inclusive,exact:!1,message:n.message}),a.dirty()):n.kind==="max"?(n.inclusive?e.data>n.value:e.data>=n.value)&&(t=this._getOrReturnCtx(e,t),P(t,{code:O.too_big,maximum:n.value,type:"number",inclusive:n.inclusive,exact:!1,message:n.message}),a.dirty()):n.kind==="multipleOf"?vl(e.data,n.value)!==0&&(t=this._getOrReturnCtx(e,t),P(t,{code:O.not_multiple_of,multipleOf:n.value,message:n.message}),a.dirty()):n.kind==="finite"?Number.isFinite(e.data)||(t=this._getOrReturnCtx(e,t),P(t,{code:O.not_finite,message:n.message}),a.dirty()):he.assertNever(n);return{status:a.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,G.toString(r))}gt(e,r){return this.setLimit("min",e,!1,G.toString(r))}lte(e,r){return this.setLimit("max",e,!0,G.toString(r))}lt(e,r){return this.setLimit("max",e,!1,G.toString(r))}setLimit(e,r,t,a){return new yr({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:t,message:G.toString(a)}]})}_addCheck(e){return new yr({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:G.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:G.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:G.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:G.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:G.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:G.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:G.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:G.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:G.toString(e)})}get minValue(){let e=null;for(const r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(const r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&he.isInteger(e.value))}get isFinite(){let e=null,r=null;for(const t of this._def.checks){if(t.kind==="finite"||t.kind==="int"||t.kind==="multipleOf")return!0;t.kind==="min"?(r===null||t.value>r)&&(r=t.value):t.kind==="max"&&(e===null||t.value<e)&&(e=t.value)}return Number.isFinite(r)&&Number.isFinite(e)}}yr.create=o=>new yr({checks:[],typeName:de.ZodNumber,coerce:o?.coerce||!1,...fe(o)});class _r extends pe{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==U.bigint)return this._getInvalidInput(e);let t;const a=new Ae;for(const n of this._def.checks)n.kind==="min"?(n.inclusive?e.data<n.value:e.data<=n.value)&&(t=this._getOrReturnCtx(e,t),P(t,{code:O.too_small,type:"bigint",minimum:n.value,inclusive:n.inclusive,message:n.message}),a.dirty()):n.kind==="max"?(n.inclusive?e.data>n.value:e.data>=n.value)&&(t=this._getOrReturnCtx(e,t),P(t,{code:O.too_big,type:"bigint",maximum:n.value,inclusive:n.inclusive,message:n.message}),a.dirty()):n.kind==="multipleOf"?e.data%n.value!==BigInt(0)&&(t=this._getOrReturnCtx(e,t),P(t,{code:O.not_multiple_of,multipleOf:n.value,message:n.message}),a.dirty()):he.assertNever(n);return{status:a.value,value:e.data}}_getInvalidInput(e){const r=this._getOrReturnCtx(e);return P(r,{code:O.invalid_type,expected:U.bigint,received:r.parsedType}),ne}gte(e,r){return this.setLimit("min",e,!0,G.toString(r))}gt(e,r){return this.setLimit("min",e,!1,G.toString(r))}lte(e,r){return this.setLimit("max",e,!0,G.toString(r))}lt(e,r){return this.setLimit("max",e,!1,G.toString(r))}setLimit(e,r,t,a){return new _r({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:t,message:G.toString(a)}]})}_addCheck(e){return new _r({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:G.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:G.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:G.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:G.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:G.toString(r)})}get minValue(){let e=null;for(const r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(const r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}}_r.create=o=>new _r({checks:[],typeName:de.ZodBigInt,coerce:o?.coerce??!1,...fe(o)});class Po extends pe{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==U.boolean){const t=this._getOrReturnCtx(e);return P(t,{code:O.invalid_type,expected:U.boolean,received:t.parsedType}),ne}return Le(e.data)}}Po.create=o=>new Po({typeName:de.ZodBoolean,coerce:o?.coerce||!1,...fe(o)});class Ir extends pe{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==U.date){const n=this._getOrReturnCtx(e);return P(n,{code:O.invalid_type,expected:U.date,received:n.parsedType}),ne}if(Number.isNaN(e.data.getTime())){const n=this._getOrReturnCtx(e);return P(n,{code:O.invalid_date}),ne}const t=new Ae;let a;for(const n of this._def.checks)n.kind==="min"?e.data.getTime()<n.value&&(a=this._getOrReturnCtx(e,a),P(a,{code:O.too_small,message:n.message,inclusive:!0,exact:!1,minimum:n.value,type:"date"}),t.dirty()):n.kind==="max"?e.data.getTime()>n.value&&(a=this._getOrReturnCtx(e,a),P(a,{code:O.too_big,message:n.message,inclusive:!0,exact:!1,maximum:n.value,type:"date"}),t.dirty()):he.assertNever(n);return{status:t.value,value:new Date(e.data.getTime())}}_addCheck(e){return new Ir({...this._def,checks:[...this._def.checks,e]})}min(e,r){return this._addCheck({kind:"min",value:e.getTime(),message:G.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:G.toString(r)})}get minDate(){let e=null;for(const r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(const r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e!=null?new Date(e):null}}Ir.create=o=>new Ir({checks:[],coerce:o?.coerce||!1,typeName:de.ZodDate,...fe(o)});class $o extends pe{_parse(e){if(this._getType(e)!==U.symbol){const t=this._getOrReturnCtx(e);return P(t,{code:O.invalid_type,expected:U.symbol,received:t.parsedType}),ne}return Le(e.data)}}$o.create=o=>new $o({typeName:de.ZodSymbol,...fe(o)});class Fo extends pe{_parse(e){if(this._getType(e)!==U.undefined){const t=this._getOrReturnCtx(e);return P(t,{code:O.invalid_type,expected:U.undefined,received:t.parsedType}),ne}return Le(e.data)}}Fo.create=o=>new Fo({typeName:de.ZodUndefined,...fe(o)});class Zo extends pe{_parse(e){if(this._getType(e)!==U.null){const t=this._getOrReturnCtx(e);return P(t,{code:O.invalid_type,expected:U.null,received:t.parsedType}),ne}return Le(e.data)}}Zo.create=o=>new Zo({typeName:de.ZodNull,...fe(o)});class Bo extends pe{constructor(){super(...arguments),this._any=!0}_parse(e){return Le(e.data)}}Bo.create=o=>new Bo({typeName:de.ZodAny,...fe(o)});class Wo extends pe{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Le(e.data)}}Wo.create=o=>new Wo({typeName:de.ZodUnknown,...fe(o)});class Ye extends pe{_parse(e){const r=this._getOrReturnCtx(e);return P(r,{code:O.invalid_type,expected:U.never,received:r.parsedType}),ne}}Ye.create=o=>new Ye({typeName:de.ZodNever,...fe(o)});class qo extends pe{_parse(e){if(this._getType(e)!==U.undefined){const t=this._getOrReturnCtx(e);return P(t,{code:O.invalid_type,expected:U.void,received:t.parsedType}),ne}return Le(e.data)}}qo.create=o=>new qo({typeName:de.ZodVoid,...fe(o)});class $e extends pe{_parse(e){const{ctx:r,status:t}=this._processInputParams(e),a=this._def;if(r.parsedType!==U.array)return P(r,{code:O.invalid_type,expected:U.array,received:r.parsedType}),ne;if(a.exactLength!==null){const d=r.data.length>a.exactLength.value,c=r.data.length<a.exactLength.value;(d||c)&&(P(r,{code:d?O.too_big:O.too_small,minimum:c?a.exactLength.value:void 0,maximum:d?a.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:a.exactLength.message}),t.dirty())}if(a.minLength!==null&&r.data.length<a.minLength.value&&(P(r,{code:O.too_small,minimum:a.minLength.value,type:"array",inclusive:!0,exact:!1,message:a.minLength.message}),t.dirty()),a.maxLength!==null&&r.data.length>a.maxLength.value&&(P(r,{code:O.too_big,maximum:a.maxLength.value,type:"array",inclusive:!0,exact:!1,message:a.maxLength.message}),t.dirty()),r.common.async)return Promise.all([...r.data].map((d,c)=>a.type._parseAsync(new Ge(r,d,r.path,c)))).then(d=>Ae.mergeArray(t,d));const n=[...r.data].map((d,c)=>a.type._parseSync(new Ge(r,d,r.path,c)));return Ae.mergeArray(t,n)}get element(){return this._def.type}min(e,r){return new $e({...this._def,minLength:{value:e,message:G.toString(r)}})}max(e,r){return new $e({...this._def,maxLength:{value:e,message:G.toString(r)}})}length(e,r){return new $e({...this._def,exactLength:{value:e,message:G.toString(r)}})}nonempty(e){return this.min(1,e)}}$e.create=(o,e)=>new $e({type:o,minLength:null,maxLength:null,exactLength:null,typeName:de.ZodArray,...fe(e)});function ar(o){if(o instanceof Ne){const e={};for(const r in o.shape){const t=o.shape[r];e[r]=He.create(ar(t))}return new Ne({...o._def,shape:()=>e})}else return o instanceof $e?new $e({...o._def,type:ar(o.element)}):o instanceof He?He.create(ar(o.unwrap())):o instanceof sr?sr.create(ar(o.unwrap())):o instanceof er?er.create(o.items.map(e=>ar(e))):o}class Ne extends pe{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;const e=this._def.shape(),r=he.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==U.object){const s=this._getOrReturnCtx(e);return P(s,{code:O.invalid_type,expected:U.object,received:s.parsedType}),ne}const{status:t,ctx:a}=this._processInputParams(e),{shape:n,keys:d}=this._getCached(),c=[];if(!(this._def.catchall instanceof Ye&&this._def.unknownKeys==="strip"))for(const s in a.data)d.includes(s)||c.push(s);const i=[];for(const s of d){const f=n[s],E=a.data[s];i.push({key:{status:"valid",value:s},value:f._parse(new Ge(a,E,a.path,s)),alwaysSet:s in a.data})}if(this._def.catchall instanceof Ye){const s=this._def.unknownKeys;if(s==="passthrough")for(const f of c)i.push({key:{status:"valid",value:f},value:{status:"valid",value:a.data[f]}});else if(s==="strict")c.length>0&&(P(a,{code:O.unrecognized_keys,keys:c}),t.dirty());else if(s!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{const s=this._def.catchall;for(const f of c){const E=a.data[f];i.push({key:{status:"valid",value:f},value:s._parse(new Ge(a,E,a.path,f)),alwaysSet:f in a.data})}}return a.common.async?Promise.resolve().then(async()=>{const s=[];for(const f of i){const E=await f.key,v=await f.value;s.push({key:E,value:v,alwaysSet:f.alwaysSet})}return s}).then(s=>Ae.mergeObjectSync(t,s)):Ae.mergeObjectSync(t,i)}get shape(){return this._def.shape()}strict(e){return G.errToObj,new Ne({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(r,t)=>{const a=this._def.errorMap?.(r,t).message??t.defaultError;return r.code==="unrecognized_keys"?{message:G.errToObj(e).message??a}:{message:a}}}:{}})}strip(){return new Ne({...this._def,unknownKeys:"strip"})}passthrough(){return new Ne({...this._def,unknownKeys:"passthrough"})}extend(e){return new Ne({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new Ne({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:de.ZodObject})}setKey(e,r){return this.augment({[e]:r})}catchall(e){return new Ne({...this._def,catchall:e})}pick(e){const r={};for(const t of he.objectKeys(e))e[t]&&this.shape[t]&&(r[t]=this.shape[t]);return new Ne({...this._def,shape:()=>r})}omit(e){const r={};for(const t of he.objectKeys(this.shape))e[t]||(r[t]=this.shape[t]);return new Ne({...this._def,shape:()=>r})}deepPartial(){return ar(this)}partial(e){const r={};for(const t of he.objectKeys(this.shape)){const a=this.shape[t];e&&!e[t]?r[t]=a:r[t]=a.optional()}return new Ne({...this._def,shape:()=>r})}required(e){const r={};for(const t of he.objectKeys(this.shape))if(e&&!e[t])r[t]=this.shape[t];else{let n=this.shape[t];for(;n instanceof He;)n=n._def.innerType;r[t]=n}return new Ne({...this._def,shape:()=>r})}keyof(){return Pt(he.objectKeys(this.shape))}}Ne.create=(o,e)=>new Ne({shape:()=>o,unknownKeys:"strip",catchall:Ye.create(),typeName:de.ZodObject,...fe(e)});Ne.strictCreate=(o,e)=>new Ne({shape:()=>o,unknownKeys:"strict",catchall:Ye.create(),typeName:de.ZodObject,...fe(e)});Ne.lazycreate=(o,e)=>new Ne({shape:o,unknownKeys:"strip",catchall:Ye.create(),typeName:de.ZodObject,...fe(e)});class Rr extends pe{_parse(e){const{ctx:r}=this._processInputParams(e),t=this._def.options;function a(n){for(const c of n)if(c.result.status==="valid")return c.result;for(const c of n)if(c.result.status==="dirty")return r.common.issues.push(...c.ctx.common.issues),c.result;const d=n.map(c=>new Ze(c.ctx.common.issues));return P(r,{code:O.invalid_union,unionErrors:d}),ne}if(r.common.async)return Promise.all(t.map(async n=>{const d={...r,common:{...r.common,issues:[]},parent:null};return{result:await n._parseAsync({data:r.data,path:r.path,parent:d}),ctx:d}})).then(a);{let n;const d=[];for(const i of t){const s={...r,common:{...r.common,issues:[]},parent:null},f=i._parseSync({data:r.data,path:r.path,parent:s});if(f.status==="valid")return f;f.status==="dirty"&&!n&&(n={result:f,ctx:s}),s.common.issues.length&&d.push(s.common.issues)}if(n)return r.common.issues.push(...n.ctx.common.issues),n.result;const c=d.map(i=>new Ze(i));return P(r,{code:O.invalid_union,unionErrors:c}),ne}}get options(){return this._def.options}}Rr.create=(o,e)=>new Rr({options:o,typeName:de.ZodUnion,...fe(e)});function Hr(o,e){const r=qe(o),t=qe(e);if(o===e)return{valid:!0,data:o};if(r===U.object&&t===U.object){const a=he.objectKeys(e),n=he.objectKeys(o).filter(c=>a.indexOf(c)!==-1),d={...o,...e};for(const c of n){const i=Hr(o[c],e[c]);if(!i.valid)return{valid:!1};d[c]=i.data}return{valid:!0,data:d}}else if(r===U.array&&t===U.array){if(o.length!==e.length)return{valid:!1};const a=[];for(let n=0;n<o.length;n++){const d=o[n],c=e[n],i=Hr(d,c);if(!i.valid)return{valid:!1};a.push(i.data)}return{valid:!0,data:a}}else return r===U.date&&t===U.date&&+o==+e?{valid:!0,data:o}:{valid:!1}}class zr extends pe{_parse(e){const{status:r,ctx:t}=this._processInputParams(e),a=(n,d)=>{if(Do(n)||Do(d))return ne;const c=Hr(n.value,d.value);return c.valid?((Vo(n)||Vo(d))&&r.dirty(),{status:r.value,value:c.data}):(P(t,{code:O.invalid_intersection_types}),ne)};return t.common.async?Promise.all([this._def.left._parseAsync({data:t.data,path:t.path,parent:t}),this._def.right._parseAsync({data:t.data,path:t.path,parent:t})]).then(([n,d])=>a(n,d)):a(this._def.left._parseSync({data:t.data,path:t.path,parent:t}),this._def.right._parseSync({data:t.data,path:t.path,parent:t}))}}zr.create=(o,e,r)=>new zr({left:o,right:e,typeName:de.ZodIntersection,...fe(r)});class er extends pe{_parse(e){const{status:r,ctx:t}=this._processInputParams(e);if(t.parsedType!==U.array)return P(t,{code:O.invalid_type,expected:U.array,received:t.parsedType}),ne;if(t.data.length<this._def.items.length)return P(t,{code:O.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),ne;!this._def.rest&&t.data.length>this._def.items.length&&(P(t,{code:O.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());const n=[...t.data].map((d,c)=>{const i=this._def.items[c]||this._def.rest;return i?i._parse(new Ge(t,d,t.path,c)):null}).filter(d=>!!d);return t.common.async?Promise.all(n).then(d=>Ae.mergeArray(r,d)):Ae.mergeArray(r,n)}get items(){return this._def.items}rest(e){return new er({...this._def,rest:e})}}er.create=(o,e)=>{if(!Array.isArray(o))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new er({items:o,typeName:de.ZodTuple,rest:null,...fe(e)})};class Uo extends pe{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:r,ctx:t}=this._processInputParams(e);if(t.parsedType!==U.map)return P(t,{code:O.invalid_type,expected:U.map,received:t.parsedType}),ne;const a=this._def.keyType,n=this._def.valueType,d=[...t.data.entries()].map(([c,i],s)=>({key:a._parse(new Ge(t,c,t.path,[s,"key"])),value:n._parse(new Ge(t,i,t.path,[s,"value"]))}));if(t.common.async){const c=new Map;return Promise.resolve().then(async()=>{for(const i of d){const s=await i.key,f=await i.value;if(s.status==="aborted"||f.status==="aborted")return ne;(s.status==="dirty"||f.status==="dirty")&&r.dirty(),c.set(s.value,f.value)}return{status:r.value,value:c}})}else{const c=new Map;for(const i of d){const s=i.key,f=i.value;if(s.status==="aborted"||f.status==="aborted")return ne;(s.status==="dirty"||f.status==="dirty")&&r.dirty(),c.set(s.value,f.value)}return{status:r.value,value:c}}}}Uo.create=(o,e,r)=>new Uo({valueType:e,keyType:o,typeName:de.ZodMap,...fe(r)});class vr extends pe{_parse(e){const{status:r,ctx:t}=this._processInputParams(e);if(t.parsedType!==U.set)return P(t,{code:O.invalid_type,expected:U.set,received:t.parsedType}),ne;const a=this._def;a.minSize!==null&&t.data.size<a.minSize.value&&(P(t,{code:O.too_small,minimum:a.minSize.value,type:"set",inclusive:!0,exact:!1,message:a.minSize.message}),r.dirty()),a.maxSize!==null&&t.data.size>a.maxSize.value&&(P(t,{code:O.too_big,maximum:a.maxSize.value,type:"set",inclusive:!0,exact:!1,message:a.maxSize.message}),r.dirty());const n=this._def.valueType;function d(i){const s=new Set;for(const f of i){if(f.status==="aborted")return ne;f.status==="dirty"&&r.dirty(),s.add(f.value)}return{status:r.value,value:s}}const c=[...t.data.values()].map((i,s)=>n._parse(new Ge(t,i,t.path,s)));return t.common.async?Promise.all(c).then(i=>d(i)):d(c)}min(e,r){return new vr({...this._def,minSize:{value:e,message:G.toString(r)}})}max(e,r){return new vr({...this._def,maxSize:{value:e,message:G.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}}vr.create=(o,e)=>new vr({valueType:o,minSize:null,maxSize:null,typeName:de.ZodSet,...fe(e)});class Ho extends pe{get schema(){return this._def.getter()}_parse(e){const{ctx:r}=this._processInputParams(e);return this._def.getter()._parse({data:r.data,path:r.path,parent:r})}}Ho.create=(o,e)=>new Ho({getter:o,typeName:de.ZodLazy,...fe(e)});class Go extends pe{_parse(e){if(e.data!==this._def.value){const r=this._getOrReturnCtx(e);return P(r,{received:r.data,code:O.invalid_literal,expected:this._def.value}),ne}return{status:"valid",value:e.data}}get value(){return this._def.value}}Go.create=(o,e)=>new Go({value:o,typeName:de.ZodLiteral,...fe(e)});function Pt(o,e){return new lr({values:o,typeName:de.ZodEnum,...fe(e)})}class lr extends pe{_parse(e){if(typeof e.data!="string"){const r=this._getOrReturnCtx(e),t=this._def.values;return P(r,{expected:he.joinValues(t),received:r.parsedType,code:O.invalid_type}),ne}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){const r=this._getOrReturnCtx(e),t=this._def.values;return P(r,{received:r.data,code:O.invalid_enum_value,options:t}),ne}return Le(e.data)}get options(){return this._def.values}get enum(){const e={};for(const r of this._def.values)e[r]=r;return e}get Values(){const e={};for(const r of this._def.values)e[r]=r;return e}get Enum(){const e={};for(const r of this._def.values)e[r]=r;return e}extract(e,r=this._def){return lr.create(e,{...this._def,...r})}exclude(e,r=this._def){return lr.create(this.options.filter(t=>!e.includes(t)),{...this._def,...r})}}lr.create=Pt;class Yo extends pe{_parse(e){const r=he.getValidEnumValues(this._def.values),t=this._getOrReturnCtx(e);if(t.parsedType!==U.string&&t.parsedType!==U.number){const a=he.objectValues(r);return P(t,{expected:he.joinValues(a),received:t.parsedType,code:O.invalid_type}),ne}if(this._cache||(this._cache=new Set(he.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){const a=he.objectValues(r);return P(t,{received:t.data,code:O.invalid_enum_value,options:a}),ne}return Le(e.data)}get enum(){return this._def.values}}Yo.create=(o,e)=>new Yo({values:o,typeName:de.ZodNativeEnum,...fe(e)});class Tr extends pe{unwrap(){return this._def.type}_parse(e){const{ctx:r}=this._processInputParams(e);if(r.parsedType!==U.promise&&r.common.async===!1)return P(r,{code:O.invalid_type,expected:U.promise,received:r.parsedType}),ne;const t=r.parsedType===U.promise?r.data:Promise.resolve(r.data);return Le(t.then(a=>this._def.type.parseAsync(a,{path:r.path,errorMap:r.common.contextualErrorMap})))}}Tr.create=(o,e)=>new Tr({type:o,typeName:de.ZodPromise,...fe(e)});class cr extends pe{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===de.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){const{status:r,ctx:t}=this._processInputParams(e),a=this._def.effect||null,n={addIssue:d=>{P(t,d),d.fatal?r.abort():r.dirty()},get path(){return t.path}};if(n.addIssue=n.addIssue.bind(n),a.type==="preprocess"){const d=a.transform(t.data,n);if(t.common.async)return Promise.resolve(d).then(async c=>{if(r.value==="aborted")return ne;const i=await this._def.schema._parseAsync({data:c,path:t.path,parent:t});return i.status==="aborted"?ne:i.status==="dirty"||r.value==="dirty"?pr(i.value):i});{if(r.value==="aborted")return ne;const c=this._def.schema._parseSync({data:d,path:t.path,parent:t});return c.status==="aborted"?ne:c.status==="dirty"||r.value==="dirty"?pr(c.value):c}}if(a.type==="refinement"){const d=c=>{const i=a.refinement(c,n);if(t.common.async)return Promise.resolve(i);if(i instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return c};if(t.common.async===!1){const c=this._def.schema._parseSync({data:t.data,path:t.path,parent:t});return c.status==="aborted"?ne:(c.status==="dirty"&&r.dirty(),d(c.value),{status:r.value,value:c.value})}else return this._def.schema._parseAsync({data:t.data,path:t.path,parent:t}).then(c=>c.status==="aborted"?ne:(c.status==="dirty"&&r.dirty(),d(c.value).then(()=>({status:r.value,value:c.value}))))}if(a.type==="transform")if(t.common.async===!1){const d=this._def.schema._parseSync({data:t.data,path:t.path,parent:t});if(!dr(d))return ne;const c=a.transform(d.value,n);if(c instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:c}}else return this._def.schema._parseAsync({data:t.data,path:t.path,parent:t}).then(d=>dr(d)?Promise.resolve(a.transform(d.value,n)).then(c=>({status:r.value,value:c})):ne);he.assertNever(a)}}cr.create=(o,e,r)=>new cr({schema:o,typeName:de.ZodEffects,effect:e,...fe(r)});cr.createWithPreprocess=(o,e,r)=>new cr({schema:e,effect:{type:"preprocess",transform:o},typeName:de.ZodEffects,...fe(r)});class He extends pe{_parse(e){return this._getType(e)===U.undefined?Le(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}He.create=(o,e)=>new He({innerType:o,typeName:de.ZodOptional,...fe(e)});class sr extends pe{_parse(e){return this._getType(e)===U.null?Le(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}sr.create=(o,e)=>new sr({innerType:o,typeName:de.ZodNullable,...fe(e)});class Gr extends pe{_parse(e){const{ctx:r}=this._processInputParams(e);let t=r.data;return r.parsedType===U.undefined&&(t=this._def.defaultValue()),this._def.innerType._parse({data:t,path:r.path,parent:r})}removeDefault(){return this._def.innerType}}Gr.create=(o,e)=>new Gr({innerType:o,typeName:de.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...fe(e)});class Yr extends pe{_parse(e){const{ctx:r}=this._processInputParams(e),t={...r,common:{...r.common,issues:[]}},a=this._def.innerType._parse({data:t.data,path:t.path,parent:{...t}});return Or(a)?a.then(n=>({status:"valid",value:n.status==="valid"?n.value:this._def.catchValue({get error(){return new Ze(t.common.issues)},input:t.data})})):{status:"valid",value:a.status==="valid"?a.value:this._def.catchValue({get error(){return new Ze(t.common.issues)},input:t.data})}}removeCatch(){return this._def.innerType}}Yr.create=(o,e)=>new Yr({innerType:o,typeName:de.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...fe(e)});class Ko extends pe{_parse(e){if(this._getType(e)!==U.nan){const t=this._getOrReturnCtx(e);return P(t,{code:O.invalid_type,expected:U.nan,received:t.parsedType}),ne}return{status:"valid",value:e.data}}}Ko.create=o=>new Ko({typeName:de.ZodNaN,...fe(o)});class wl extends pe{_parse(e){const{ctx:r}=this._processInputParams(e),t=r.data;return this._def.type._parse({data:t,path:r.path,parent:r})}unwrap(){return this._def.type}}class eo extends pe{_parse(e){const{status:r,ctx:t}=this._processInputParams(e);if(t.common.async)return(async()=>{const n=await this._def.in._parseAsync({data:t.data,path:t.path,parent:t});return n.status==="aborted"?ne:n.status==="dirty"?(r.dirty(),pr(n.value)):this._def.out._parseAsync({data:n.value,path:t.path,parent:t})})();{const a=this._def.in._parseSync({data:t.data,path:t.path,parent:t});return a.status==="aborted"?ne:a.status==="dirty"?(r.dirty(),{status:"dirty",value:a.value}):this._def.out._parseSync({data:a.value,path:t.path,parent:t})}}static create(e,r){return new eo({in:e,out:r,typeName:de.ZodPipeline})}}class Kr extends pe{_parse(e){const r=this._def.innerType._parse(e),t=a=>(dr(a)&&(a.value=Object.freeze(a.value)),a);return Or(r)?r.then(a=>t(a)):t(r)}unwrap(){return this._def.innerType}}Kr.create=(o,e)=>new Kr({innerType:o,typeName:de.ZodReadonly,...fe(e)});var de;(function(o){o.ZodString="ZodString",o.ZodNumber="ZodNumber",o.ZodNaN="ZodNaN",o.ZodBigInt="ZodBigInt",o.ZodBoolean="ZodBoolean",o.ZodDate="ZodDate",o.ZodSymbol="ZodSymbol",o.ZodUndefined="ZodUndefined",o.ZodNull="ZodNull",o.ZodAny="ZodAny",o.ZodUnknown="ZodUnknown",o.ZodNever="ZodNever",o.ZodVoid="ZodVoid",o.ZodArray="ZodArray",o.ZodObject="ZodObject",o.ZodUnion="ZodUnion",o.ZodDiscriminatedUnion="ZodDiscriminatedUnion",o.ZodIntersection="ZodIntersection",o.ZodTuple="ZodTuple",o.ZodRecord="ZodRecord",o.ZodMap="ZodMap",o.ZodSet="ZodSet",o.ZodFunction="ZodFunction",o.ZodLazy="ZodLazy",o.ZodLiteral="ZodLiteral",o.ZodEnum="ZodEnum",o.ZodEffects="ZodEffects",o.ZodNativeEnum="ZodNativeEnum",o.ZodOptional="ZodOptional",o.ZodNullable="ZodNullable",o.ZodDefault="ZodDefault",o.ZodCatch="ZodCatch",o.ZodPromise="ZodPromise",o.ZodBranded="ZodBranded",o.ZodPipeline="ZodPipeline",o.ZodReadonly="ZodReadonly"})(de||(de={}));Ye.create;$e.create;Rr.create;zr.create;er.create;lr.create;Tr.create;He.create;sr.create;function ro(o){if(!(o instanceof Ne))return o&&typeof o=="object"&&"_def"in o?console.error('ImportCSV: Schema detection failed. This usually means multiple Zod versions are installed. Ensure you have only one version: run "npm ls zod" to check.'):console.warn("zodSchemaToColumns: Only z.object() schemas supported"),[];const e=o.shape;return Object.entries(e).map(([r,t])=>{const a=kl(t),n=Sl(t,r),{type:d,options:c}=Cl(t),i=jl(t),s={id:r,label:Nl(r),type:d};return a.length>0&&(s.validators=a),n.length>0&&(s.transformations=n),c&&(s.options=c),i&&(s.description=i),s})}function kl(o){const e=[];let r=o;for(;r._def.typeName==="ZodOptional"||r._def.typeName==="ZodNullable";)r=r._def.innerType;o._def.typeName!=="ZodOptional"&&e.push({type:"required"});const t=r._def.checks||[];for(const a of t)switch(a.kind){case"min":r._def.typeName==="ZodString"?e.push({type:"min_length",value:a.value,message:a.message}):r._def.typeName==="ZodNumber"&&e.push({type:"min",value:a.value,message:a.message});break;case"max":r._def.typeName==="ZodString"?e.push({type:"max_length",value:a.value,message:a.message}):r._def.typeName==="ZodNumber"&&e.push({type:"max",value:a.value,message:a.message});break;case"regex":e.push({type:"regex",pattern:a.regex.source,message:a.message});break}return e}function Sl(o,e){const r=[];let t=o;const a=[];for(;t;)if(t._def.typeName==="ZodEffects"&&t._def.effect?.type==="transform"&&a.push(t._def.effect),t._def.innerType)t=t._def.innerType;else if(t._def.schema)t=t._def.schema;else break;for(const n of a){if(!n)continue;const d=n.transform?.toString()||"";d.includes(".trim()")&&r.push({type:"trim"}),d.includes(".toLowerCase()")&&r.push({type:"lowercase"}),d.includes(".toUpperCase()")&&r.push({type:"uppercase"}),r.length===0&&n.transform&&console.warn(`Unable to convert Zod transform for field "${e}". Use Column transformations for full support.`)}return r}function Cl(o){let e=o;for(;e._def.typeName==="ZodOptional"||e._def.typeName==="ZodNullable";)e=e._def.innerType;const r=e._def.typeName;return(e._def.checks||[]).some(d=>d.kind==="email")?{type:"email"}:r==="ZodEnum"?{type:"select",options:e._def.values}:{type:{ZodString:"string",ZodNumber:"number",ZodBoolean:"string",ZodDate:"date"}[r]||"string"}}function jl(o){let e=o;for(;e;){if(e._def.description)return e._def.description;if(e._def.innerType)e=e._def.innerType;else break}}function Nl(o){return o.replace(/([A-Z])/g," $1").replace(/_/g," ").replace(/^./,e=>e.toUpperCase()).trim()}const $t=Te((o,e)=>{const{isModal:r=!0,modalIsOpen:t=!0,modalOnCloseTriggered:a=()=>null,modalCloseOnOutsideClick:n,theme:d,darkMode:c=!1,primaryColor:i="#2563eb",className:s,classNames:f,onComplete:E,customStyles:v,showDownloadTemplateButton:y,skipHeaderRowSelection:x,invalidRowHandling:h,includeUnmatchedColumns:S,language:w,customTranslations:N,importerKey:L,backendUrl:le,user:ge,metadata:K,demoData:V,schema:u,columns:b,...g}=o,C=e??p.useRef(null),[_,I]=p.useState(t),$=p.useMemo(()=>{if(u){b&&console.warn("ImportCSV: Both `schema` and `columns` props provided. Using `schema`. The `columns` prop is deprecated and will be removed in v2.0.");const B=ro(u);return B.length===0&&console.error("ImportCSV: Failed to extract columns from schema. Ensure schema is z.object({...}) and you have a single Zod version installed."),B}return b&&console.warn("ImportCSV: The `columns` prop is deprecated. Use `schema` prop with Zod schemas instead. See migration guide: https://docs.importcsv.com/guides/zod-schemas"),b},[u,b]);p.useEffect(()=>{I(t)},[t]);const Y="CSVImporter",oe=c?`${Y}-dark`:`${Y}-light`,A=["importcsv","csv-importer",`${Y}-${r?"modal":"div"}`,oe,s,f?.root].filter(B=>B).join(" "),k=Yd(B=>B.setTheme);p.useEffect(()=>{k(c?"dark":"light")},[c]),p.useEffect(()=>{if(i&&Jn(i)&&C?.current){const B=C.current;B&&(B.style.setProperty("--color-primary",i),B.style.setProperty("--color-primary-hover",mr(i,20)))}},[i,C]);const F=()=>{I(!1),a()},be={ref:C,className:A,"data-theme":c?"dark":"light",style:{colorScheme:c?"dark":"light"},...g},H=()=>l.jsx(Ed,{theme:c?"dark":d,primaryColor:i,customStyles:v,targetElement:C?.current,children:l.jsx(Sd,{isModal:r,modalIsOpen:t,modalOnCloseTriggered:a,modalCloseOnOutsideClick:n,darkMode:c,primaryColor:i,className:f?.content||s,onComplete:E,customStyles:v,showDownloadTemplateButton:y,skipHeaderRowSelection:x,invalidRowHandling:h,includeUnmatchedColumns:S,language:w,customTranslations:N,importerKey:L,backendUrl:le,user:ge,metadata:K,demoData:V,columns:$,schema:u})});return r?l.jsx(Kd,{isOpen:_,onClose:F,closeOnOutsideClick:n,className:A,contentClassName:"csv-importer-modal-container",children:l.jsx("div",{...be,children:l.jsx(H,{})})}):l.jsx("div",{...be,children:l.jsx(H,{})})}),Ft=Jt(null);function Zt({children:o,schema:e,columns:r,onComplete:t,data:a}){const n=p.useMemo(()=>e?ro(e):r||[],[e,r]),d=p.useMemo(()=>s=>e?e.safeParse(s):{success:!0,data:s},[e]),c=p.useMemo(()=>({columns:n,schema:e,validate:d,onComplete:t,data:a}),[n,e,d,t,a]),i=Ft.Provider;return l.jsx(i,{value:c,children:o})}function oo(){const o=p.useContext(Ft);if(!o)throw new Error("useCSV must be used within a CSV.Root component");return o}function El(o){const e=o.trim().split(`
|
|
137
|
-
`);if(e.length===0)return[];const r=e[0].split(",").map(a=>a.trim()),t=[];for(let a=1;a<e.length;a++){const n=e[a].split(",").map(c=>c.trim()),d={};r.forEach((c,i)=>{d[c]=n[i]||""}),t.push(d)}return t}const Zr=({onUpload:o,onError:e,placeholder:r,maxSize:t,acceptedFormats:a=["csv"],className:n,theme:d="light",appearance:c})=>{const[i,s]=p.useState(!1),[f,E]=p.useState(!1),v=p.useCallback(async S=>{s(!0);try{const w=S.name.split(".").pop()?.toLowerCase();if(!a.includes(w||"")){e?.({code:"INVALID_FORMAT",message:`Invalid file format. Accepted formats: ${a.join(", ")}`}),s(!1);return}if(t&&S.size>t){e?.({code:"FILE_TOO_LARGE",message:`File size exceeds maximum allowed size of ${t} bytes`}),s(!1);return}const N=await S.text(),L=El(N);if(L.length===0){e?.({code:"EMPTY_FILE",message:"CSV file is empty"}),s(!1);return}o({rows:L})}catch{e?.({code:"PARSE_ERROR",message:"Failed to parse CSV file"})}finally{s(!1)}},[o,e,t,a]),y={"text/csv":[".csv"]};a.includes("tsv")&&(y["text/tab-separated-values"]=[".tsv"]),a.includes("txt")&&(y["text/plain"]=[".txt"]);const x=ce("w-full flex justify-center items-center flex-col rounded-lg transition-all duration-200","min-h-[320px] py-12 px-10 border-2 border-dashed",d==="dark"?"bg-gray-800 border-gray-600 hover:border-gray-500":"bg-gray-50 border-gray-300 hover:border-gray-400",f&&"border-blue-500 bg-blue-50",i&&"opacity-50 cursor-not-allowed",n),h=c?.variables?{borderRadius:c.variables.borderRadius}:void 0;return l.jsx("div",{className:x,style:h,children:l.jsxs(At,{onFileSelect:v,accept:y,disabled:i,loading:i,className:"w-full h-full flex flex-col items-center justify-center",children:[l.jsx("div",{className:"mb-4 p-4 rounded-full bg-white",children:l.jsx(Qr,{size:48,className:"text-gray-400"})}),i?l.jsx("p",{className:"text-lg font-medium text-gray-700",children:"Parsing CSV..."}):l.jsxs(l.Fragment,{children:[l.jsx("p",{className:"text-lg font-medium text-gray-700 mb-2",children:r||"Drag and drop your CSV file here"}),l.jsx("p",{className:"text-sm text-gray-500",children:"or click to browse"})]}),l.jsx("label",{className:"sr-only",htmlFor:"file-upload",children:"Choose file to upload"})]})})},Ol=({schema:o,columns:e,onUpload:r,...t})=>{if(!o&&!e)return l.jsx(Zr,{onUpload:r,...t});try{return l.jsx(Zr,{onUpload:r,...t})}catch{return l.jsx(Zt,{schema:o,columns:e,onComplete:n=>r({rows:n}),children:l.jsx(Zr,{onUpload:r,...t})})}};function Il(o,e){const r=o.length>e.length?o:e,t=o.length>e.length?e:o;if(r.length===0)return 1;const a=Rl(r.toLowerCase(),t.toLowerCase());return(r.length-a)/r.length}function Rl(o,e){const r=[];for(let t=0;t<=o.length;t++){let a=t;for(let n=0;n<=e.length;n++)if(t===0)r[n]=n;else if(n>0){let d=r[n-1];o.charAt(t-1)!==e.charAt(n-1)&&(d=Math.min(Math.min(d,a),r[n])+1),r[n-1]=a,a=d}t>0&&(r[e.length]=a)}return r[e.length]}const zl=({schema:o,columns:e,data:r,onComplete:t,onError:a,autoSuggest:n=!0,showPreview:d=!1,previewRows:c=5,autoSkipIfPerfectMatch:i=!1,className:s,theme:f="light",appearance:E})=>{const v=p.useMemo(()=>{if(o&&o instanceof Ne){const b=o.shape;return Object.entries(b).map(([g,C])=>({id:g,label:g.charAt(0).toUpperCase()+g.slice(1),required:!C.isOptional?.()}))}return e||[]},[o,e]),y=p.useMemo(()=>!r.rows||r.rows.length===0?[]:Object.keys(r.rows[0]),[r]),[x,h]=p.useState({}),[S,w]=p.useState([]),[N,L]=p.useState(null);p.useEffect(()=>{if(!n||y.length===0)return;const b={};v.forEach(g=>{let C="",_=0;y.forEach(I=>{const $=Il(g.id,I);$>_&&(_=$,C=I)}),_>.5&&(b[g.id]=C)}),h(b)},[v,y,n]),p.useEffect(()=>{if(!i)return;if(v.every(g=>y.includes(g.id))){const g={};v.forEach(C=>{g[C.id]=C.id}),t(g)}},[v,y,i,t]),p.useEffect(()=>{y.length===0&&a?.({code:"NO_COLUMNS",message:"No columns found in CSV data"})},[y,a]);const le=(b,g)=>{h(C=>({...C,[b]:g})),w([]),L(null)},ge=()=>{const b=[];if(v.forEach(_=>{_.required&&!x[_.id]&&b.push(`${_.label||_.id} is required and must be mapped`)}),b.length>0){w(b);return}const g=Object.values(x).filter(Boolean);g.length!==new Set(g).size&&L("Warning: Same column mapped multiple times"),t(x)},K=p.useMemo(()=>!d||!r.rows?[]:r.rows.slice(0,c).map(b=>{const g={};return Object.entries(x).forEach(([C,_])=>{_&&(g[C]=b[_])}),g}),[r,x,d,c]);if(r.rows.length===0)return l.jsx("div",{className:ce("p-8 text-center",f==="dark"&&"bg-gray-800 text-white"),children:l.jsx("p",{className:"text-gray-500",children:"No data available to map"})});const V=ce("p-6 rounded-lg",f==="dark"?"bg-gray-800 text-white theme-dark":"bg-white",s),u=E?.variables?.colorPrimary?{backgroundColor:E.variables.colorPrimary}:void 0;return l.jsxs("div",{className:V,children:[l.jsx("h2",{className:"text-2xl font-semibold mb-6",children:"Map Your Columns"}),l.jsx("div",{className:"space-y-4 mb-6",children:v.map(b=>l.jsxs("div",{className:"flex items-center gap-4",children:[l.jsxs("label",{htmlFor:`mapping-${b.id}`,className:"w-1/3 font-medium",children:[b.label||b.id,b.required&&l.jsx("span",{className:"text-red-500 ml-1",children:"*"})]}),l.jsxs("select",{id:`mapping-${b.id}`,"aria-label":b.label||b.id,value:x[b.id]||"",onChange:g=>le(b.id,g.target.value),className:"flex-1 px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500",children:[l.jsx("option",{value:"",children:"-- Select Column --"}),y.map(g=>l.jsx("option",{value:g,children:g},g))]})]},b.id))}),S.length>0&&l.jsxs("div",{className:"mb-4 p-4 bg-red-50 border border-red-200 rounded-md",children:[l.jsx("p",{className:"text-red-800 font-medium mb-2",children:"Please fix the following errors:"}),l.jsx("ul",{className:"list-disc list-inside text-red-700",children:S.map((b,g)=>l.jsx("li",{children:b},g))})]}),N&&l.jsx("div",{className:"mb-4 p-4 bg-yellow-50 border border-yellow-200 rounded-md",children:l.jsx("p",{className:"text-yellow-800",children:N})}),d&&K.length>0&&l.jsxs("div",{className:"mb-6",children:[l.jsx("h3",{className:"text-lg font-medium mb-3",children:"Preview"}),l.jsx("div",{className:"overflow-x-auto",children:l.jsxs("table",{className:"min-w-full border border-gray-200",children:[l.jsx("thead",{className:"bg-gray-50",children:l.jsx("tr",{children:v.map(b=>l.jsx("th",{className:"px-4 py-2 border-b text-left",children:b.label||b.id},b.id))})}),l.jsx("tbody",{children:K.map((b,g)=>l.jsx("tr",{className:"border-b",children:v.map(C=>l.jsx("td",{className:"px-4 py-2",children:b[C.id]||"-"},C.id))},g))})]})})]}),l.jsx("button",{onClick:ge,style:u,className:"px-6 py-2 bg-blue-600 text-white rounded-md hover:bg-blue-700 focus:outline-none focus:ring-2 focus:ring-blue-500",children:"Continue"})]})};function Tl({children:o}){const e=oo(),[r,t]=p.useState([]),[a,n]=p.useState(!1),d=p.useCallback(async()=>{n(!0);const c=[];try{e.schema&&e.data?.rows&&e.data.rows.forEach((i,s)=>{const f=e.schema.safeParse(i);f.success||f.error.issues.forEach(E=>{c.push({row:s,column:E.path.join("."),message:E.message})})})}catch(i){console.error("Validation error:",i)}finally{t(c),n(!1)}return c},[e.schema,e.data]);return o({errors:r,validate:d,isValidating:a})}function wr({children:o,...e}){const r=ra(o);if(r.length===0)return null;const t=r[0];if(!t||typeof t!="object"||!("type"in t))return null;const a=t.props||{},n=(...f)=>{a.onClick&&typeof a.onClick=="function"&&a.onClick(...f),e.onClick&&typeof e.onClick=="function"&&e.onClick(...f)},d=typeof a.className=="string"?a.className:"",c=typeof e.className=="string"?e.className:"",i=[d,c].filter(Boolean).join(" "),s={...e,...a,onClick:n,className:i||void 0};return Qt(t,s)}function Ml({asChild:o=!1,children:e,onClick:r,...t}){const a=p.useRef(null),n=()=>{a.current&&a.current.click(),r?.()},d=o?wr:"button";return l.jsxs("div",{children:[l.jsx(d,{onClick:n,...t,children:e}),l.jsx("input",{ref:a,type:"file",accept:".csv,.txt",style:{display:"none"},"aria-hidden":"true"})]})}function Al({asChild:o=!1,children:e,onClick:r,...t}){const a=()=>{r?.()},n=o?wr:"button";return l.jsx(n,{onClick:a,...t,children:e})}function Dl({asChild:o=!1,children:e,onClick:r,...t}){const a=()=>{r?.()},n=o?wr:"button";return l.jsx(n,{onClick:a,...t,children:e})}function Vl({asChild:o=!1,children:e,onClick:r,...t}){const a=oo(),n=()=>{a?.data?.rows&&a.onComplete(a.data.rows),r?.()},d=o?wr:"button";return l.jsx(d,{onClick:n,...t,children:e})}const Ll=Object.freeze(Object.defineProperty({__proto__:null,BackButton:Dl,NextButton:Al,Root:Zt,Slot:wr,SubmitButton:Vl,UploadTrigger:Ml,Validator:Tl,useCSV:oo,zodSchemaToColumns:ro},Symbol.toStringTag,{value:"Module"})),Pl=`@import"https://fonts.googleapis.com/css2?family=Geist:wght@100;200;300;400;500;600;700;800;900&display=swap";@import"https://fonts.googleapis.com/css2?family=Geist:wght@100;200;300;400;500;600;700;800;900&display=swap";.Errors-module-module__errors___fyHDX{color:var(--color-text-error);margin:var(--m-xxs) 0}.Errors-module-module__errors___fyHDX p{margin:0;display:flex;align-items:center;gap:var(--m-xxs);text-align:left}.Errors-module-module__centered___RHKZi{display:flex;justify-content:center;align-items:center;flex-direction:column;height:100%}.Validation-module-module__baseContainer___-0AsU,.Validation-module-module__flexContainer___cBods{width:100%;max-width:100%;padding:1.5rem}@media (max-width: 768px){.Validation-module-module__baseContainer___-0AsU,.Validation-module-module__flexContainer___cBods{padding:1rem}}@media (max-width: 640px){.Validation-module-module__baseContainer___-0AsU,.Validation-module-module__flexContainer___cBods{padding:.75rem}}.Validation-module-module__flexContainer___cBods{display:flex;flex-direction:column;min-height:0;min-width:0}.Validation-module-module__scrollableContent___d0ytT{flex:1;display:flex;flex-direction:column;overflow:visible;max-width:100%;min-width:0}.Validation-module-module__tableContainer___jRikO{flex:1;overflow-x:auto;overflow-y:auto;max-width:100%;-webkit-overflow-scrolling:touch}.Validation-module-module__tableContainer___jRikO table{min-width:100%;width:-moz-max-content;width:max-content}.Validation-module-module__headerSection___drcpg,.Validation-module-module__header___ocGI2{padding:1rem;border-bottom:1px solid #e5e7eb}.Validation-module-module__headerSection___drcpg h2,.Validation-module-module__header___ocGI2 h2{font-size:1.25rem;font-weight:600;color:#111827;margin:0 0 .5rem}.Validation-module-module__headerSection___drcpg p,.Validation-module-module__header___ocGI2 p{font-size:.875rem;color:#6b7280;margin:0}.Validation-module-module__toolbar___-DCj6{padding:.75rem 1rem;background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;margin-bottom:1rem;box-shadow:0 1px 2px #0000000d}.Validation-module-module__validationContainer___jrlPR{display:flex;flex-direction:column;width:100%;min-height:600px;max-height:calc(100vh - 2rem);height:calc(100vh - 2rem);max-width:100%;box-sizing:border-box;font-family:Geist,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:1rem 0}.Validation-module-module__header___ocGI2{flex-shrink:0;padding:1.5rem 1.5rem 0}@media (max-width: 640px){.Validation-module-module__header___ocGI2{padding:1rem 1rem 0}.Validation-module-module__header___ocGI2 h2{font-size:1.125rem}.Validation-module-module__header___ocGI2 p{font-size:.8125rem}}.Validation-module-module__toolbarSection___Q0YdW{flex-shrink:0;padding:1rem 1.5rem 0;background:transparent}@media (max-width: 640px){.Validation-module-module__toolbarSection___Q0YdW{padding:.75rem 1rem 0}}.Validation-module-module__scrollableSection___nwC-B{flex:1 1 auto;min-width:0;overflow:auto;min-height:200px;margin:1rem 1.5rem 0;background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f;-webkit-overflow-scrolling:touch}.Validation-module-module__scrollableSection___nwC-B>table{border-collapse:collapse}.Validation-module-module__scrollableSection___nwC-B>table thead{position:sticky;top:0;z-index:10}.Validation-module-module__scrollableSection___nwC-B>table thead th{background:#f9fafb;border-bottom:2px solid #e5e7eb}.Validation-module-module__scrollableSection___nwC-B>table th:first-child,.Validation-module-module__scrollableSection___nwC-B>table td:first-child{position:sticky;left:0;z-index:5}.Validation-module-module__scrollableSection___nwC-B>table thead th:first-child{z-index:11}@media (max-width: 640px){.Validation-module-module__scrollableSection___nwC-B{margin:.75rem}}.Validation-module-module__validationContent___hn2Dz{padding:1rem 0;width:100%;max-width:100%;overflow:visible}.Validation-module-module__toolbar___-DCj6{background:transparent;border:1px solid #e5e7eb;border-radius:.5rem;margin-bottom:0;margin-top:.5rem;box-shadow:0 1px 2px #0000000d}@media (max-width: 640px){.Validation-module-module__toolbar___-DCj6{padding:.75rem}.Validation-module-module__toolbar___-DCj6>div{flex-direction:column;gap:.75rem;align-items:stretch}}.Validation-module-module__errorBadge___yeHS0{display:inline-flex;align-items:center;padding:.25rem .625rem;background-color:#fee2e2;border:1px solid #fca5a5;border-radius:.375rem;font-size:.875rem;font-weight:600;color:#dc2626;animation:Validation-module-module__pulse___d-MKR 2s infinite}@keyframes Validation-module-module__pulse___d-MKR{0%,to{opacity:1}50%{opacity:.85}}.Validation-module-module__rowCount___h-OSk{font-size:.75rem;color:#9ca3af;font-weight:400}.Validation-module-module__tabFilter___DV34i{display:inline-flex;align-items:center;background:#f3f4f6;padding:.125rem;border-radius:2rem}@media (max-width: 640px){.Validation-module-module__tabFilter___DV34i{width:100%;justify-content:space-between}}.Validation-module-module__tab___JPIkM{position:relative;display:inline-flex;align-items:center;gap:.375rem;padding:.5rem 1.25rem;border:none;background:transparent;color:#6b7280;font-size:.875rem;font-weight:500;border-radius:1.75rem;cursor:pointer;transition:all .2s ease;outline:none;margin:0}@media (max-width: 640px){.Validation-module-module__tab___JPIkM{padding:.5rem .75rem;font-size:.8125rem;flex:1;justify-content:center}}.Validation-module-module__tab___JPIkM:hover:not(.Validation-module-module__active___rLvN7){color:#374151}.Validation-module-module__tab___JPIkM:focus-visible{box-shadow:0 0 0 2px #3b82f6;z-index:1}.Validation-module-module__tab___JPIkM.Validation-module-module__active___rLvN7{background:#4b5563;color:#fff;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f}.Validation-module-module__tab___JPIkM.Validation-module-module__active___rLvN7 .Validation-module-module__count___lb09d{background:#fff3;color:#fff}.Validation-module-module__tab___JPIkM .Validation-module-module__count___lb09d{display:inline-flex;align-items:center;justify-content:center;min-width:1.5rem;padding:.125rem .375rem;height:1.25rem;background:transparent;color:inherit;font-size:.875rem;font-weight:600;transition:all .2s ease}.Validation-module-module__tab___JPIkM.Validation-module-module__errorTab___ebQQd.Validation-module-module__active___rLvN7{background:#dc2626}.Validation-module-module__tab___JPIkM.Validation-module-module__errorTab___ebQQd.Validation-module-module__active___rLvN7 .Validation-module-module__count___lb09d{background:#fff3;color:#fff}.Validation-module-module__tab___JPIkM.Validation-module-module__errorTab___ebQQd:not(.Validation-module-module__active___rLvN7) .Validation-module-module__count___lb09d{color:#dc2626}.Validation-module-module__spreadsheetContainer___VOHHJ{width:100%;overflow-x:auto;overflow-y:auto;-webkit-overflow-scrolling:touch;background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f}.Validation-module-module__spreadsheetWrapper___jE9rZ{position:relative}.Validation-module-module__spreadsheetTable___OzR-h{width:-moz-max-content;width:max-content;min-width:800px;border-collapse:separate;border-spacing:0;font-size:.875rem}.Validation-module-module__spreadsheetHeader___CcIvW{position:sticky;top:0;z-index:10;background:#f9fafb}.Validation-module-module__spreadsheetHeader___CcIvW tr th{background:#f9fafb;border-bottom:2px solid #e5e7eb;border-right:1px solid #e5e7eb;padding:0;text-align:left;font-weight:600;color:#111827;position:relative}.Validation-module-module__spreadsheetHeader___CcIvW tr th:last-child{border-right:none}.Validation-module-module__rowNumberHeader___hBB39{width:60px;min-width:60px;max-width:60px;text-align:center!important;background:#f9fafb!important;position:sticky;left:0;z-index:11;font-size:.75rem;padding:.75rem 0!important}.Validation-module-module__columnHeader___Yjc-8{width:auto;min-width:100px}.Validation-module-module__columnHeader___Yjc-8 .Validation-module-module__headerContent___soxS5{padding:.75rem 1rem;font-size:.875rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.Validation-module-module__spreadsheetBody___ASDqW .Validation-module-module__dataRow___fAJUe:hover .Validation-module-module__dataCell___Kqej5{background:#f3f4f6}.Validation-module-module__spreadsheetBody___ASDqW .Validation-module-module__dataRow___fAJUe:hover .Validation-module-module__rowNumber___gW7gl{background:#f0f2f5}.Validation-module-module__spreadsheetBody___ASDqW .Validation-module-module__dataRow___fAJUe.Validation-module-module__errorRow___E5crc .Validation-module-module__dataCell___Kqej5{background:#fff1f1}.Validation-module-module__rowNumber___gW7gl{width:60px;min-width:60px;max-width:60px;background:#f9fafb;border-right:1px solid #e5e7eb;border-bottom:1px solid #e5e7eb;text-align:center;font-size:.75rem;font-weight:500;color:#6b7280;padding:.75rem 0;position:sticky;left:0;z-index:1}.Validation-module-module__dataCell___Kqej5{width:auto;min-width:100px;border-right:1px solid #e5e7eb;border-bottom:1px solid #e5e7eb;padding:0;background:#fff;position:relative;transition:background-color .15s ease;white-space:nowrap}.Validation-module-module__dataCell___Kqej5:last-child{border-right:none}.Validation-module-module__dataCell___Kqej5.Validation-module-module__errorCell___0EbsM{background:#fee2e2}.Validation-module-module__dataCell___Kqej5.Validation-module-module__errorCell___0EbsM .Validation-module-module__cellInput___LsyOo{color:#111827}.Validation-module-module__cellContent___ubxVt{position:relative;width:100%;min-height:44px;display:flex;align-items:center}.Validation-module-module__cellInput___LsyOo{width:100%;height:100%;min-height:40px;border:none;background:transparent;padding:.625rem 1.75rem .625rem .75rem;font-size:.875rem;font-family:inherit;color:#111827;outline:none;transition:box-shadow .15s ease;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.Validation-module-module__cellInput___LsyOo:focus{box-shadow:inset 0 0 0 2px #3b82f6;z-index:2;position:relative}.Validation-module-module__cellInput___LsyOo:hover{background:#00000003}.Validation-module-module__errorIndicator___2KEsf{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;cursor:help;z-index:3}.Validation-module-module__errorIndicator___2KEsf svg{filter:drop-shadow(0 1px 2px rgba(0,0,0,.1))}.Validation-module-module__emptyState___g41in{padding:3rem;text-align:center;color:#6b7280}.Validation-module-module__content___FgF43{display:flex;flex-direction:column;height:100%;width:100%}.Validation-module-module__tableWrapper___YcN6o{flex:1;overflow:auto;margin-bottom:1rem;border-radius:8px;box-shadow:0 2px 4px #0000001a}.Validation-module-module__actions___GIqEx{display:flex;justify-content:space-between;align-items:center;padding:1rem 0}.Validation-module-module__errorContainer___dKOJX{flex:1;margin:0 1rem}.Validation-module-module__errorRow___E5crc td{background-color:#ff000008}.Validation-module-module__editableCellContainer___7yPTv{position:relative;width:100%}.Validation-module-module__simpleInput___LhUg-{width:100%;padding:.25rem;border-radius:4px;font-size:.875rem;transition:all .2s}.Validation-module-module__simpleInput___LhUg-:focus{border-color:#3182ce;box-shadow:0 0 0 1px #3182ce}.Validation-module-module__errorInput___ZWDrT{border-color:#e53e3e}.Validation-module-module__errorInput___ZWDrT:focus{border-color:#e53e3e;box-shadow:0 0 0 1px #e53e3e}.Validation-module-module__errorIcon___NMpp3{position:absolute;top:50%;right:8px;transform:translateY(-50%);width:16px;height:16px;border-radius:50%;background-color:#e53e3e;color:#fff;font-size:12px;display:flex;align-items:center;justify-content:center;cursor:help}.Validation-module-module__validationTable___Wh1wk{width:100%;border-collapse:collapse}.Validation-module-module__validationTable___Wh1wk th{background-color:#f1f5f9;text-transform:none;font-weight:600;color:#334155;padding:12px 16px;text-align:left;border-bottom:1px solid #e2e8f0}.Validation-module-module__validationTable___Wh1wk th:first-child{border-top-left-radius:8px}.Validation-module-module__validationTable___Wh1wk th:last-child{border-top-right-radius:8px}.Validation-module-module__validationTable___Wh1wk td{padding:12px 16px;border-bottom:1px solid #e2e8f0;color:#334155}.Validation-module-module__validationTable___Wh1wk tr:last-child td:first-child{border-bottom-left-radius:8px}.Validation-module-module__validationTable___Wh1wk tr:last-child td:last-child{border-bottom-right-radius:8px}.Validation-module-module__validationTable___Wh1wk tr:hover{background-color:#f8fafc}.Validation-module-module__validationFilters___XqhsC{margin-bottom:1rem}.Validation-module-module__errorSummary___SYeAr{padding:.75rem 1rem;background:#fef2f2;border:1px solid #fecaca;border-radius:.375rem;margin-bottom:1rem}.Validation-module-module__tableContainer___jRikO{flex:1;overflow:auto;border:1px solid #e2e8f0;border-radius:.5rem;background:#fff}.Validation-module-module__toolbarActions___12qlG{display:flex;gap:.75rem;align-items:center}@media (max-width: 640px){.Validation-module-module__toolbarActions___12qlG{width:100%}.Validation-module-module__toolbarActions___12qlG button{flex:1;justify-content:center}}.Validation-module-module__footerSection___pJMfU{flex-shrink:0;display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-top:1px solid #e5e7eb;background:transparent}.Validation-module-module__tableWidth___MNjwY{width:-moz-max-content;width:max-content;min-width:100%}.Default-module-module__table___44Sxu{display:flex;flex-direction:column;flex:1 1 auto;width:100%;border-collapse:collapse;border-spacing:0;border-radius:var(--border-radius-2);outline:1px solid var(--color-border);table-layout:fixed;overflow:hidden}@media (max-width: 768px){.Default-module-module__table___44Sxu{font-size:14px}}@media (max-width: 480px){.Default-module-module__table___44Sxu{font-size:12px;min-width:320px}}.Default-module-module__table___44Sxu .Default-module-module__thead___QhWkw{display:table-header-group}.Default-module-module__table___44Sxu .Default-module-module__tbody___8S-zy{display:block;overflow:auto;width:100%}.Default-module-module__table___44Sxu .Default-module-module__tr___esZOa{display:flex;width:100%;overflow:hidden;flex-wrap:nowrap}.Default-module-module__table___44Sxu .Default-module-module__td___iAMlt{display:inline-flex;align-items:center;height:44px;flex-shrink:0}@media (max-width: 480px){.Default-module-module__table___44Sxu .Default-module-module__td___iAMlt{height:36px;padding-left:var(--m-xxs)!important;padding-right:var(--m-xxs)!important}}.Default-module-module__table___44Sxu .Default-module-module__caption___VYeqs{display:table-caption;border-bottom:1px solid var(--color-border);background-color:var(--color-background-modal);padding:0 var(--m-s);border-radius:var(--border-radius-2) var(--border-radius-2) 0 0}.Default-module-module__table___44Sxu .Default-module-module__thead___QhWkw .Default-module-module__tr___esZOa .Default-module-module__td___iAMlt{font-weight:400;white-space:nowrap;padding:var(--m-xxxs) var(--m-s);border-bottom:1px solid var(--color-border);color:var(--color-text-secondary)}.Default-module-module__table___44Sxu .Default-module-module__thead___QhWkw .Default-module-module__tr___esZOa .Default-module-module__td___iAMlt:first-of-type{border-radius:var(--border-radius-2) 0 0 0}.Default-module-module__table___44Sxu .Default-module-module__thead___QhWkw .Default-module-module__tr___esZOa .Default-module-module__td___iAMlt:last-child{border-radius:0 var(--border-radius-2) 0 0}.Default-module-module__table___44Sxu .Default-module-module__tbody___8S-zy .Default-module-module__tr___esZOa .Default-module-module__td___iAMlt{vertical-align:middle;padding:var(--m-xxxs) var(--m-s);font-weight:400}.Default-module-module__table___44Sxu .Default-module-module__tbody___8S-zy .Default-module-module__tr___esZOa .Default-module-module__td___iAMlt>span,.Default-module-module__table___44Sxu .Default-module-module__tbody___8S-zy .Default-module-module__tr___esZOa .Default-module-module__td___iAMlt>small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.Default-module-module__table___44Sxu .Default-module-module__tbody___8S-zy .Default-module-module__tr___esZOa .Default-module-module__td___iAMlt.Default-module-module__highlight___qpgKE{font-weight:500}.Default-module-module__table___44Sxu .Default-module-module__tbody___8S-zy .Default-module-module__tr___esZOa .Default-module-module__td___iAMlt.Default-module-module__element___DzyB-{padding:0 var(--m-s)}@media (max-width: 480px){.Default-module-module__table___44Sxu .Default-module-module__tbody___8S-zy .Default-module-module__tr___esZOa .Default-module-module__td___iAMlt.Default-module-module__element___DzyB-{padding:0 var(--m-xxs)}}.Default-module-module__table___44Sxu .Default-module-module__tbody___8S-zy .Default-module-module__tr___esZOa:hover{box-shadow:0 0 0 2px var(--color-border);position:relative}.Default-module-module__table___44Sxu .Default-module-module__tbody___8S-zy .Default-module-module__tr___esZOa:last-child{border-radius:0 0 var(--border-radius-2) var(--border-radius-2)}.Default-module-module__table___44Sxu .Default-module-module__tbody___8S-zy .Default-module-module__tr___esZOa:last-child .Default-module-module__td___iAMlt{border-bottom-color:transparent}.Default-module-module__table___44Sxu .Default-module-module__tbody___8S-zy .Default-module-module__tr___esZOa:last-child .Default-module-module__td___iAMlt:first-of-type{border-radius:0 0 0 var(--border-radius-2)}.Default-module-module__table___44Sxu .Default-module-module__tbody___8S-zy .Default-module-module__tr___esZOa:last-child .Default-module-module__td___iAMlt:last-child{border-radius:0 0 var(--border-radius-2) 0}.Default-module-module__table___44Sxu.Default-module-module__zebra___p0PyM{background-color:var(--color-background-modal)}.Default-module-module__table___44Sxu.Default-module-module__zebra___p0PyM .Default-module-module__tbody___8S-zy .Default-module-module__tr___esZOa:nth-child(odd) .Default-module-module__td___iAMlt{background-color:var(--color-background)}.Default-module-module__table___44Sxu.Default-module-module__dark___TYSeO{background-color:var(--color-background)}.Default-module-module__table___44Sxu.Default-module-module__dark___TYSeO .Default-module-module__thead___QhWkw .Default-module-module__tr___esZOa .Default-module-module__td___iAMlt,.Default-module-module__table___44Sxu.Default-module-module__light___uGaq4,.Default-module-module__table___44Sxu.Default-module-module__transparent___rzqM5 .Default-module-module__thead___QhWkw{background-color:var(--color-background-modal)}.Default-module-module__table___44Sxu.Default-module-module__transparent___rzqM5 .Default-module-module__tbody___8S-zy .Default-module-module__tr___esZOa:hover,.Default-module-module__table___44Sxu.Default-module-module__dark___TYSeO .Default-module-module__tbody___8S-zy .Default-module-module__tr___esZOa:hover,.Default-module-module__table___44Sxu.Default-module-module__light___uGaq4 .Default-module-module__tbody___8S-zy .Default-module-module__tr___esZOa:hover{box-shadow:none;position:static}.Default-module-module__table___44Sxu.Default-module-module__dark___TYSeO .Default-module-module__tbody___8S-zy .Default-module-module__tr___esZOa:first-of-type .Default-module-module__td___iAMlt,.Default-module-module__table___44Sxu.Default-module-module__light___uGaq4 .Default-module-module__tbody___8S-zy .Default-module-module__tr___esZOa:first-of-type .Default-module-module__td___iAMlt{padding-top:var(--m-s);height:calc(44px + var(--m-s) - var(--m-xxxs))}.Default-module-module__table___44Sxu.Default-module-module__dark___TYSeO .Default-module-module__tbody___8S-zy .Default-module-module__tr___esZOa:last-of-type .Default-module-module__td___iAMlt,.Default-module-module__table___44Sxu.Default-module-module__light___uGaq4 .Default-module-module__tbody___8S-zy .Default-module-module__tr___esZOa:last-of-type .Default-module-module__td___iAMlt{padding-bottom:var(--m-s);height:calc(44px + var(--m-s) - var(--m-xxxs))}.Default-module-module__emptyMsg___HmPC-{display:flex;justify-content:center;align-items:center;margin-top:15vh;text-align:center}.Tooltip-module-module__tooltip___wRW1H{display:inline-flex;align-items:center;gap:var(--m-xs)}.Tooltip-module-module__tooltip___wRW1H .Tooltip-module-module__icon___8Cb-b{position:relative;display:block;cursor:pointer}.Tooltip-module-module__tooltip___wRW1H.Tooltip-module-module__multiline___E-a-0 .Tooltip-module-module__message___dXk82{width:260px;white-space:normal}.Tooltip-module-module__message___dXk82{position:absolute;transform:translate(-50%);background-color:var(--color-background-modal);z-index:3;padding:var(--m-xxs) var(--m-xs);border-radius:var(--border-radius);margin-top:var(--m-xs);box-shadow:0 0 0 1px var(--color-border),0 5px 15px #0003;max-width:300px}.Tooltip-module-module__message___dXk82:after,.Tooltip-module-module__message___dXk82:before{position:absolute;top:calc(var(--m-xxxs) * 1.732 * -1);left:50%;border-left:var(--m-xxxs) solid transparent;border-right:var(--m-xxxs) solid transparent;border-bottom:calc(var(--m-xxxs) * 1.732) solid var(--color-border);content:"";font-size:0;line-height:0;width:0;transform:translate(-50%)}.Tooltip-module-module__message___dXk82:after{top:calc(var(--m-xxxs) * 1.732 * -1 + 2px);border-bottom:calc(var(--m-xxxs) * 1.732) solid var(--color-background-modal)}.ConfigureImport-module-module__baseContainer___q8h4Q,.ConfigureImport-module-module__configureImport___LEOsk,.ConfigureImport-module-module__flexContainer___HbOJk{width:100%;max-width:100%;padding:1.5rem}@media (max-width: 768px){.ConfigureImport-module-module__baseContainer___q8h4Q,.ConfigureImport-module-module__configureImport___LEOsk,.ConfigureImport-module-module__flexContainer___HbOJk{padding:1rem}}@media (max-width: 640px){.ConfigureImport-module-module__baseContainer___q8h4Q,.ConfigureImport-module-module__configureImport___LEOsk,.ConfigureImport-module-module__flexContainer___HbOJk{padding:.75rem}}.ConfigureImport-module-module__flexContainer___HbOJk{display:flex;flex-direction:column;min-height:0;min-width:0}.ConfigureImport-module-module__scrollableContent___njXa7{flex:1;display:flex;flex-direction:column;overflow:visible;max-width:100%;min-width:0}.ConfigureImport-module-module__tableContainer___mMlmj{flex:1;overflow-x:auto;overflow-y:auto;max-width:100%;-webkit-overflow-scrolling:touch}.ConfigureImport-module-module__tableContainer___mMlmj table{min-width:100%;width:-moz-max-content;width:max-content}.ConfigureImport-module-module__headerSection___ZgAQT{padding:1rem;border-bottom:1px solid #e5e7eb}.ConfigureImport-module-module__headerSection___ZgAQT h2{font-size:1.25rem;font-weight:600;color:#111827;margin:0 0 .5rem}.ConfigureImport-module-module__headerSection___ZgAQT p{font-size:.875rem;color:#6b7280;margin:0}.ConfigureImport-module-module__toolbar___GEhEX{padding:.75rem 1rem;background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;margin-bottom:1rem;box-shadow:0 1px 2px #0000000d}.ConfigureImport-module-module__configureImport___LEOsk{height:100%;margin:0}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Geist,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.csv-importer{--background: 0 0% 100%;--foreground: 222.2 84% 4.9%;--card: 0 0% 100%;--card-foreground: 222.2 84% 4.9%;--popover: 0 0% 100%;--popover-foreground: 222.2 84% 4.9%;--primary: 221.2 83.2% 53.3%;--primary-foreground: 210 40% 98%;--secondary: 210 40% 96.1%;--secondary-foreground: 222.2 47.4% 11.2%;--muted: 210 40% 96.1%;--muted-foreground: 215.4 16.3% 46.9%;--accent: 210 40% 96.1%;--accent-foreground: 222.2 47.4% 11.2%;--destructive: 0 84.2% 60.2%;--destructive-foreground: 210 40% 98%;--border: 214.3 31.8% 91.4%;--input: 214.3 31.8% 91.4%;--ring: 221.2 83.2% 53.3%;--radius: .5rem;--color-primary: #2563eb;--color-primary-foreground: #ffffff;--color-secondary: #f3f4f6;--color-secondary-foreground: #111827;--color-border: #e5e7eb;--color-background: #ffffff;--color-text: #111827;--color-error: #ef4444;--color-error-foreground: #ffffff;--color-muted: #f3f4f6;--color-muted-foreground: #6b7280;--color-accent: #f3f4f6;--color-accent-foreground: #111827}.csv-importer[data-theme=dark]{--background: 222.2 84% 4.9%;--foreground: 210 40% 98%;--card: 222.2 84% 4.9%;--card-foreground: 210 40% 98%;--popover: 222.2 84% 4.9%;--popover-foreground: 210 40% 98%;--primary: 217.2 91.2% 59.8%;--primary-foreground: 222.2 47.4% 11.2%;--secondary: 217.2 32.6% 17.5%;--secondary-foreground: 210 40% 98%;--muted: 217.2 32.6% 17.5%;--muted-foreground: 215 20.2% 65.1%;--accent: 217.2 32.6% 17.5%;--accent-foreground: 210 40% 98%;--destructive: 0 62.8% 30.6%;--destructive-foreground: 210 40% 98%;--border: 217.2 32.6% 17.5%;--input: 217.2 32.6% 17.5%;--ring: 224.3 76.3% 48%}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.bottom-0{bottom:0}.left-0{left:0}.left-2{left:.5rem}.left-4{left:1rem}.left-[50%]{left:50%}.right-0{right:0}.right-2{right:.5rem}.right-4{right:1rem}.top-0{top:0}.top-1{top:.25rem}.top-1/2{top:50%}.top-2{top:.5rem}.top-4{top:1rem}.top-[50%]{top:50%}.top-auto{top:auto}.isolate{isolation:isolate}.z-10{z-index:10}.z-50{z-index:50}.z-[100]{z-index:100}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.mx-3{margin-left:.75rem;margin-right:.75rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-6{margin-left:1.5rem;margin-right:1.5rem}.mx-auto{margin-left:auto;margin-right:auto}.my-1{margin-top:.25rem;margin-bottom:.25rem}.my-4{margin-top:1rem;margin-bottom:1rem}.my-8{margin-top:2rem;margin-bottom:2rem}.-ml-1{margin-left:-.25rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.mr-2{margin-right:.5rem}.mt-1{margin-top:.25rem}.mt-12{margin-top:3rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.box-border{box-sizing:border-box}.line-clamp-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.aspect-square{aspect-ratio:1 / 1}.h-0{height:0px}.h-1{height:.25rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-16{height:4rem}.h-3{height:.75rem}.h-3.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-[1px]{height:1px}.h-[36px]{height:36px}.h-[var(--radix-select-trigger-height)]{height:var(--radix-select-trigger-height)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.max-h-96{max-height:24rem}.max-h-[120px]{max-height:120px}.max-h-[300px]{max-height:300px}.max-h-screen{max-height:100vh}.min-h-0{min-height:0px}.min-h-[180px]{min-height:180px}.min-h-[240px]{min-height:240px}.min-h-[400px]{min-height:400px}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-12{width:3rem}.w-16{width:4rem}.w-3{width:.75rem}.w-3.5{width:.875rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-8{width:2rem}.w-[30%]{width:30%}.w-[35%]{width:35%}.w-full{width:100%}.w-max{width:-moz-max-content;width:max-content}.min-w-0{min-width:0px}.min-w-[36px]{min-width:36px}.min-w-[600px]{min-width:600px}.min-w-[8rem]{min-width:8rem}.min-w-[var(--radix-select-trigger-width)]{min-width:var(--radix-select-trigger-width)}.min-w-full{min-width:100%}.max-w-[1000px]{max-width:1000px}.max-w-[250px]{max-width:250px}.max-w-[300px]{max-width:300px}.max-w-[440px]{max-width:440px}.max-w-[560px]{max-width:560px}.max-w-[660px]{max-width:660px}.max-w-[800px]{max-width:800px}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-none{max-width:none}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-shrink{flex-shrink:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.border-collapse{border-collapse:collapse}.-translate-y-1{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-5{--tw-translate-x: 1.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-[-50%]{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-[-50%]{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-105{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize{resize:both}.flex-row{flex-direction:row}.flex-row-reverse{flex-direction:row-reverse}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.gap-0{gap:0px}.gap-1{gap:.25rem}.gap-1.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.self-center{align-self:center}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l-4{border-left-width:4px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-none{border-style:none}.border-blue-100{--tw-border-opacity: 1;border-color:rgb(219 234 254 / var(--tw-border-opacity, 1))}.border-blue-100/0{border-color:#dbeafe00}.border-blue-100/10{border-color:#dbeafe1a}.border-blue-100/100{border-color:#dbeafe}.border-blue-100/15{border-color:#dbeafe26}.border-blue-100/20{border-color:#dbeafe33}.border-blue-100/25{border-color:#dbeafe40}.border-blue-100/30{border-color:#dbeafe4d}.border-blue-100/35{border-color:#dbeafe59}.border-blue-100/40{border-color:#dbeafe66}.border-blue-100/45{border-color:#dbeafe73}.border-blue-100/5{border-color:#dbeafe0d}.border-blue-100/50{border-color:#dbeafe80}.border-blue-100/55{border-color:#dbeafe8c}.border-blue-100/60{border-color:#dbeafe99}.border-blue-100/65{border-color:#dbeafea6}.border-blue-100/70{border-color:#dbeafeb3}.border-blue-100/75{border-color:#dbeafebf}.border-blue-100/80{border-color:#dbeafecc}.border-blue-100/85{border-color:#dbeafed9}.border-blue-100/90{border-color:#dbeafee6}.border-blue-100/95{border-color:#dbeafef2}.border-blue-200{--tw-border-opacity: 1;border-color:rgb(191 219 254 / var(--tw-border-opacity, 1))}.border-blue-200/0{border-color:#bfdbfe00}.border-blue-200/10{border-color:#bfdbfe1a}.border-blue-200/100{border-color:#bfdbfe}.border-blue-200/15{border-color:#bfdbfe26}.border-blue-200/20{border-color:#bfdbfe33}.border-blue-200/25{border-color:#bfdbfe40}.border-blue-200/30{border-color:#bfdbfe4d}.border-blue-200/35{border-color:#bfdbfe59}.border-blue-200/40{border-color:#bfdbfe66}.border-blue-200/45{border-color:#bfdbfe73}.border-blue-200/5{border-color:#bfdbfe0d}.border-blue-200/50{border-color:#bfdbfe80}.border-blue-200/55{border-color:#bfdbfe8c}.border-blue-200/60{border-color:#bfdbfe99}.border-blue-200/65{border-color:#bfdbfea6}.border-blue-200/70{border-color:#bfdbfeb3}.border-blue-200/75{border-color:#bfdbfebf}.border-blue-200/80{border-color:#bfdbfecc}.border-blue-200/85{border-color:#bfdbfed9}.border-blue-200/90{border-color:#bfdbfee6}.border-blue-200/95{border-color:#bfdbfef2}.border-blue-300{--tw-border-opacity: 1;border-color:rgb(147 197 253 / var(--tw-border-opacity, 1))}.border-blue-300/0{border-color:#93c5fd00}.border-blue-300/10{border-color:#93c5fd1a}.border-blue-300/100{border-color:#93c5fd}.border-blue-300/15{border-color:#93c5fd26}.border-blue-300/20{border-color:#93c5fd33}.border-blue-300/25{border-color:#93c5fd40}.border-blue-300/30{border-color:#93c5fd4d}.border-blue-300/35{border-color:#93c5fd59}.border-blue-300/40{border-color:#93c5fd66}.border-blue-300/45{border-color:#93c5fd73}.border-blue-300/5{border-color:#93c5fd0d}.border-blue-300/50{border-color:#93c5fd80}.border-blue-300/55{border-color:#93c5fd8c}.border-blue-300/60{border-color:#93c5fd99}.border-blue-300/65{border-color:#93c5fda6}.border-blue-300/70{border-color:#93c5fdb3}.border-blue-300/75{border-color:#93c5fdbf}.border-blue-300/80{border-color:#93c5fdcc}.border-blue-300/85{border-color:#93c5fdd9}.border-blue-300/90{border-color:#93c5fde6}.border-blue-300/95{border-color:#93c5fdf2}.border-blue-400{--tw-border-opacity: 1;border-color:rgb(96 165 250 / var(--tw-border-opacity, 1))}.border-blue-400/0{border-color:#60a5fa00}.border-blue-400/10{border-color:#60a5fa1a}.border-blue-400/100{border-color:#60a5fa}.border-blue-400/15{border-color:#60a5fa26}.border-blue-400/20{border-color:#60a5fa33}.border-blue-400/25{border-color:#60a5fa40}.border-blue-400/30{border-color:#60a5fa4d}.border-blue-400/35{border-color:#60a5fa59}.border-blue-400/40{border-color:#60a5fa66}.border-blue-400/45{border-color:#60a5fa73}.border-blue-400/5{border-color:#60a5fa0d}.border-blue-400/50{border-color:#60a5fa80}.border-blue-400/55{border-color:#60a5fa8c}.border-blue-400/60{border-color:#60a5fa99}.border-blue-400/65{border-color:#60a5faa6}.border-blue-400/70{border-color:#60a5fab3}.border-blue-400/75{border-color:#60a5fabf}.border-blue-400/80{border-color:#60a5facc}.border-blue-400/85{border-color:#60a5fad9}.border-blue-400/90{border-color:#60a5fae6}.border-blue-400/95{border-color:#60a5faf2}.border-blue-50{--tw-border-opacity: 1;border-color:rgb(239 246 255 / var(--tw-border-opacity, 1))}.border-blue-50/0{border-color:#eff6ff00}.border-blue-50/10{border-color:#eff6ff1a}.border-blue-50/100{border-color:#eff6ff}.border-blue-50/15{border-color:#eff6ff26}.border-blue-50/20{border-color:#eff6ff33}.border-blue-50/25{border-color:#eff6ff40}.border-blue-50/30{border-color:#eff6ff4d}.border-blue-50/35{border-color:#eff6ff59}.border-blue-50/40{border-color:#eff6ff66}.border-blue-50/45{border-color:#eff6ff73}.border-blue-50/5{border-color:#eff6ff0d}.border-blue-50/50{border-color:#eff6ff80}.border-blue-50/55{border-color:#eff6ff8c}.border-blue-50/60{border-color:#eff6ff99}.border-blue-50/65{border-color:#eff6ffa6}.border-blue-50/70{border-color:#eff6ffb3}.border-blue-50/75{border-color:#eff6ffbf}.border-blue-50/80{border-color:#eff6ffcc}.border-blue-50/85{border-color:#eff6ffd9}.border-blue-50/90{border-color:#eff6ffe6}.border-blue-50/95{border-color:#eff6fff2}.border-blue-500{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.border-blue-500/0{border-color:#3b82f600}.border-blue-500/10{border-color:#3b82f61a}.border-blue-500/100{border-color:#3b82f6}.border-blue-500/15{border-color:#3b82f626}.border-blue-500/20{border-color:#3b82f633}.border-blue-500/25{border-color:#3b82f640}.border-blue-500/30{border-color:#3b82f64d}.border-blue-500/35{border-color:#3b82f659}.border-blue-500/40{border-color:#3b82f666}.border-blue-500/45{border-color:#3b82f673}.border-blue-500/5{border-color:#3b82f60d}.border-blue-500/50{border-color:#3b82f680}.border-blue-500/55{border-color:#3b82f68c}.border-blue-500/60{border-color:#3b82f699}.border-blue-500/65{border-color:#3b82f6a6}.border-blue-500/70{border-color:#3b82f6b3}.border-blue-500/75{border-color:#3b82f6bf}.border-blue-500/80{border-color:#3b82f6cc}.border-blue-500/85{border-color:#3b82f6d9}.border-blue-500/90{border-color:#3b82f6e6}.border-blue-500/95{border-color:#3b82f6f2}.border-blue-600{--tw-border-opacity: 1;border-color:rgb(37 99 235 / var(--tw-border-opacity, 1))}.border-blue-600/0{border-color:#2563eb00}.border-blue-600/10{border-color:#2563eb1a}.border-blue-600/100{border-color:#2563eb}.border-blue-600/15{border-color:#2563eb26}.border-blue-600/20{border-color:#2563eb33}.border-blue-600/25{border-color:#2563eb40}.border-blue-600/30{border-color:#2563eb4d}.border-blue-600/35{border-color:#2563eb59}.border-blue-600/40{border-color:#2563eb66}.border-blue-600/45{border-color:#2563eb73}.border-blue-600/5{border-color:#2563eb0d}.border-blue-600/50{border-color:#2563eb80}.border-blue-600/55{border-color:#2563eb8c}.border-blue-600/60{border-color:#2563eb99}.border-blue-600/65{border-color:#2563eba6}.border-blue-600/70{border-color:#2563ebb3}.border-blue-600/75{border-color:#2563ebbf}.border-blue-600/80{border-color:#2563ebcc}.border-blue-600/85{border-color:#2563ebd9}.border-blue-600/90{border-color:#2563ebe6}.border-blue-600/95{border-color:#2563ebf2}.border-blue-700{--tw-border-opacity: 1;border-color:rgb(29 78 216 / var(--tw-border-opacity, 1))}.border-blue-700/0{border-color:#1d4ed800}.border-blue-700/10{border-color:#1d4ed81a}.border-blue-700/100{border-color:#1d4ed8}.border-blue-700/15{border-color:#1d4ed826}.border-blue-700/20{border-color:#1d4ed833}.border-blue-700/25{border-color:#1d4ed840}.border-blue-700/30{border-color:#1d4ed84d}.border-blue-700/35{border-color:#1d4ed859}.border-blue-700/40{border-color:#1d4ed866}.border-blue-700/45{border-color:#1d4ed873}.border-blue-700/5{border-color:#1d4ed80d}.border-blue-700/50{border-color:#1d4ed880}.border-blue-700/55{border-color:#1d4ed88c}.border-blue-700/60{border-color:#1d4ed899}.border-blue-700/65{border-color:#1d4ed8a6}.border-blue-700/70{border-color:#1d4ed8b3}.border-blue-700/75{border-color:#1d4ed8bf}.border-blue-700/80{border-color:#1d4ed8cc}.border-blue-700/85{border-color:#1d4ed8d9}.border-blue-700/90{border-color:#1d4ed8e6}.border-blue-700/95{border-color:#1d4ed8f2}.border-blue-800{--tw-border-opacity: 1;border-color:rgb(30 64 175 / var(--tw-border-opacity, 1))}.border-blue-800/0{border-color:#1e40af00}.border-blue-800/10{border-color:#1e40af1a}.border-blue-800/100{border-color:#1e40af}.border-blue-800/15{border-color:#1e40af26}.border-blue-800/20{border-color:#1e40af33}.border-blue-800/25{border-color:#1e40af40}.border-blue-800/30{border-color:#1e40af4d}.border-blue-800/35{border-color:#1e40af59}.border-blue-800/40{border-color:#1e40af66}.border-blue-800/45{border-color:#1e40af73}.border-blue-800/5{border-color:#1e40af0d}.border-blue-800/50{border-color:#1e40af80}.border-blue-800/55{border-color:#1e40af8c}.border-blue-800/60{border-color:#1e40af99}.border-blue-800/65{border-color:#1e40afa6}.border-blue-800/70{border-color:#1e40afb3}.border-blue-800/75{border-color:#1e40afbf}.border-blue-800/80{border-color:#1e40afcc}.border-blue-800/85{border-color:#1e40afd9}.border-blue-800/90{border-color:#1e40afe6}.border-blue-800/95{border-color:#1e40aff2}.border-blue-900{--tw-border-opacity: 1;border-color:rgb(30 58 138 / var(--tw-border-opacity, 1))}.border-blue-900/0{border-color:#1e3a8a00}.border-blue-900/10{border-color:#1e3a8a1a}.border-blue-900/100{border-color:#1e3a8a}.border-blue-900/15{border-color:#1e3a8a26}.border-blue-900/20{border-color:#1e3a8a33}.border-blue-900/25{border-color:#1e3a8a40}.border-blue-900/30{border-color:#1e3a8a4d}.border-blue-900/35{border-color:#1e3a8a59}.border-blue-900/40{border-color:#1e3a8a66}.border-blue-900/45{border-color:#1e3a8a73}.border-blue-900/5{border-color:#1e3a8a0d}.border-blue-900/50{border-color:#1e3a8a80}.border-blue-900/55{border-color:#1e3a8a8c}.border-blue-900/60{border-color:#1e3a8a99}.border-blue-900/65{border-color:#1e3a8aa6}.border-blue-900/70{border-color:#1e3a8ab3}.border-blue-900/75{border-color:#1e3a8abf}.border-blue-900/80{border-color:#1e3a8acc}.border-blue-900/85{border-color:#1e3a8ad9}.border-blue-900/90{border-color:#1e3a8ae6}.border-blue-900/95{border-color:#1e3a8af2}.border-destructive{border-color:hsl(var(--destructive))}.border-destructive/50{border-color:hsl(var(--destructive) / .5)}.border-gray-100{--tw-border-opacity: 1;border-color:rgb(243 244 246 / var(--tw-border-opacity, 1))}.border-gray-100/0{border-color:#f3f4f600}.border-gray-100/10{border-color:#f3f4f61a}.border-gray-100/100{border-color:#f3f4f6}.border-gray-100/15{border-color:#f3f4f626}.border-gray-100/20{border-color:#f3f4f633}.border-gray-100/25{border-color:#f3f4f640}.border-gray-100/30{border-color:#f3f4f64d}.border-gray-100/35{border-color:#f3f4f659}.border-gray-100/40{border-color:#f3f4f666}.border-gray-100/45{border-color:#f3f4f673}.border-gray-100/5{border-color:#f3f4f60d}.border-gray-100/50{border-color:#f3f4f680}.border-gray-100/55{border-color:#f3f4f68c}.border-gray-100/60{border-color:#f3f4f699}.border-gray-100/65{border-color:#f3f4f6a6}.border-gray-100/70{border-color:#f3f4f6b3}.border-gray-100/75{border-color:#f3f4f6bf}.border-gray-100/80{border-color:#f3f4f6cc}.border-gray-100/85{border-color:#f3f4f6d9}.border-gray-100/90{border-color:#f3f4f6e6}.border-gray-100/95{border-color:#f3f4f6f2}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.border-gray-200/0{border-color:#e5e7eb00}.border-gray-200/10{border-color:#e5e7eb1a}.border-gray-200/100{border-color:#e5e7eb}.border-gray-200/15{border-color:#e5e7eb26}.border-gray-200/20{border-color:#e5e7eb33}.border-gray-200/25{border-color:#e5e7eb40}.border-gray-200/30{border-color:#e5e7eb4d}.border-gray-200/35{border-color:#e5e7eb59}.border-gray-200/40{border-color:#e5e7eb66}.border-gray-200/45{border-color:#e5e7eb73}.border-gray-200/5{border-color:#e5e7eb0d}.border-gray-200/50{border-color:#e5e7eb80}.border-gray-200/55{border-color:#e5e7eb8c}.border-gray-200/60{border-color:#e5e7eb99}.border-gray-200/65{border-color:#e5e7eba6}.border-gray-200/70{border-color:#e5e7ebb3}.border-gray-200/75{border-color:#e5e7ebbf}.border-gray-200/80{border-color:#e5e7ebcc}.border-gray-200/85{border-color:#e5e7ebd9}.border-gray-200/90{border-color:#e5e7ebe6}.border-gray-200/95{border-color:#e5e7ebf2}.border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.border-gray-300/0{border-color:#d1d5db00}.border-gray-300/10{border-color:#d1d5db1a}.border-gray-300/100{border-color:#d1d5db}.border-gray-300/15{border-color:#d1d5db26}.border-gray-300/20{border-color:#d1d5db33}.border-gray-300/25{border-color:#d1d5db40}.border-gray-300/30{border-color:#d1d5db4d}.border-gray-300/35{border-color:#d1d5db59}.border-gray-300/40{border-color:#d1d5db66}.border-gray-300/45{border-color:#d1d5db73}.border-gray-300/5{border-color:#d1d5db0d}.border-gray-300/50{border-color:#d1d5db80}.border-gray-300/55{border-color:#d1d5db8c}.border-gray-300/60{border-color:#d1d5db99}.border-gray-300/65{border-color:#d1d5dba6}.border-gray-300/70{border-color:#d1d5dbb3}.border-gray-300/75{border-color:#d1d5dbbf}.border-gray-300/80{border-color:#d1d5dbcc}.border-gray-300/85{border-color:#d1d5dbd9}.border-gray-300/90{border-color:#d1d5dbe6}.border-gray-300/95{border-color:#d1d5dbf2}.border-gray-400{--tw-border-opacity: 1;border-color:rgb(156 163 175 / var(--tw-border-opacity, 1))}.border-gray-400/0{border-color:#9ca3af00}.border-gray-400/10{border-color:#9ca3af1a}.border-gray-400/100{border-color:#9ca3af}.border-gray-400/15{border-color:#9ca3af26}.border-gray-400/20{border-color:#9ca3af33}.border-gray-400/25{border-color:#9ca3af40}.border-gray-400/30{border-color:#9ca3af4d}.border-gray-400/35{border-color:#9ca3af59}.border-gray-400/40{border-color:#9ca3af66}.border-gray-400/45{border-color:#9ca3af73}.border-gray-400/5{border-color:#9ca3af0d}.border-gray-400/50{border-color:#9ca3af80}.border-gray-400/55{border-color:#9ca3af8c}.border-gray-400/60{border-color:#9ca3af99}.border-gray-400/65{border-color:#9ca3afa6}.border-gray-400/70{border-color:#9ca3afb3}.border-gray-400/75{border-color:#9ca3afbf}.border-gray-400/80{border-color:#9ca3afcc}.border-gray-400/85{border-color:#9ca3afd9}.border-gray-400/90{border-color:#9ca3afe6}.border-gray-400/95{border-color:#9ca3aff2}.border-gray-50{--tw-border-opacity: 1;border-color:rgb(249 250 251 / var(--tw-border-opacity, 1))}.border-gray-50/0{border-color:#f9fafb00}.border-gray-50/10{border-color:#f9fafb1a}.border-gray-50/100{border-color:#f9fafb}.border-gray-50/15{border-color:#f9fafb26}.border-gray-50/20{border-color:#f9fafb33}.border-gray-50/25{border-color:#f9fafb40}.border-gray-50/30{border-color:#f9fafb4d}.border-gray-50/35{border-color:#f9fafb59}.border-gray-50/40{border-color:#f9fafb66}.border-gray-50/45{border-color:#f9fafb73}.border-gray-50/5{border-color:#f9fafb0d}.border-gray-50/50{border-color:#f9fafb80}.border-gray-50/55{border-color:#f9fafb8c}.border-gray-50/60{border-color:#f9fafb99}.border-gray-50/65{border-color:#f9fafba6}.border-gray-50/70{border-color:#f9fafbb3}.border-gray-50/75{border-color:#f9fafbbf}.border-gray-50/80{border-color:#f9fafbcc}.border-gray-50/85{border-color:#f9fafbd9}.border-gray-50/90{border-color:#f9fafbe6}.border-gray-50/95{border-color:#f9fafbf2}.border-gray-500{--tw-border-opacity: 1;border-color:rgb(107 114 128 / var(--tw-border-opacity, 1))}.border-gray-500/0{border-color:#6b728000}.border-gray-500/10{border-color:#6b72801a}.border-gray-500/100{border-color:#6b7280}.border-gray-500/15{border-color:#6b728026}.border-gray-500/20{border-color:#6b728033}.border-gray-500/25{border-color:#6b728040}.border-gray-500/30{border-color:#6b72804d}.border-gray-500/35{border-color:#6b728059}.border-gray-500/40{border-color:#6b728066}.border-gray-500/45{border-color:#6b728073}.border-gray-500/5{border-color:#6b72800d}.border-gray-500/50{border-color:#6b728080}.border-gray-500/55{border-color:#6b72808c}.border-gray-500/60{border-color:#6b728099}.border-gray-500/65{border-color:#6b7280a6}.border-gray-500/70{border-color:#6b7280b3}.border-gray-500/75{border-color:#6b7280bf}.border-gray-500/80{border-color:#6b7280cc}.border-gray-500/85{border-color:#6b7280d9}.border-gray-500/90{border-color:#6b7280e6}.border-gray-500/95{border-color:#6b7280f2}.border-gray-600{--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1))}.border-gray-600/0{border-color:#4b556300}.border-gray-600/10{border-color:#4b55631a}.border-gray-600/100{border-color:#4b5563}.border-gray-600/15{border-color:#4b556326}.border-gray-600/20{border-color:#4b556333}.border-gray-600/25{border-color:#4b556340}.border-gray-600/30{border-color:#4b55634d}.border-gray-600/35{border-color:#4b556359}.border-gray-600/40{border-color:#4b556366}.border-gray-600/45{border-color:#4b556373}.border-gray-600/5{border-color:#4b55630d}.border-gray-600/50{border-color:#4b556380}.border-gray-600/55{border-color:#4b55638c}.border-gray-600/60{border-color:#4b556399}.border-gray-600/65{border-color:#4b5563a6}.border-gray-600/70{border-color:#4b5563b3}.border-gray-600/75{border-color:#4b5563bf}.border-gray-600/80{border-color:#4b5563cc}.border-gray-600/85{border-color:#4b5563d9}.border-gray-600/90{border-color:#4b5563e6}.border-gray-600/95{border-color:#4b5563f2}.border-gray-700{--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity, 1))}.border-gray-700/0{border-color:#37415100}.border-gray-700/10{border-color:#3741511a}.border-gray-700/100{border-color:#374151}.border-gray-700/15{border-color:#37415126}.border-gray-700/20{border-color:#37415133}.border-gray-700/25{border-color:#37415140}.border-gray-700/30{border-color:#3741514d}.border-gray-700/35{border-color:#37415159}.border-gray-700/40{border-color:#37415166}.border-gray-700/45{border-color:#37415173}.border-gray-700/5{border-color:#3741510d}.border-gray-700/50{border-color:#37415180}.border-gray-700/55{border-color:#3741518c}.border-gray-700/60{border-color:#37415199}.border-gray-700/65{border-color:#374151a6}.border-gray-700/70{border-color:#374151b3}.border-gray-700/75{border-color:#374151bf}.border-gray-700/80{border-color:#374151cc}.border-gray-700/85{border-color:#374151d9}.border-gray-700/90{border-color:#374151e6}.border-gray-700/95{border-color:#374151f2}.border-gray-800{--tw-border-opacity: 1;border-color:rgb(31 41 55 / var(--tw-border-opacity, 1))}.border-gray-800/0{border-color:#1f293700}.border-gray-800/10{border-color:#1f29371a}.border-gray-800/100{border-color:#1f2937}.border-gray-800/15{border-color:#1f293726}.border-gray-800/20{border-color:#1f293733}.border-gray-800/25{border-color:#1f293740}.border-gray-800/30{border-color:#1f29374d}.border-gray-800/35{border-color:#1f293759}.border-gray-800/40{border-color:#1f293766}.border-gray-800/45{border-color:#1f293773}.border-gray-800/5{border-color:#1f29370d}.border-gray-800/50{border-color:#1f293780}.border-gray-800/55{border-color:#1f29378c}.border-gray-800/60{border-color:#1f293799}.border-gray-800/65{border-color:#1f2937a6}.border-gray-800/70{border-color:#1f2937b3}.border-gray-800/75{border-color:#1f2937bf}.border-gray-800/80{border-color:#1f2937cc}.border-gray-800/85{border-color:#1f2937d9}.border-gray-800/90{border-color:#1f2937e6}.border-gray-800/95{border-color:#1f2937f2}.border-gray-900{--tw-border-opacity: 1;border-color:rgb(17 24 39 / var(--tw-border-opacity, 1))}.border-gray-900/0{border-color:#11182700}.border-gray-900/10{border-color:#1118271a}.border-gray-900/100{border-color:#111827}.border-gray-900/15{border-color:#11182726}.border-gray-900/20{border-color:#11182733}.border-gray-900/25{border-color:#11182740}.border-gray-900/30{border-color:#1118274d}.border-gray-900/35{border-color:#11182759}.border-gray-900/40{border-color:#11182766}.border-gray-900/45{border-color:#11182773}.border-gray-900/5{border-color:#1118270d}.border-gray-900/50{border-color:#11182780}.border-gray-900/55{border-color:#1118278c}.border-gray-900/60{border-color:#11182799}.border-gray-900/65{border-color:#111827a6}.border-gray-900/70{border-color:#111827b3}.border-gray-900/75{border-color:#111827bf}.border-gray-900/80{border-color:#111827cc}.border-gray-900/85{border-color:#111827d9}.border-gray-900/90{border-color:#111827e6}.border-gray-900/95{border-color:#111827f2}.border-green-100{--tw-border-opacity: 1;border-color:rgb(220 252 231 / var(--tw-border-opacity, 1))}.border-green-100/0{border-color:#dcfce700}.border-green-100/10{border-color:#dcfce71a}.border-green-100/100{border-color:#dcfce7}.border-green-100/15{border-color:#dcfce726}.border-green-100/20{border-color:#dcfce733}.border-green-100/25{border-color:#dcfce740}.border-green-100/30{border-color:#dcfce74d}.border-green-100/35{border-color:#dcfce759}.border-green-100/40{border-color:#dcfce766}.border-green-100/45{border-color:#dcfce773}.border-green-100/5{border-color:#dcfce70d}.border-green-100/50{border-color:#dcfce780}.border-green-100/55{border-color:#dcfce78c}.border-green-100/60{border-color:#dcfce799}.border-green-100/65{border-color:#dcfce7a6}.border-green-100/70{border-color:#dcfce7b3}.border-green-100/75{border-color:#dcfce7bf}.border-green-100/80{border-color:#dcfce7cc}.border-green-100/85{border-color:#dcfce7d9}.border-green-100/90{border-color:#dcfce7e6}.border-green-100/95{border-color:#dcfce7f2}.border-green-200{--tw-border-opacity: 1;border-color:rgb(187 247 208 / var(--tw-border-opacity, 1))}.border-green-200/0{border-color:#bbf7d000}.border-green-200/10{border-color:#bbf7d01a}.border-green-200/100{border-color:#bbf7d0}.border-green-200/15{border-color:#bbf7d026}.border-green-200/20{border-color:#bbf7d033}.border-green-200/25{border-color:#bbf7d040}.border-green-200/30{border-color:#bbf7d04d}.border-green-200/35{border-color:#bbf7d059}.border-green-200/40{border-color:#bbf7d066}.border-green-200/45{border-color:#bbf7d073}.border-green-200/5{border-color:#bbf7d00d}.border-green-200/50{border-color:#bbf7d080}.border-green-200/55{border-color:#bbf7d08c}.border-green-200/60{border-color:#bbf7d099}.border-green-200/65{border-color:#bbf7d0a6}.border-green-200/70{border-color:#bbf7d0b3}.border-green-200/75{border-color:#bbf7d0bf}.border-green-200/80{border-color:#bbf7d0cc}.border-green-200/85{border-color:#bbf7d0d9}.border-green-200/90{border-color:#bbf7d0e6}.border-green-200/95{border-color:#bbf7d0f2}.border-green-300{--tw-border-opacity: 1;border-color:rgb(134 239 172 / var(--tw-border-opacity, 1))}.border-green-300/0{border-color:#86efac00}.border-green-300/10{border-color:#86efac1a}.border-green-300/100{border-color:#86efac}.border-green-300/15{border-color:#86efac26}.border-green-300/20{border-color:#86efac33}.border-green-300/25{border-color:#86efac40}.border-green-300/30{border-color:#86efac4d}.border-green-300/35{border-color:#86efac59}.border-green-300/40{border-color:#86efac66}.border-green-300/45{border-color:#86efac73}.border-green-300/5{border-color:#86efac0d}.border-green-300/50{border-color:#86efac80}.border-green-300/55{border-color:#86efac8c}.border-green-300/60{border-color:#86efac99}.border-green-300/65{border-color:#86efaca6}.border-green-300/70{border-color:#86efacb3}.border-green-300/75{border-color:#86efacbf}.border-green-300/80{border-color:#86efaccc}.border-green-300/85{border-color:#86efacd9}.border-green-300/90{border-color:#86eface6}.border-green-300/95{border-color:#86efacf2}.border-green-400{--tw-border-opacity: 1;border-color:rgb(74 222 128 / var(--tw-border-opacity, 1))}.border-green-400/0{border-color:#4ade8000}.border-green-400/10{border-color:#4ade801a}.border-green-400/100{border-color:#4ade80}.border-green-400/15{border-color:#4ade8026}.border-green-400/20{border-color:#4ade8033}.border-green-400/25{border-color:#4ade8040}.border-green-400/30{border-color:#4ade804d}.border-green-400/35{border-color:#4ade8059}.border-green-400/40{border-color:#4ade8066}.border-green-400/45{border-color:#4ade8073}.border-green-400/5{border-color:#4ade800d}.border-green-400/50{border-color:#4ade8080}.border-green-400/55{border-color:#4ade808c}.border-green-400/60{border-color:#4ade8099}.border-green-400/65{border-color:#4ade80a6}.border-green-400/70{border-color:#4ade80b3}.border-green-400/75{border-color:#4ade80bf}.border-green-400/80{border-color:#4ade80cc}.border-green-400/85{border-color:#4ade80d9}.border-green-400/90{border-color:#4ade80e6}.border-green-400/95{border-color:#4ade80f2}.border-green-50{--tw-border-opacity: 1;border-color:rgb(240 253 244 / var(--tw-border-opacity, 1))}.border-green-50/0{border-color:#f0fdf400}.border-green-50/10{border-color:#f0fdf41a}.border-green-50/100{border-color:#f0fdf4}.border-green-50/15{border-color:#f0fdf426}.border-green-50/20{border-color:#f0fdf433}.border-green-50/25{border-color:#f0fdf440}.border-green-50/30{border-color:#f0fdf44d}.border-green-50/35{border-color:#f0fdf459}.border-green-50/40{border-color:#f0fdf466}.border-green-50/45{border-color:#f0fdf473}.border-green-50/5{border-color:#f0fdf40d}.border-green-50/50{border-color:#f0fdf480}.border-green-50/55{border-color:#f0fdf48c}.border-green-50/60{border-color:#f0fdf499}.border-green-50/65{border-color:#f0fdf4a6}.border-green-50/70{border-color:#f0fdf4b3}.border-green-50/75{border-color:#f0fdf4bf}.border-green-50/80{border-color:#f0fdf4cc}.border-green-50/85{border-color:#f0fdf4d9}.border-green-50/90{border-color:#f0fdf4e6}.border-green-50/95{border-color:#f0fdf4f2}.border-green-500{--tw-border-opacity: 1;border-color:rgb(34 197 94 / var(--tw-border-opacity, 1))}.border-green-500/0{border-color:#22c55e00}.border-green-500/10{border-color:#22c55e1a}.border-green-500/100{border-color:#22c55e}.border-green-500/15{border-color:#22c55e26}.border-green-500/20{border-color:#22c55e33}.border-green-500/25{border-color:#22c55e40}.border-green-500/30{border-color:#22c55e4d}.border-green-500/35{border-color:#22c55e59}.border-green-500/40{border-color:#22c55e66}.border-green-500/45{border-color:#22c55e73}.border-green-500/5{border-color:#22c55e0d}.border-green-500/50{border-color:#22c55e80}.border-green-500/55{border-color:#22c55e8c}.border-green-500/60{border-color:#22c55e99}.border-green-500/65{border-color:#22c55ea6}.border-green-500/70{border-color:#22c55eb3}.border-green-500/75{border-color:#22c55ebf}.border-green-500/80{border-color:#22c55ecc}.border-green-500/85{border-color:#22c55ed9}.border-green-500/90{border-color:#22c55ee6}.border-green-500/95{border-color:#22c55ef2}.border-green-600{--tw-border-opacity: 1;border-color:rgb(22 163 74 / var(--tw-border-opacity, 1))}.border-green-600/0{border-color:#16a34a00}.border-green-600/10{border-color:#16a34a1a}.border-green-600/100{border-color:#16a34a}.border-green-600/15{border-color:#16a34a26}.border-green-600/20{border-color:#16a34a33}.border-green-600/25{border-color:#16a34a40}.border-green-600/30{border-color:#16a34a4d}.border-green-600/35{border-color:#16a34a59}.border-green-600/40{border-color:#16a34a66}.border-green-600/45{border-color:#16a34a73}.border-green-600/5{border-color:#16a34a0d}.border-green-600/50{border-color:#16a34a80}.border-green-600/55{border-color:#16a34a8c}.border-green-600/60{border-color:#16a34a99}.border-green-600/65{border-color:#16a34aa6}.border-green-600/70{border-color:#16a34ab3}.border-green-600/75{border-color:#16a34abf}.border-green-600/80{border-color:#16a34acc}.border-green-600/85{border-color:#16a34ad9}.border-green-600/90{border-color:#16a34ae6}.border-green-600/95{border-color:#16a34af2}.border-green-700{--tw-border-opacity: 1;border-color:rgb(21 128 61 / var(--tw-border-opacity, 1))}.border-green-700/0{border-color:#15803d00}.border-green-700/10{border-color:#15803d1a}.border-green-700/100{border-color:#15803d}.border-green-700/15{border-color:#15803d26}.border-green-700/20{border-color:#15803d33}.border-green-700/25{border-color:#15803d40}.border-green-700/30{border-color:#15803d4d}.border-green-700/35{border-color:#15803d59}.border-green-700/40{border-color:#15803d66}.border-green-700/45{border-color:#15803d73}.border-green-700/5{border-color:#15803d0d}.border-green-700/50{border-color:#15803d80}.border-green-700/55{border-color:#15803d8c}.border-green-700/60{border-color:#15803d99}.border-green-700/65{border-color:#15803da6}.border-green-700/70{border-color:#15803db3}.border-green-700/75{border-color:#15803dbf}.border-green-700/80{border-color:#15803dcc}.border-green-700/85{border-color:#15803dd9}.border-green-700/90{border-color:#15803de6}.border-green-700/95{border-color:#15803df2}.border-green-800{--tw-border-opacity: 1;border-color:rgb(22 101 52 / var(--tw-border-opacity, 1))}.border-green-800/0{border-color:#16653400}.border-green-800/10{border-color:#1665341a}.border-green-800/100{border-color:#166534}.border-green-800/15{border-color:#16653426}.border-green-800/20{border-color:#16653433}.border-green-800/25{border-color:#16653440}.border-green-800/30{border-color:#1665344d}.border-green-800/35{border-color:#16653459}.border-green-800/40{border-color:#16653466}.border-green-800/45{border-color:#16653473}.border-green-800/5{border-color:#1665340d}.border-green-800/50{border-color:#16653480}.border-green-800/55{border-color:#1665348c}.border-green-800/60{border-color:#16653499}.border-green-800/65{border-color:#166534a6}.border-green-800/70{border-color:#166534b3}.border-green-800/75{border-color:#166534bf}.border-green-800/80{border-color:#166534cc}.border-green-800/85{border-color:#166534d9}.border-green-800/90{border-color:#166534e6}.border-green-800/95{border-color:#166534f2}.border-green-900{--tw-border-opacity: 1;border-color:rgb(20 83 45 / var(--tw-border-opacity, 1))}.border-green-900/0{border-color:#14532d00}.border-green-900/10{border-color:#14532d1a}.border-green-900/100{border-color:#14532d}.border-green-900/15{border-color:#14532d26}.border-green-900/20{border-color:#14532d33}.border-green-900/25{border-color:#14532d40}.border-green-900/30{border-color:#14532d4d}.border-green-900/35{border-color:#14532d59}.border-green-900/40{border-color:#14532d66}.border-green-900/45{border-color:#14532d73}.border-green-900/5{border-color:#14532d0d}.border-green-900/50{border-color:#14532d80}.border-green-900/55{border-color:#14532d8c}.border-green-900/60{border-color:#14532d99}.border-green-900/65{border-color:#14532da6}.border-green-900/70{border-color:#14532db3}.border-green-900/75{border-color:#14532dbf}.border-green-900/80{border-color:#14532dcc}.border-green-900/85{border-color:#14532dd9}.border-green-900/90{border-color:#14532de6}.border-green-900/95{border-color:#14532df2}.border-input{border-color:hsl(var(--input))}.border-muted{border-color:hsl(var(--muted))}.border-orange-500{--tw-border-opacity: 1;border-color:rgb(249 115 22 / var(--tw-border-opacity, 1))}.border-primary{border-color:hsl(var(--primary))}.border-red-100{--tw-border-opacity: 1;border-color:rgb(254 226 226 / var(--tw-border-opacity, 1))}.border-red-100/0{border-color:#fee2e200}.border-red-100/10{border-color:#fee2e21a}.border-red-100/100{border-color:#fee2e2}.border-red-100/15{border-color:#fee2e226}.border-red-100/20{border-color:#fee2e233}.border-red-100/25{border-color:#fee2e240}.border-red-100/30{border-color:#fee2e24d}.border-red-100/35{border-color:#fee2e259}.border-red-100/40{border-color:#fee2e266}.border-red-100/45{border-color:#fee2e273}.border-red-100/5{border-color:#fee2e20d}.border-red-100/50{border-color:#fee2e280}.border-red-100/55{border-color:#fee2e28c}.border-red-100/60{border-color:#fee2e299}.border-red-100/65{border-color:#fee2e2a6}.border-red-100/70{border-color:#fee2e2b3}.border-red-100/75{border-color:#fee2e2bf}.border-red-100/80{border-color:#fee2e2cc}.border-red-100/85{border-color:#fee2e2d9}.border-red-100/90{border-color:#fee2e2e6}.border-red-100/95{border-color:#fee2e2f2}.border-red-200{--tw-border-opacity: 1;border-color:rgb(254 202 202 / var(--tw-border-opacity, 1))}.border-red-200/0{border-color:#fecaca00}.border-red-200/10{border-color:#fecaca1a}.border-red-200/100{border-color:#fecaca}.border-red-200/15{border-color:#fecaca26}.border-red-200/20{border-color:#fecaca33}.border-red-200/25{border-color:#fecaca40}.border-red-200/30{border-color:#fecaca4d}.border-red-200/35{border-color:#fecaca59}.border-red-200/40{border-color:#fecaca66}.border-red-200/45{border-color:#fecaca73}.border-red-200/5{border-color:#fecaca0d}.border-red-200/50{border-color:#fecaca80}.border-red-200/55{border-color:#fecaca8c}.border-red-200/60{border-color:#fecaca99}.border-red-200/65{border-color:#fecacaa6}.border-red-200/70{border-color:#fecacab3}.border-red-200/75{border-color:#fecacabf}.border-red-200/80{border-color:#fecacacc}.border-red-200/85{border-color:#fecacad9}.border-red-200/90{border-color:#fecacae6}.border-red-200/95{border-color:#fecacaf2}.border-red-300{--tw-border-opacity: 1;border-color:rgb(252 165 165 / var(--tw-border-opacity, 1))}.border-red-300/0{border-color:#fca5a500}.border-red-300/10{border-color:#fca5a51a}.border-red-300/100{border-color:#fca5a5}.border-red-300/15{border-color:#fca5a526}.border-red-300/20{border-color:#fca5a533}.border-red-300/25{border-color:#fca5a540}.border-red-300/30{border-color:#fca5a54d}.border-red-300/35{border-color:#fca5a559}.border-red-300/40{border-color:#fca5a566}.border-red-300/45{border-color:#fca5a573}.border-red-300/5{border-color:#fca5a50d}.border-red-300/50{border-color:#fca5a580}.border-red-300/55{border-color:#fca5a58c}.border-red-300/60{border-color:#fca5a599}.border-red-300/65{border-color:#fca5a5a6}.border-red-300/70{border-color:#fca5a5b3}.border-red-300/75{border-color:#fca5a5bf}.border-red-300/80{border-color:#fca5a5cc}.border-red-300/85{border-color:#fca5a5d9}.border-red-300/90{border-color:#fca5a5e6}.border-red-300/95{border-color:#fca5a5f2}.border-red-400{--tw-border-opacity: 1;border-color:rgb(248 113 113 / var(--tw-border-opacity, 1))}.border-red-400/0{border-color:#f8717100}.border-red-400/10{border-color:#f871711a}.border-red-400/100{border-color:#f87171}.border-red-400/15{border-color:#f8717126}.border-red-400/20{border-color:#f8717133}.border-red-400/25{border-color:#f8717140}.border-red-400/30{border-color:#f871714d}.border-red-400/35{border-color:#f8717159}.border-red-400/40{border-color:#f8717166}.border-red-400/45{border-color:#f8717173}.border-red-400/5{border-color:#f871710d}.border-red-400/50{border-color:#f8717180}.border-red-400/55{border-color:#f871718c}.border-red-400/60{border-color:#f8717199}.border-red-400/65{border-color:#f87171a6}.border-red-400/70{border-color:#f87171b3}.border-red-400/75{border-color:#f87171bf}.border-red-400/80{border-color:#f87171cc}.border-red-400/85{border-color:#f87171d9}.border-red-400/90{border-color:#f87171e6}.border-red-400/95{border-color:#f87171f2}.border-red-50{--tw-border-opacity: 1;border-color:rgb(254 242 242 / var(--tw-border-opacity, 1))}.border-red-50/0{border-color:#fef2f200}.border-red-50/10{border-color:#fef2f21a}.border-red-50/100{border-color:#fef2f2}.border-red-50/15{border-color:#fef2f226}.border-red-50/20{border-color:#fef2f233}.border-red-50/25{border-color:#fef2f240}.border-red-50/30{border-color:#fef2f24d}.border-red-50/35{border-color:#fef2f259}.border-red-50/40{border-color:#fef2f266}.border-red-50/45{border-color:#fef2f273}.border-red-50/5{border-color:#fef2f20d}.border-red-50/50{border-color:#fef2f280}.border-red-50/55{border-color:#fef2f28c}.border-red-50/60{border-color:#fef2f299}.border-red-50/65{border-color:#fef2f2a6}.border-red-50/70{border-color:#fef2f2b3}.border-red-50/75{border-color:#fef2f2bf}.border-red-50/80{border-color:#fef2f2cc}.border-red-50/85{border-color:#fef2f2d9}.border-red-50/90{border-color:#fef2f2e6}.border-red-50/95{border-color:#fef2f2f2}.border-red-500{--tw-border-opacity: 1;border-color:rgb(239 68 68 / var(--tw-border-opacity, 1))}.border-red-500/0{border-color:#ef444400}.border-red-500/10{border-color:#ef44441a}.border-red-500/100{border-color:#ef4444}.border-red-500/15{border-color:#ef444426}.border-red-500/20{border-color:#ef444433}.border-red-500/25{border-color:#ef444440}.border-red-500/30{border-color:#ef44444d}.border-red-500/35{border-color:#ef444459}.border-red-500/40{border-color:#ef444466}.border-red-500/45{border-color:#ef444473}.border-red-500/5{border-color:#ef44440d}.border-red-500/50{border-color:#ef444480}.border-red-500/55{border-color:#ef44448c}.border-red-500/60{border-color:#ef444499}.border-red-500/65{border-color:#ef4444a6}.border-red-500/70{border-color:#ef4444b3}.border-red-500/75{border-color:#ef4444bf}.border-red-500/80{border-color:#ef4444cc}.border-red-500/85{border-color:#ef4444d9}.border-red-500/90{border-color:#ef4444e6}.border-red-500/95{border-color:#ef4444f2}.border-red-600{--tw-border-opacity: 1;border-color:rgb(220 38 38 / var(--tw-border-opacity, 1))}.border-red-600/0{border-color:#dc262600}.border-red-600/10{border-color:#dc26261a}.border-red-600/100{border-color:#dc2626}.border-red-600/15{border-color:#dc262626}.border-red-600/20{border-color:#dc262633}.border-red-600/25{border-color:#dc262640}.border-red-600/30{border-color:#dc26264d}.border-red-600/35{border-color:#dc262659}.border-red-600/40{border-color:#dc262666}.border-red-600/45{border-color:#dc262673}.border-red-600/5{border-color:#dc26260d}.border-red-600/50{border-color:#dc262680}.border-red-600/55{border-color:#dc26268c}.border-red-600/60{border-color:#dc262699}.border-red-600/65{border-color:#dc2626a6}.border-red-600/70{border-color:#dc2626b3}.border-red-600/75{border-color:#dc2626bf}.border-red-600/80{border-color:#dc2626cc}.border-red-600/85{border-color:#dc2626d9}.border-red-600/90{border-color:#dc2626e6}.border-red-600/95{border-color:#dc2626f2}.border-red-700{--tw-border-opacity: 1;border-color:rgb(185 28 28 / var(--tw-border-opacity, 1))}.border-red-700/0{border-color:#b91c1c00}.border-red-700/10{border-color:#b91c1c1a}.border-red-700/100{border-color:#b91c1c}.border-red-700/15{border-color:#b91c1c26}.border-red-700/20{border-color:#b91c1c33}.border-red-700/25{border-color:#b91c1c40}.border-red-700/30{border-color:#b91c1c4d}.border-red-700/35{border-color:#b91c1c59}.border-red-700/40{border-color:#b91c1c66}.border-red-700/45{border-color:#b91c1c73}.border-red-700/5{border-color:#b91c1c0d}.border-red-700/50{border-color:#b91c1c80}.border-red-700/55{border-color:#b91c1c8c}.border-red-700/60{border-color:#b91c1c99}.border-red-700/65{border-color:#b91c1ca6}.border-red-700/70{border-color:#b91c1cb3}.border-red-700/75{border-color:#b91c1cbf}.border-red-700/80{border-color:#b91c1ccc}.border-red-700/85{border-color:#b91c1cd9}.border-red-700/90{border-color:#b91c1ce6}.border-red-700/95{border-color:#b91c1cf2}.border-red-800{--tw-border-opacity: 1;border-color:rgb(153 27 27 / var(--tw-border-opacity, 1))}.border-red-800/0{border-color:#991b1b00}.border-red-800/10{border-color:#991b1b1a}.border-red-800/100{border-color:#991b1b}.border-red-800/15{border-color:#991b1b26}.border-red-800/20{border-color:#991b1b33}.border-red-800/25{border-color:#991b1b40}.border-red-800/30{border-color:#991b1b4d}.border-red-800/35{border-color:#991b1b59}.border-red-800/40{border-color:#991b1b66}.border-red-800/45{border-color:#991b1b73}.border-red-800/5{border-color:#991b1b0d}.border-red-800/50{border-color:#991b1b80}.border-red-800/55{border-color:#991b1b8c}.border-red-800/60{border-color:#991b1b99}.border-red-800/65{border-color:#991b1ba6}.border-red-800/70{border-color:#991b1bb3}.border-red-800/75{border-color:#991b1bbf}.border-red-800/80{border-color:#991b1bcc}.border-red-800/85{border-color:#991b1bd9}.border-red-800/90{border-color:#991b1be6}.border-red-800/95{border-color:#991b1bf2}.border-red-900{--tw-border-opacity: 1;border-color:rgb(127 29 29 / var(--tw-border-opacity, 1))}.border-red-900/0{border-color:#7f1d1d00}.border-red-900/10{border-color:#7f1d1d1a}.border-red-900/100{border-color:#7f1d1d}.border-red-900/15{border-color:#7f1d1d26}.border-red-900/20{border-color:#7f1d1d33}.border-red-900/25{border-color:#7f1d1d40}.border-red-900/30{border-color:#7f1d1d4d}.border-red-900/35{border-color:#7f1d1d59}.border-red-900/40{border-color:#7f1d1d66}.border-red-900/45{border-color:#7f1d1d73}.border-red-900/5{border-color:#7f1d1d0d}.border-red-900/50{border-color:#7f1d1d80}.border-red-900/55{border-color:#7f1d1d8c}.border-red-900/60{border-color:#7f1d1d99}.border-red-900/65{border-color:#7f1d1da6}.border-red-900/70{border-color:#7f1d1db3}.border-red-900/75{border-color:#7f1d1dbf}.border-red-900/80{border-color:#7f1d1dcc}.border-red-900/85{border-color:#7f1d1dd9}.border-red-900/90{border-color:#7f1d1de6}.border-red-900/95{border-color:#7f1d1df2}.border-transparent{border-color:transparent}.bg-background{background-color:hsl(var(--background))}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.bg-black/80{background-color:#000c}.bg-blue-100{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.bg-blue-100/0{background-color:#dbeafe00}.bg-blue-100/10{background-color:#dbeafe1a}.bg-blue-100/100{background-color:#dbeafe}.bg-blue-100/15{background-color:#dbeafe26}.bg-blue-100/20{background-color:#dbeafe33}.bg-blue-100/25{background-color:#dbeafe40}.bg-blue-100/30{background-color:#dbeafe4d}.bg-blue-100/35{background-color:#dbeafe59}.bg-blue-100/40{background-color:#dbeafe66}.bg-blue-100/45{background-color:#dbeafe73}.bg-blue-100/5{background-color:#dbeafe0d}.bg-blue-100/50{background-color:#dbeafe80}.bg-blue-100/55{background-color:#dbeafe8c}.bg-blue-100/60{background-color:#dbeafe99}.bg-blue-100/65{background-color:#dbeafea6}.bg-blue-100/70{background-color:#dbeafeb3}.bg-blue-100/75{background-color:#dbeafebf}.bg-blue-100/80{background-color:#dbeafecc}.bg-blue-100/85{background-color:#dbeafed9}.bg-blue-100/90{background-color:#dbeafee6}.bg-blue-100/95{background-color:#dbeafef2}.bg-blue-200{--tw-bg-opacity: 1;background-color:rgb(191 219 254 / var(--tw-bg-opacity, 1))}.bg-blue-200/0{background-color:#bfdbfe00}.bg-blue-200/10{background-color:#bfdbfe1a}.bg-blue-200/100{background-color:#bfdbfe}.bg-blue-200/15{background-color:#bfdbfe26}.bg-blue-200/20{background-color:#bfdbfe33}.bg-blue-200/25{background-color:#bfdbfe40}.bg-blue-200/30{background-color:#bfdbfe4d}.bg-blue-200/35{background-color:#bfdbfe59}.bg-blue-200/40{background-color:#bfdbfe66}.bg-blue-200/45{background-color:#bfdbfe73}.bg-blue-200/5{background-color:#bfdbfe0d}.bg-blue-200/50{background-color:#bfdbfe80}.bg-blue-200/55{background-color:#bfdbfe8c}.bg-blue-200/60{background-color:#bfdbfe99}.bg-blue-200/65{background-color:#bfdbfea6}.bg-blue-200/70{background-color:#bfdbfeb3}.bg-blue-200/75{background-color:#bfdbfebf}.bg-blue-200/80{background-color:#bfdbfecc}.bg-blue-200/85{background-color:#bfdbfed9}.bg-blue-200/90{background-color:#bfdbfee6}.bg-blue-200/95{background-color:#bfdbfef2}.bg-blue-300{--tw-bg-opacity: 1;background-color:rgb(147 197 253 / var(--tw-bg-opacity, 1))}.bg-blue-300/0{background-color:#93c5fd00}.bg-blue-300/10{background-color:#93c5fd1a}.bg-blue-300/100{background-color:#93c5fd}.bg-blue-300/15{background-color:#93c5fd26}.bg-blue-300/20{background-color:#93c5fd33}.bg-blue-300/25{background-color:#93c5fd40}.bg-blue-300/30{background-color:#93c5fd4d}.bg-blue-300/35{background-color:#93c5fd59}.bg-blue-300/40{background-color:#93c5fd66}.bg-blue-300/45{background-color:#93c5fd73}.bg-blue-300/5{background-color:#93c5fd0d}.bg-blue-300/50{background-color:#93c5fd80}.bg-blue-300/55{background-color:#93c5fd8c}.bg-blue-300/60{background-color:#93c5fd99}.bg-blue-300/65{background-color:#93c5fda6}.bg-blue-300/70{background-color:#93c5fdb3}.bg-blue-300/75{background-color:#93c5fdbf}.bg-blue-300/80{background-color:#93c5fdcc}.bg-blue-300/85{background-color:#93c5fdd9}.bg-blue-300/90{background-color:#93c5fde6}.bg-blue-300/95{background-color:#93c5fdf2}.bg-blue-400{--tw-bg-opacity: 1;background-color:rgb(96 165 250 / var(--tw-bg-opacity, 1))}.bg-blue-400/0{background-color:#60a5fa00}.bg-blue-400/10{background-color:#60a5fa1a}.bg-blue-400/100{background-color:#60a5fa}.bg-blue-400/15{background-color:#60a5fa26}.bg-blue-400/20{background-color:#60a5fa33}.bg-blue-400/25{background-color:#60a5fa40}.bg-blue-400/30{background-color:#60a5fa4d}.bg-blue-400/35{background-color:#60a5fa59}.bg-blue-400/40{background-color:#60a5fa66}.bg-blue-400/45{background-color:#60a5fa73}.bg-blue-400/5{background-color:#60a5fa0d}.bg-blue-400/50{background-color:#60a5fa80}.bg-blue-400/55{background-color:#60a5fa8c}.bg-blue-400/60{background-color:#60a5fa99}.bg-blue-400/65{background-color:#60a5faa6}.bg-blue-400/70{background-color:#60a5fab3}.bg-blue-400/75{background-color:#60a5fabf}.bg-blue-400/80{background-color:#60a5facc}.bg-blue-400/85{background-color:#60a5fad9}.bg-blue-400/90{background-color:#60a5fae6}.bg-blue-400/95{background-color:#60a5faf2}.bg-blue-50{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.bg-blue-50/0{background-color:#eff6ff00}.bg-blue-50/10{background-color:#eff6ff1a}.bg-blue-50/100{background-color:#eff6ff}.bg-blue-50/15{background-color:#eff6ff26}.bg-blue-50/20{background-color:#eff6ff33}.bg-blue-50/25{background-color:#eff6ff40}.bg-blue-50/30{background-color:#eff6ff4d}.bg-blue-50/35{background-color:#eff6ff59}.bg-blue-50/40{background-color:#eff6ff66}.bg-blue-50/45{background-color:#eff6ff73}.bg-blue-50/5{background-color:#eff6ff0d}.bg-blue-50/50{background-color:#eff6ff80}.bg-blue-50/55{background-color:#eff6ff8c}.bg-blue-50/60{background-color:#eff6ff99}.bg-blue-50/65{background-color:#eff6ffa6}.bg-blue-50/70{background-color:#eff6ffb3}.bg-blue-50/75{background-color:#eff6ffbf}.bg-blue-50/80{background-color:#eff6ffcc}.bg-blue-50/85{background-color:#eff6ffd9}.bg-blue-50/90{background-color:#eff6ffe6}.bg-blue-50/95{background-color:#eff6fff2}.bg-blue-500{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.bg-blue-500/0{background-color:#3b82f600}.bg-blue-500/10{background-color:#3b82f61a}.bg-blue-500/100{background-color:#3b82f6}.bg-blue-500/15{background-color:#3b82f626}.bg-blue-500/20{background-color:#3b82f633}.bg-blue-500/25{background-color:#3b82f640}.bg-blue-500/30{background-color:#3b82f64d}.bg-blue-500/35{background-color:#3b82f659}.bg-blue-500/40{background-color:#3b82f666}.bg-blue-500/45{background-color:#3b82f673}.bg-blue-500/5{background-color:#3b82f60d}.bg-blue-500/50{background-color:#3b82f680}.bg-blue-500/55{background-color:#3b82f68c}.bg-blue-500/60{background-color:#3b82f699}.bg-blue-500/65{background-color:#3b82f6a6}.bg-blue-500/70{background-color:#3b82f6b3}.bg-blue-500/75{background-color:#3b82f6bf}.bg-blue-500/80{background-color:#3b82f6cc}.bg-blue-500/85{background-color:#3b82f6d9}.bg-blue-500/90{background-color:#3b82f6e6}.bg-blue-500/95{background-color:#3b82f6f2}.bg-blue-600{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.bg-blue-600/0{background-color:#2563eb00}.bg-blue-600/10{background-color:#2563eb1a}.bg-blue-600/100{background-color:#2563eb}.bg-blue-600/15{background-color:#2563eb26}.bg-blue-600/20{background-color:#2563eb33}.bg-blue-600/25{background-color:#2563eb40}.bg-blue-600/30{background-color:#2563eb4d}.bg-blue-600/35{background-color:#2563eb59}.bg-blue-600/40{background-color:#2563eb66}.bg-blue-600/45{background-color:#2563eb73}.bg-blue-600/5{background-color:#2563eb0d}.bg-blue-600/50{background-color:#2563eb80}.bg-blue-600/55{background-color:#2563eb8c}.bg-blue-600/60{background-color:#2563eb99}.bg-blue-600/65{background-color:#2563eba6}.bg-blue-600/70{background-color:#2563ebb3}.bg-blue-600/75{background-color:#2563ebbf}.bg-blue-600/80{background-color:#2563ebcc}.bg-blue-600/85{background-color:#2563ebd9}.bg-blue-600/90{background-color:#2563ebe6}.bg-blue-600/95{background-color:#2563ebf2}.bg-blue-700{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1))}.bg-blue-700/0{background-color:#1d4ed800}.bg-blue-700/10{background-color:#1d4ed81a}.bg-blue-700/100{background-color:#1d4ed8}.bg-blue-700/15{background-color:#1d4ed826}.bg-blue-700/20{background-color:#1d4ed833}.bg-blue-700/25{background-color:#1d4ed840}.bg-blue-700/30{background-color:#1d4ed84d}.bg-blue-700/35{background-color:#1d4ed859}.bg-blue-700/40{background-color:#1d4ed866}.bg-blue-700/45{background-color:#1d4ed873}.bg-blue-700/5{background-color:#1d4ed80d}.bg-blue-700/50{background-color:#1d4ed880}.bg-blue-700/55{background-color:#1d4ed88c}.bg-blue-700/60{background-color:#1d4ed899}.bg-blue-700/65{background-color:#1d4ed8a6}.bg-blue-700/70{background-color:#1d4ed8b3}.bg-blue-700/75{background-color:#1d4ed8bf}.bg-blue-700/80{background-color:#1d4ed8cc}.bg-blue-700/85{background-color:#1d4ed8d9}.bg-blue-700/90{background-color:#1d4ed8e6}.bg-blue-700/95{background-color:#1d4ed8f2}.bg-blue-800{--tw-bg-opacity: 1;background-color:rgb(30 64 175 / var(--tw-bg-opacity, 1))}.bg-blue-800/0{background-color:#1e40af00}.bg-blue-800/10{background-color:#1e40af1a}.bg-blue-800/100{background-color:#1e40af}.bg-blue-800/15{background-color:#1e40af26}.bg-blue-800/20{background-color:#1e40af33}.bg-blue-800/25{background-color:#1e40af40}.bg-blue-800/30{background-color:#1e40af4d}.bg-blue-800/35{background-color:#1e40af59}.bg-blue-800/40{background-color:#1e40af66}.bg-blue-800/45{background-color:#1e40af73}.bg-blue-800/5{background-color:#1e40af0d}.bg-blue-800/50{background-color:#1e40af80}.bg-blue-800/55{background-color:#1e40af8c}.bg-blue-800/60{background-color:#1e40af99}.bg-blue-800/65{background-color:#1e40afa6}.bg-blue-800/70{background-color:#1e40afb3}.bg-blue-800/75{background-color:#1e40afbf}.bg-blue-800/80{background-color:#1e40afcc}.bg-blue-800/85{background-color:#1e40afd9}.bg-blue-800/90{background-color:#1e40afe6}.bg-blue-800/95{background-color:#1e40aff2}.bg-blue-900{--tw-bg-opacity: 1;background-color:rgb(30 58 138 / var(--tw-bg-opacity, 1))}.bg-blue-900/0{background-color:#1e3a8a00}.bg-blue-900/10{background-color:#1e3a8a1a}.bg-blue-900/100{background-color:#1e3a8a}.bg-blue-900/15{background-color:#1e3a8a26}.bg-blue-900/20{background-color:#1e3a8a33}.bg-blue-900/25{background-color:#1e3a8a40}.bg-blue-900/30{background-color:#1e3a8a4d}.bg-blue-900/35{background-color:#1e3a8a59}.bg-blue-900/40{background-color:#1e3a8a66}.bg-blue-900/45{background-color:#1e3a8a73}.bg-blue-900/5{background-color:#1e3a8a0d}.bg-blue-900/50{background-color:#1e3a8a80}.bg-blue-900/55{background-color:#1e3a8a8c}.bg-blue-900/60{background-color:#1e3a8a99}.bg-blue-900/65{background-color:#1e3a8aa6}.bg-blue-900/70{background-color:#1e3a8ab3}.bg-blue-900/75{background-color:#1e3a8abf}.bg-blue-900/80{background-color:#1e3a8acc}.bg-blue-900/85{background-color:#1e3a8ad9}.bg-blue-900/90{background-color:#1e3a8ae6}.bg-blue-900/95{background-color:#1e3a8af2}.bg-card{background-color:hsl(var(--card))}.bg-destructive{background-color:hsl(var(--destructive))}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-gray-100/0{background-color:#f3f4f600}.bg-gray-100/10{background-color:#f3f4f61a}.bg-gray-100/100{background-color:#f3f4f6}.bg-gray-100/15{background-color:#f3f4f626}.bg-gray-100/20{background-color:#f3f4f633}.bg-gray-100/25{background-color:#f3f4f640}.bg-gray-100/30{background-color:#f3f4f64d}.bg-gray-100/35{background-color:#f3f4f659}.bg-gray-100/40{background-color:#f3f4f666}.bg-gray-100/45{background-color:#f3f4f673}.bg-gray-100/5{background-color:#f3f4f60d}.bg-gray-100/50{background-color:#f3f4f680}.bg-gray-100/55{background-color:#f3f4f68c}.bg-gray-100/60{background-color:#f3f4f699}.bg-gray-100/65{background-color:#f3f4f6a6}.bg-gray-100/70{background-color:#f3f4f6b3}.bg-gray-100/75{background-color:#f3f4f6bf}.bg-gray-100/80{background-color:#f3f4f6cc}.bg-gray-100/85{background-color:#f3f4f6d9}.bg-gray-100/90{background-color:#f3f4f6e6}.bg-gray-100/95{background-color:#f3f4f6f2}.bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.bg-gray-200/0{background-color:#e5e7eb00}.bg-gray-200/10{background-color:#e5e7eb1a}.bg-gray-200/100{background-color:#e5e7eb}.bg-gray-200/15{background-color:#e5e7eb26}.bg-gray-200/20{background-color:#e5e7eb33}.bg-gray-200/25{background-color:#e5e7eb40}.bg-gray-200/30{background-color:#e5e7eb4d}.bg-gray-200/35{background-color:#e5e7eb59}.bg-gray-200/40{background-color:#e5e7eb66}.bg-gray-200/45{background-color:#e5e7eb73}.bg-gray-200/5{background-color:#e5e7eb0d}.bg-gray-200/50{background-color:#e5e7eb80}.bg-gray-200/55{background-color:#e5e7eb8c}.bg-gray-200/60{background-color:#e5e7eb99}.bg-gray-200/65{background-color:#e5e7eba6}.bg-gray-200/70{background-color:#e5e7ebb3}.bg-gray-200/75{background-color:#e5e7ebbf}.bg-gray-200/80{background-color:#e5e7ebcc}.bg-gray-200/85{background-color:#e5e7ebd9}.bg-gray-200/90{background-color:#e5e7ebe6}.bg-gray-200/95{background-color:#e5e7ebf2}.bg-gray-300{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity, 1))}.bg-gray-300/0{background-color:#d1d5db00}.bg-gray-300/10{background-color:#d1d5db1a}.bg-gray-300/100{background-color:#d1d5db}.bg-gray-300/15{background-color:#d1d5db26}.bg-gray-300/20{background-color:#d1d5db33}.bg-gray-300/25{background-color:#d1d5db40}.bg-gray-300/30{background-color:#d1d5db4d}.bg-gray-300/35{background-color:#d1d5db59}.bg-gray-300/40{background-color:#d1d5db66}.bg-gray-300/45{background-color:#d1d5db73}.bg-gray-300/5{background-color:#d1d5db0d}.bg-gray-300/50{background-color:#d1d5db80}.bg-gray-300/55{background-color:#d1d5db8c}.bg-gray-300/60{background-color:#d1d5db99}.bg-gray-300/65{background-color:#d1d5dba6}.bg-gray-300/70{background-color:#d1d5dbb3}.bg-gray-300/75{background-color:#d1d5dbbf}.bg-gray-300/80{background-color:#d1d5dbcc}.bg-gray-300/85{background-color:#d1d5dbd9}.bg-gray-300/90{background-color:#d1d5dbe6}.bg-gray-300/95{background-color:#d1d5dbf2}.bg-gray-400{--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity, 1))}.bg-gray-400/0{background-color:#9ca3af00}.bg-gray-400/10{background-color:#9ca3af1a}.bg-gray-400/100{background-color:#9ca3af}.bg-gray-400/15{background-color:#9ca3af26}.bg-gray-400/20{background-color:#9ca3af33}.bg-gray-400/25{background-color:#9ca3af40}.bg-gray-400/30{background-color:#9ca3af4d}.bg-gray-400/35{background-color:#9ca3af59}.bg-gray-400/40{background-color:#9ca3af66}.bg-gray-400/45{background-color:#9ca3af73}.bg-gray-400/5{background-color:#9ca3af0d}.bg-gray-400/50{background-color:#9ca3af80}.bg-gray-400/55{background-color:#9ca3af8c}.bg-gray-400/60{background-color:#9ca3af99}.bg-gray-400/65{background-color:#9ca3afa6}.bg-gray-400/70{background-color:#9ca3afb3}.bg-gray-400/75{background-color:#9ca3afbf}.bg-gray-400/80{background-color:#9ca3afcc}.bg-gray-400/85{background-color:#9ca3afd9}.bg-gray-400/90{background-color:#9ca3afe6}.bg-gray-400/95{background-color:#9ca3aff2}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.bg-gray-50/0{background-color:#f9fafb00}.bg-gray-50/10{background-color:#f9fafb1a}.bg-gray-50/100{background-color:#f9fafb}.bg-gray-50/15{background-color:#f9fafb26}.bg-gray-50/20{background-color:#f9fafb33}.bg-gray-50/25{background-color:#f9fafb40}.bg-gray-50/30{background-color:#f9fafb4d}.bg-gray-50/35{background-color:#f9fafb59}.bg-gray-50/40{background-color:#f9fafb66}.bg-gray-50/45{background-color:#f9fafb73}.bg-gray-50/5{background-color:#f9fafb0d}.bg-gray-50/50{background-color:#f9fafb80}.bg-gray-50/55{background-color:#f9fafb8c}.bg-gray-50/60{background-color:#f9fafb99}.bg-gray-50/65{background-color:#f9fafba6}.bg-gray-50/70{background-color:#f9fafbb3}.bg-gray-50/75{background-color:#f9fafbbf}.bg-gray-50/80{background-color:#f9fafbcc}.bg-gray-50/85{background-color:#f9fafbd9}.bg-gray-50/90{background-color:#f9fafbe6}.bg-gray-50/95{background-color:#f9fafbf2}.bg-gray-500{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity, 1))}.bg-gray-500/0{background-color:#6b728000}.bg-gray-500/10{background-color:#6b72801a}.bg-gray-500/100{background-color:#6b7280}.bg-gray-500/15{background-color:#6b728026}.bg-gray-500/20{background-color:#6b728033}.bg-gray-500/25{background-color:#6b728040}.bg-gray-500/30{background-color:#6b72804d}.bg-gray-500/35{background-color:#6b728059}.bg-gray-500/40{background-color:#6b728066}.bg-gray-500/45{background-color:#6b728073}.bg-gray-500/5{background-color:#6b72800d}.bg-gray-500/50{background-color:#6b728080}.bg-gray-500/55{background-color:#6b72808c}.bg-gray-500/60{background-color:#6b728099}.bg-gray-500/65{background-color:#6b7280a6}.bg-gray-500/70{background-color:#6b7280b3}.bg-gray-500/75{background-color:#6b7280bf}.bg-gray-500/80{background-color:#6b7280cc}.bg-gray-500/85{background-color:#6b7280d9}.bg-gray-500/90{background-color:#6b7280e6}.bg-gray-500/95{background-color:#6b7280f2}.bg-gray-600{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.bg-gray-600/0{background-color:#4b556300}.bg-gray-600/10{background-color:#4b55631a}.bg-gray-600/100{background-color:#4b5563}.bg-gray-600/15{background-color:#4b556326}.bg-gray-600/20{background-color:#4b556333}.bg-gray-600/25{background-color:#4b556340}.bg-gray-600/30{background-color:#4b55634d}.bg-gray-600/35{background-color:#4b556359}.bg-gray-600/40{background-color:#4b556366}.bg-gray-600/45{background-color:#4b556373}.bg-gray-600/5{background-color:#4b55630d}.bg-gray-600/50{background-color:#4b556380}.bg-gray-600/55{background-color:#4b55638c}.bg-gray-600/60{background-color:#4b556399}.bg-gray-600/65{background-color:#4b5563a6}.bg-gray-600/70{background-color:#4b5563b3}.bg-gray-600/75{background-color:#4b5563bf}.bg-gray-600/80{background-color:#4b5563cc}.bg-gray-600/85{background-color:#4b5563d9}.bg-gray-600/90{background-color:#4b5563e6}.bg-gray-600/95{background-color:#4b5563f2}.bg-gray-700{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.bg-gray-700/0{background-color:#37415100}.bg-gray-700/10{background-color:#3741511a}.bg-gray-700/100{background-color:#374151}.bg-gray-700/15{background-color:#37415126}.bg-gray-700/20{background-color:#37415133}.bg-gray-700/25{background-color:#37415140}.bg-gray-700/30{background-color:#3741514d}.bg-gray-700/35{background-color:#37415159}.bg-gray-700/40{background-color:#37415166}.bg-gray-700/45{background-color:#37415173}.bg-gray-700/5{background-color:#3741510d}.bg-gray-700/50{background-color:#37415180}.bg-gray-700/55{background-color:#3741518c}.bg-gray-700/60{background-color:#37415199}.bg-gray-700/65{background-color:#374151a6}.bg-gray-700/70{background-color:#374151b3}.bg-gray-700/75{background-color:#374151bf}.bg-gray-700/80{background-color:#374151cc}.bg-gray-700/85{background-color:#374151d9}.bg-gray-700/90{background-color:#374151e6}.bg-gray-700/95{background-color:#374151f2}.bg-gray-800{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.bg-gray-800/0{background-color:#1f293700}.bg-gray-800/10{background-color:#1f29371a}.bg-gray-800/100{background-color:#1f2937}.bg-gray-800/15{background-color:#1f293726}.bg-gray-800/20{background-color:#1f293733}.bg-gray-800/25{background-color:#1f293740}.bg-gray-800/30{background-color:#1f29374d}.bg-gray-800/35{background-color:#1f293759}.bg-gray-800/40{background-color:#1f293766}.bg-gray-800/45{background-color:#1f293773}.bg-gray-800/5{background-color:#1f29370d}.bg-gray-800/50{background-color:#1f293780}.bg-gray-800/55{background-color:#1f29378c}.bg-gray-800/60{background-color:#1f293799}.bg-gray-800/65{background-color:#1f2937a6}.bg-gray-800/70{background-color:#1f2937b3}.bg-gray-800/75{background-color:#1f2937bf}.bg-gray-800/80{background-color:#1f2937cc}.bg-gray-800/85{background-color:#1f2937d9}.bg-gray-800/90{background-color:#1f2937e6}.bg-gray-800/95{background-color:#1f2937f2}.bg-gray-900{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity, 1))}.bg-gray-900/0{background-color:#11182700}.bg-gray-900/10{background-color:#1118271a}.bg-gray-900/100{background-color:#111827}.bg-gray-900/15{background-color:#11182726}.bg-gray-900/20{background-color:#11182733}.bg-gray-900/25{background-color:#11182740}.bg-gray-900/30{background-color:#1118274d}.bg-gray-900/35{background-color:#11182759}.bg-gray-900/40{background-color:#11182766}.bg-gray-900/45{background-color:#11182773}.bg-gray-900/5{background-color:#1118270d}.bg-gray-900/50{background-color:#11182780}.bg-gray-900/55{background-color:#1118278c}.bg-gray-900/60{background-color:#11182799}.bg-gray-900/65{background-color:#111827a6}.bg-gray-900/70{background-color:#111827b3}.bg-gray-900/75{background-color:#111827bf}.bg-gray-900/80{background-color:#111827cc}.bg-gray-900/85{background-color:#111827d9}.bg-gray-900/90{background-color:#111827e6}.bg-gray-900/95{background-color:#111827f2}.bg-green-100{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1))}.bg-green-100/0{background-color:#dcfce700}.bg-green-100/10{background-color:#dcfce71a}.bg-green-100/100{background-color:#dcfce7}.bg-green-100/15{background-color:#dcfce726}.bg-green-100/20{background-color:#dcfce733}.bg-green-100/25{background-color:#dcfce740}.bg-green-100/30{background-color:#dcfce74d}.bg-green-100/35{background-color:#dcfce759}.bg-green-100/40{background-color:#dcfce766}.bg-green-100/45{background-color:#dcfce773}.bg-green-100/5{background-color:#dcfce70d}.bg-green-100/50{background-color:#dcfce780}.bg-green-100/55{background-color:#dcfce78c}.bg-green-100/60{background-color:#dcfce799}.bg-green-100/65{background-color:#dcfce7a6}.bg-green-100/70{background-color:#dcfce7b3}.bg-green-100/75{background-color:#dcfce7bf}.bg-green-100/80{background-color:#dcfce7cc}.bg-green-100/85{background-color:#dcfce7d9}.bg-green-100/90{background-color:#dcfce7e6}.bg-green-100/95{background-color:#dcfce7f2}.bg-green-200{--tw-bg-opacity: 1;background-color:rgb(187 247 208 / var(--tw-bg-opacity, 1))}.bg-green-200/0{background-color:#bbf7d000}.bg-green-200/10{background-color:#bbf7d01a}.bg-green-200/100{background-color:#bbf7d0}.bg-green-200/15{background-color:#bbf7d026}.bg-green-200/20{background-color:#bbf7d033}.bg-green-200/25{background-color:#bbf7d040}.bg-green-200/30{background-color:#bbf7d04d}.bg-green-200/35{background-color:#bbf7d059}.bg-green-200/40{background-color:#bbf7d066}.bg-green-200/45{background-color:#bbf7d073}.bg-green-200/5{background-color:#bbf7d00d}.bg-green-200/50{background-color:#bbf7d080}.bg-green-200/55{background-color:#bbf7d08c}.bg-green-200/60{background-color:#bbf7d099}.bg-green-200/65{background-color:#bbf7d0a6}.bg-green-200/70{background-color:#bbf7d0b3}.bg-green-200/75{background-color:#bbf7d0bf}.bg-green-200/80{background-color:#bbf7d0cc}.bg-green-200/85{background-color:#bbf7d0d9}.bg-green-200/90{background-color:#bbf7d0e6}.bg-green-200/95{background-color:#bbf7d0f2}.bg-green-300{--tw-bg-opacity: 1;background-color:rgb(134 239 172 / var(--tw-bg-opacity, 1))}.bg-green-300/0{background-color:#86efac00}.bg-green-300/10{background-color:#86efac1a}.bg-green-300/100{background-color:#86efac}.bg-green-300/15{background-color:#86efac26}.bg-green-300/20{background-color:#86efac33}.bg-green-300/25{background-color:#86efac40}.bg-green-300/30{background-color:#86efac4d}.bg-green-300/35{background-color:#86efac59}.bg-green-300/40{background-color:#86efac66}.bg-green-300/45{background-color:#86efac73}.bg-green-300/5{background-color:#86efac0d}.bg-green-300/50{background-color:#86efac80}.bg-green-300/55{background-color:#86efac8c}.bg-green-300/60{background-color:#86efac99}.bg-green-300/65{background-color:#86efaca6}.bg-green-300/70{background-color:#86efacb3}.bg-green-300/75{background-color:#86efacbf}.bg-green-300/80{background-color:#86efaccc}.bg-green-300/85{background-color:#86efacd9}.bg-green-300/90{background-color:#86eface6}.bg-green-300/95{background-color:#86efacf2}.bg-green-400{--tw-bg-opacity: 1;background-color:rgb(74 222 128 / var(--tw-bg-opacity, 1))}.bg-green-400/0{background-color:#4ade8000}.bg-green-400/10{background-color:#4ade801a}.bg-green-400/100{background-color:#4ade80}.bg-green-400/15{background-color:#4ade8026}.bg-green-400/20{background-color:#4ade8033}.bg-green-400/25{background-color:#4ade8040}.bg-green-400/30{background-color:#4ade804d}.bg-green-400/35{background-color:#4ade8059}.bg-green-400/40{background-color:#4ade8066}.bg-green-400/45{background-color:#4ade8073}.bg-green-400/5{background-color:#4ade800d}.bg-green-400/50{background-color:#4ade8080}.bg-green-400/55{background-color:#4ade808c}.bg-green-400/60{background-color:#4ade8099}.bg-green-400/65{background-color:#4ade80a6}.bg-green-400/70{background-color:#4ade80b3}.bg-green-400/75{background-color:#4ade80bf}.bg-green-400/80{background-color:#4ade80cc}.bg-green-400/85{background-color:#4ade80d9}.bg-green-400/90{background-color:#4ade80e6}.bg-green-400/95{background-color:#4ade80f2}.bg-green-50{--tw-bg-opacity: 1;background-color:rgb(240 253 244 / var(--tw-bg-opacity, 1))}.bg-green-50/0{background-color:#f0fdf400}.bg-green-50/10{background-color:#f0fdf41a}.bg-green-50/100{background-color:#f0fdf4}.bg-green-50/15{background-color:#f0fdf426}.bg-green-50/20{background-color:#f0fdf433}.bg-green-50/25{background-color:#f0fdf440}.bg-green-50/30{background-color:#f0fdf44d}.bg-green-50/35{background-color:#f0fdf459}.bg-green-50/40{background-color:#f0fdf466}.bg-green-50/45{background-color:#f0fdf473}.bg-green-50/5{background-color:#f0fdf40d}.bg-green-50/50{background-color:#f0fdf480}.bg-green-50/55{background-color:#f0fdf48c}.bg-green-50/60{background-color:#f0fdf499}.bg-green-50/65{background-color:#f0fdf4a6}.bg-green-50/70{background-color:#f0fdf4b3}.bg-green-50/75{background-color:#f0fdf4bf}.bg-green-50/80{background-color:#f0fdf4cc}.bg-green-50/85{background-color:#f0fdf4d9}.bg-green-50/90{background-color:#f0fdf4e6}.bg-green-50/95{background-color:#f0fdf4f2}.bg-green-500{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.bg-green-500/0{background-color:#22c55e00}.bg-green-500/10{background-color:#22c55e1a}.bg-green-500/100{background-color:#22c55e}.bg-green-500/15{background-color:#22c55e26}.bg-green-500/20{background-color:#22c55e33}.bg-green-500/25{background-color:#22c55e40}.bg-green-500/30{background-color:#22c55e4d}.bg-green-500/35{background-color:#22c55e59}.bg-green-500/40{background-color:#22c55e66}.bg-green-500/45{background-color:#22c55e73}.bg-green-500/5{background-color:#22c55e0d}.bg-green-500/50{background-color:#22c55e80}.bg-green-500/55{background-color:#22c55e8c}.bg-green-500/60{background-color:#22c55e99}.bg-green-500/65{background-color:#22c55ea6}.bg-green-500/70{background-color:#22c55eb3}.bg-green-500/75{background-color:#22c55ebf}.bg-green-500/80{background-color:#22c55ecc}.bg-green-500/85{background-color:#22c55ed9}.bg-green-500/90{background-color:#22c55ee6}.bg-green-500/95{background-color:#22c55ef2}.bg-green-600{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity, 1))}.bg-green-600/0{background-color:#16a34a00}.bg-green-600/10{background-color:#16a34a1a}.bg-green-600/100{background-color:#16a34a}.bg-green-600/15{background-color:#16a34a26}.bg-green-600/20{background-color:#16a34a33}.bg-green-600/25{background-color:#16a34a40}.bg-green-600/30{background-color:#16a34a4d}.bg-green-600/35{background-color:#16a34a59}.bg-green-600/40{background-color:#16a34a66}.bg-green-600/45{background-color:#16a34a73}.bg-green-600/5{background-color:#16a34a0d}.bg-green-600/50{background-color:#16a34a80}.bg-green-600/55{background-color:#16a34a8c}.bg-green-600/60{background-color:#16a34a99}.bg-green-600/65{background-color:#16a34aa6}.bg-green-600/70{background-color:#16a34ab3}.bg-green-600/75{background-color:#16a34abf}.bg-green-600/80{background-color:#16a34acc}.bg-green-600/85{background-color:#16a34ad9}.bg-green-600/90{background-color:#16a34ae6}.bg-green-600/95{background-color:#16a34af2}.bg-green-700{--tw-bg-opacity: 1;background-color:rgb(21 128 61 / var(--tw-bg-opacity, 1))}.bg-green-700/0{background-color:#15803d00}.bg-green-700/10{background-color:#15803d1a}.bg-green-700/100{background-color:#15803d}.bg-green-700/15{background-color:#15803d26}.bg-green-700/20{background-color:#15803d33}.bg-green-700/25{background-color:#15803d40}.bg-green-700/30{background-color:#15803d4d}.bg-green-700/35{background-color:#15803d59}.bg-green-700/40{background-color:#15803d66}.bg-green-700/45{background-color:#15803d73}.bg-green-700/5{background-color:#15803d0d}.bg-green-700/50{background-color:#15803d80}.bg-green-700/55{background-color:#15803d8c}.bg-green-700/60{background-color:#15803d99}.bg-green-700/65{background-color:#15803da6}.bg-green-700/70{background-color:#15803db3}.bg-green-700/75{background-color:#15803dbf}.bg-green-700/80{background-color:#15803dcc}.bg-green-700/85{background-color:#15803dd9}.bg-green-700/90{background-color:#15803de6}.bg-green-700/95{background-color:#15803df2}.bg-green-800{--tw-bg-opacity: 1;background-color:rgb(22 101 52 / var(--tw-bg-opacity, 1))}.bg-green-800/0{background-color:#16653400}.bg-green-800/10{background-color:#1665341a}.bg-green-800/100{background-color:#166534}.bg-green-800/15{background-color:#16653426}.bg-green-800/20{background-color:#16653433}.bg-green-800/25{background-color:#16653440}.bg-green-800/30{background-color:#1665344d}.bg-green-800/35{background-color:#16653459}.bg-green-800/40{background-color:#16653466}.bg-green-800/45{background-color:#16653473}.bg-green-800/5{background-color:#1665340d}.bg-green-800/50{background-color:#16653480}.bg-green-800/55{background-color:#1665348c}.bg-green-800/60{background-color:#16653499}.bg-green-800/65{background-color:#166534a6}.bg-green-800/70{background-color:#166534b3}.bg-green-800/75{background-color:#166534bf}.bg-green-800/80{background-color:#166534cc}.bg-green-800/85{background-color:#166534d9}.bg-green-800/90{background-color:#166534e6}.bg-green-800/95{background-color:#166534f2}.bg-green-900{--tw-bg-opacity: 1;background-color:rgb(20 83 45 / var(--tw-bg-opacity, 1))}.bg-green-900/0{background-color:#14532d00}.bg-green-900/10{background-color:#14532d1a}.bg-green-900/100{background-color:#14532d}.bg-green-900/15{background-color:#14532d26}.bg-green-900/20{background-color:#14532d33}.bg-green-900/25{background-color:#14532d40}.bg-green-900/30{background-color:#14532d4d}.bg-green-900/35{background-color:#14532d59}.bg-green-900/40{background-color:#14532d66}.bg-green-900/45{background-color:#14532d73}.bg-green-900/5{background-color:#14532d0d}.bg-green-900/50{background-color:#14532d80}.bg-green-900/55{background-color:#14532d8c}.bg-green-900/60{background-color:#14532d99}.bg-green-900/65{background-color:#14532da6}.bg-green-900/70{background-color:#14532db3}.bg-green-900/75{background-color:#14532dbf}.bg-green-900/80{background-color:#14532dcc}.bg-green-900/85{background-color:#14532dd9}.bg-green-900/90{background-color:#14532de6}.bg-green-900/95{background-color:#14532df2}.bg-input{background-color:hsl(var(--input))}.bg-muted{background-color:hsl(var(--muted))}.bg-orange-50{--tw-bg-opacity: 1;background-color:rgb(255 247 237 / var(--tw-bg-opacity, 1))}.bg-popover{background-color:hsl(var(--popover))}.bg-primary{background-color:hsl(var(--primary))}.bg-purple-100{--tw-bg-opacity: 1;background-color:rgb(243 232 255 / var(--tw-bg-opacity, 1))}.bg-red-100{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.bg-red-100/0{background-color:#fee2e200}.bg-red-100/10{background-color:#fee2e21a}.bg-red-100/100{background-color:#fee2e2}.bg-red-100/15{background-color:#fee2e226}.bg-red-100/20{background-color:#fee2e233}.bg-red-100/25{background-color:#fee2e240}.bg-red-100/30{background-color:#fee2e24d}.bg-red-100/35{background-color:#fee2e259}.bg-red-100/40{background-color:#fee2e266}.bg-red-100/45{background-color:#fee2e273}.bg-red-100/5{background-color:#fee2e20d}.bg-red-100/50{background-color:#fee2e280}.bg-red-100/55{background-color:#fee2e28c}.bg-red-100/60{background-color:#fee2e299}.bg-red-100/65{background-color:#fee2e2a6}.bg-red-100/70{background-color:#fee2e2b3}.bg-red-100/75{background-color:#fee2e2bf}.bg-red-100/80{background-color:#fee2e2cc}.bg-red-100/85{background-color:#fee2e2d9}.bg-red-100/90{background-color:#fee2e2e6}.bg-red-100/95{background-color:#fee2e2f2}.bg-red-200{--tw-bg-opacity: 1;background-color:rgb(254 202 202 / var(--tw-bg-opacity, 1))}.bg-red-200/0{background-color:#fecaca00}.bg-red-200/10{background-color:#fecaca1a}.bg-red-200/100{background-color:#fecaca}.bg-red-200/15{background-color:#fecaca26}.bg-red-200/20{background-color:#fecaca33}.bg-red-200/25{background-color:#fecaca40}.bg-red-200/30{background-color:#fecaca4d}.bg-red-200/35{background-color:#fecaca59}.bg-red-200/40{background-color:#fecaca66}.bg-red-200/45{background-color:#fecaca73}.bg-red-200/5{background-color:#fecaca0d}.bg-red-200/50{background-color:#fecaca80}.bg-red-200/55{background-color:#fecaca8c}.bg-red-200/60{background-color:#fecaca99}.bg-red-200/65{background-color:#fecacaa6}.bg-red-200/70{background-color:#fecacab3}.bg-red-200/75{background-color:#fecacabf}.bg-red-200/80{background-color:#fecacacc}.bg-red-200/85{background-color:#fecacad9}.bg-red-200/90{background-color:#fecacae6}.bg-red-200/95{background-color:#fecacaf2}.bg-red-300{--tw-bg-opacity: 1;background-color:rgb(252 165 165 / var(--tw-bg-opacity, 1))}.bg-red-300/0{background-color:#fca5a500}.bg-red-300/10{background-color:#fca5a51a}.bg-red-300/100{background-color:#fca5a5}.bg-red-300/15{background-color:#fca5a526}.bg-red-300/20{background-color:#fca5a533}.bg-red-300/25{background-color:#fca5a540}.bg-red-300/30{background-color:#fca5a54d}.bg-red-300/35{background-color:#fca5a559}.bg-red-300/40{background-color:#fca5a566}.bg-red-300/45{background-color:#fca5a573}.bg-red-300/5{background-color:#fca5a50d}.bg-red-300/50{background-color:#fca5a580}.bg-red-300/55{background-color:#fca5a58c}.bg-red-300/60{background-color:#fca5a599}.bg-red-300/65{background-color:#fca5a5a6}.bg-red-300/70{background-color:#fca5a5b3}.bg-red-300/75{background-color:#fca5a5bf}.bg-red-300/80{background-color:#fca5a5cc}.bg-red-300/85{background-color:#fca5a5d9}.bg-red-300/90{background-color:#fca5a5e6}.bg-red-300/95{background-color:#fca5a5f2}.bg-red-400{--tw-bg-opacity: 1;background-color:rgb(248 113 113 / var(--tw-bg-opacity, 1))}.bg-red-400/0{background-color:#f8717100}.bg-red-400/10{background-color:#f871711a}.bg-red-400/100{background-color:#f87171}.bg-red-400/15{background-color:#f8717126}.bg-red-400/20{background-color:#f8717133}.bg-red-400/25{background-color:#f8717140}.bg-red-400/30{background-color:#f871714d}.bg-red-400/35{background-color:#f8717159}.bg-red-400/40{background-color:#f8717166}.bg-red-400/45{background-color:#f8717173}.bg-red-400/5{background-color:#f871710d}.bg-red-400/50{background-color:#f8717180}.bg-red-400/55{background-color:#f871718c}.bg-red-400/60{background-color:#f8717199}.bg-red-400/65{background-color:#f87171a6}.bg-red-400/70{background-color:#f87171b3}.bg-red-400/75{background-color:#f87171bf}.bg-red-400/80{background-color:#f87171cc}.bg-red-400/85{background-color:#f87171d9}.bg-red-400/90{background-color:#f87171e6}.bg-red-400/95{background-color:#f87171f2}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-red-50/0{background-color:#fef2f200}.bg-red-50/10{background-color:#fef2f21a}.bg-red-50/100{background-color:#fef2f2}.bg-red-50/15{background-color:#fef2f226}.bg-red-50/20{background-color:#fef2f233}.bg-red-50/25{background-color:#fef2f240}.bg-red-50/30{background-color:#fef2f24d}.bg-red-50/35{background-color:#fef2f259}.bg-red-50/40{background-color:#fef2f266}.bg-red-50/45{background-color:#fef2f273}.bg-red-50/5{background-color:#fef2f20d}.bg-red-50/50{background-color:#fef2f280}.bg-red-50/55{background-color:#fef2f28c}.bg-red-50/60{background-color:#fef2f299}.bg-red-50/65{background-color:#fef2f2a6}.bg-red-50/70{background-color:#fef2f2b3}.bg-red-50/75{background-color:#fef2f2bf}.bg-red-50/80{background-color:#fef2f2cc}.bg-red-50/85{background-color:#fef2f2d9}.bg-red-50/90{background-color:#fef2f2e6}.bg-red-50/95{background-color:#fef2f2f2}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.bg-red-500/0{background-color:#ef444400}.bg-red-500/10{background-color:#ef44441a}.bg-red-500/100{background-color:#ef4444}.bg-red-500/15{background-color:#ef444426}.bg-red-500/20{background-color:#ef444433}.bg-red-500/25{background-color:#ef444440}.bg-red-500/30{background-color:#ef44444d}.bg-red-500/35{background-color:#ef444459}.bg-red-500/40{background-color:#ef444466}.bg-red-500/45{background-color:#ef444473}.bg-red-500/5{background-color:#ef44440d}.bg-red-500/50{background-color:#ef444480}.bg-red-500/55{background-color:#ef44448c}.bg-red-500/60{background-color:#ef444499}.bg-red-500/65{background-color:#ef4444a6}.bg-red-500/70{background-color:#ef4444b3}.bg-red-500/75{background-color:#ef4444bf}.bg-red-500/80{background-color:#ef4444cc}.bg-red-500/85{background-color:#ef4444d9}.bg-red-500/90{background-color:#ef4444e6}.bg-red-500/95{background-color:#ef4444f2}.bg-red-600{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.bg-red-600/0{background-color:#dc262600}.bg-red-600/10{background-color:#dc26261a}.bg-red-600/100{background-color:#dc2626}.bg-red-600/15{background-color:#dc262626}.bg-red-600/20{background-color:#dc262633}.bg-red-600/25{background-color:#dc262640}.bg-red-600/30{background-color:#dc26264d}.bg-red-600/35{background-color:#dc262659}.bg-red-600/40{background-color:#dc262666}.bg-red-600/45{background-color:#dc262673}.bg-red-600/5{background-color:#dc26260d}.bg-red-600/50{background-color:#dc262680}.bg-red-600/55{background-color:#dc26268c}.bg-red-600/60{background-color:#dc262699}.bg-red-600/65{background-color:#dc2626a6}.bg-red-600/70{background-color:#dc2626b3}.bg-red-600/75{background-color:#dc2626bf}.bg-red-600/80{background-color:#dc2626cc}.bg-red-600/85{background-color:#dc2626d9}.bg-red-600/90{background-color:#dc2626e6}.bg-red-600/95{background-color:#dc2626f2}.bg-red-700{--tw-bg-opacity: 1;background-color:rgb(185 28 28 / var(--tw-bg-opacity, 1))}.bg-red-700/0{background-color:#b91c1c00}.bg-red-700/10{background-color:#b91c1c1a}.bg-red-700/100{background-color:#b91c1c}.bg-red-700/15{background-color:#b91c1c26}.bg-red-700/20{background-color:#b91c1c33}.bg-red-700/25{background-color:#b91c1c40}.bg-red-700/30{background-color:#b91c1c4d}.bg-red-700/35{background-color:#b91c1c59}.bg-red-700/40{background-color:#b91c1c66}.bg-red-700/45{background-color:#b91c1c73}.bg-red-700/5{background-color:#b91c1c0d}.bg-red-700/50{background-color:#b91c1c80}.bg-red-700/55{background-color:#b91c1c8c}.bg-red-700/60{background-color:#b91c1c99}.bg-red-700/65{background-color:#b91c1ca6}.bg-red-700/70{background-color:#b91c1cb3}.bg-red-700/75{background-color:#b91c1cbf}.bg-red-700/80{background-color:#b91c1ccc}.bg-red-700/85{background-color:#b91c1cd9}.bg-red-700/90{background-color:#b91c1ce6}.bg-red-700/95{background-color:#b91c1cf2}.bg-red-800{--tw-bg-opacity: 1;background-color:rgb(153 27 27 / var(--tw-bg-opacity, 1))}.bg-red-800/0{background-color:#991b1b00}.bg-red-800/10{background-color:#991b1b1a}.bg-red-800/100{background-color:#991b1b}.bg-red-800/15{background-color:#991b1b26}.bg-red-800/20{background-color:#991b1b33}.bg-red-800/25{background-color:#991b1b40}.bg-red-800/30{background-color:#991b1b4d}.bg-red-800/35{background-color:#991b1b59}.bg-red-800/40{background-color:#991b1b66}.bg-red-800/45{background-color:#991b1b73}.bg-red-800/5{background-color:#991b1b0d}.bg-red-800/50{background-color:#991b1b80}.bg-red-800/55{background-color:#991b1b8c}.bg-red-800/60{background-color:#991b1b99}.bg-red-800/65{background-color:#991b1ba6}.bg-red-800/70{background-color:#991b1bb3}.bg-red-800/75{background-color:#991b1bbf}.bg-red-800/80{background-color:#991b1bcc}.bg-red-800/85{background-color:#991b1bd9}.bg-red-800/90{background-color:#991b1be6}.bg-red-800/95{background-color:#991b1bf2}.bg-red-900{--tw-bg-opacity: 1;background-color:rgb(127 29 29 / var(--tw-bg-opacity, 1))}.bg-red-900/0{background-color:#7f1d1d00}.bg-red-900/10{background-color:#7f1d1d1a}.bg-red-900/100{background-color:#7f1d1d}.bg-red-900/15{background-color:#7f1d1d26}.bg-red-900/20{background-color:#7f1d1d33}.bg-red-900/25{background-color:#7f1d1d40}.bg-red-900/30{background-color:#7f1d1d4d}.bg-red-900/35{background-color:#7f1d1d59}.bg-red-900/40{background-color:#7f1d1d66}.bg-red-900/45{background-color:#7f1d1d73}.bg-red-900/5{background-color:#7f1d1d0d}.bg-red-900/50{background-color:#7f1d1d80}.bg-red-900/55{background-color:#7f1d1d8c}.bg-red-900/60{background-color:#7f1d1d99}.bg-red-900/65{background-color:#7f1d1da6}.bg-red-900/70{background-color:#7f1d1db3}.bg-red-900/75{background-color:#7f1d1dbf}.bg-red-900/80{background-color:#7f1d1dcc}.bg-red-900/85{background-color:#7f1d1dd9}.bg-red-900/90{background-color:#7f1d1de6}.bg-red-900/95{background-color:#7f1d1df2}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.stroke-2{stroke-width:2}.p-0{padding:0}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-0{padding-bottom:0}.pb-2{padding-bottom:.5rem}.pl-7{padding-left:1.75rem}.pl-8{padding-left:2rem}.pr-2{padding-right:.5rem}.pr-8{padding-right:2rem}.pt-0{padding-top:0}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-sans{font-family:Geist,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-[11px]{font-size:11px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.text-blue-100{--tw-text-opacity: 1;color:rgb(219 234 254 / var(--tw-text-opacity, 1))}.text-blue-100/0{color:#dbeafe00}.text-blue-100/10{color:#dbeafe1a}.text-blue-100/100{color:#dbeafe}.text-blue-100/15{color:#dbeafe26}.text-blue-100/20{color:#dbeafe33}.text-blue-100/25{color:#dbeafe40}.text-blue-100/30{color:#dbeafe4d}.text-blue-100/35{color:#dbeafe59}.text-blue-100/40{color:#dbeafe66}.text-blue-100/45{color:#dbeafe73}.text-blue-100/5{color:#dbeafe0d}.text-blue-100/50{color:#dbeafe80}.text-blue-100/55{color:#dbeafe8c}.text-blue-100/60{color:#dbeafe99}.text-blue-100/65{color:#dbeafea6}.text-blue-100/70{color:#dbeafeb3}.text-blue-100/75{color:#dbeafebf}.text-blue-100/80{color:#dbeafecc}.text-blue-100/85{color:#dbeafed9}.text-blue-100/90{color:#dbeafee6}.text-blue-100/95{color:#dbeafef2}.text-blue-200{--tw-text-opacity: 1;color:rgb(191 219 254 / var(--tw-text-opacity, 1))}.text-blue-200/0{color:#bfdbfe00}.text-blue-200/10{color:#bfdbfe1a}.text-blue-200/100{color:#bfdbfe}.text-blue-200/15{color:#bfdbfe26}.text-blue-200/20{color:#bfdbfe33}.text-blue-200/25{color:#bfdbfe40}.text-blue-200/30{color:#bfdbfe4d}.text-blue-200/35{color:#bfdbfe59}.text-blue-200/40{color:#bfdbfe66}.text-blue-200/45{color:#bfdbfe73}.text-blue-200/5{color:#bfdbfe0d}.text-blue-200/50{color:#bfdbfe80}.text-blue-200/55{color:#bfdbfe8c}.text-blue-200/60{color:#bfdbfe99}.text-blue-200/65{color:#bfdbfea6}.text-blue-200/70{color:#bfdbfeb3}.text-blue-200/75{color:#bfdbfebf}.text-blue-200/80{color:#bfdbfecc}.text-blue-200/85{color:#bfdbfed9}.text-blue-200/90{color:#bfdbfee6}.text-blue-200/95{color:#bfdbfef2}.text-blue-300{--tw-text-opacity: 1;color:rgb(147 197 253 / var(--tw-text-opacity, 1))}.text-blue-300/0{color:#93c5fd00}.text-blue-300/10{color:#93c5fd1a}.text-blue-300/100{color:#93c5fd}.text-blue-300/15{color:#93c5fd26}.text-blue-300/20{color:#93c5fd33}.text-blue-300/25{color:#93c5fd40}.text-blue-300/30{color:#93c5fd4d}.text-blue-300/35{color:#93c5fd59}.text-blue-300/40{color:#93c5fd66}.text-blue-300/45{color:#93c5fd73}.text-blue-300/5{color:#93c5fd0d}.text-blue-300/50{color:#93c5fd80}.text-blue-300/55{color:#93c5fd8c}.text-blue-300/60{color:#93c5fd99}.text-blue-300/65{color:#93c5fda6}.text-blue-300/70{color:#93c5fdb3}.text-blue-300/75{color:#93c5fdbf}.text-blue-300/80{color:#93c5fdcc}.text-blue-300/85{color:#93c5fdd9}.text-blue-300/90{color:#93c5fde6}.text-blue-300/95{color:#93c5fdf2}.text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.text-blue-400/0{color:#60a5fa00}.text-blue-400/10{color:#60a5fa1a}.text-blue-400/100{color:#60a5fa}.text-blue-400/15{color:#60a5fa26}.text-blue-400/20{color:#60a5fa33}.text-blue-400/25{color:#60a5fa40}.text-blue-400/30{color:#60a5fa4d}.text-blue-400/35{color:#60a5fa59}.text-blue-400/40{color:#60a5fa66}.text-blue-400/45{color:#60a5fa73}.text-blue-400/5{color:#60a5fa0d}.text-blue-400/50{color:#60a5fa80}.text-blue-400/55{color:#60a5fa8c}.text-blue-400/60{color:#60a5fa99}.text-blue-400/65{color:#60a5faa6}.text-blue-400/70{color:#60a5fab3}.text-blue-400/75{color:#60a5fabf}.text-blue-400/80{color:#60a5facc}.text-blue-400/85{color:#60a5fad9}.text-blue-400/90{color:#60a5fae6}.text-blue-400/95{color:#60a5faf2}.text-blue-50{--tw-text-opacity: 1;color:rgb(239 246 255 / var(--tw-text-opacity, 1))}.text-blue-50/0{color:#eff6ff00}.text-blue-50/10{color:#eff6ff1a}.text-blue-50/100{color:#eff6ff}.text-blue-50/15{color:#eff6ff26}.text-blue-50/20{color:#eff6ff33}.text-blue-50/25{color:#eff6ff40}.text-blue-50/30{color:#eff6ff4d}.text-blue-50/35{color:#eff6ff59}.text-blue-50/40{color:#eff6ff66}.text-blue-50/45{color:#eff6ff73}.text-blue-50/5{color:#eff6ff0d}.text-blue-50/50{color:#eff6ff80}.text-blue-50/55{color:#eff6ff8c}.text-blue-50/60{color:#eff6ff99}.text-blue-50/65{color:#eff6ffa6}.text-blue-50/70{color:#eff6ffb3}.text-blue-50/75{color:#eff6ffbf}.text-blue-50/80{color:#eff6ffcc}.text-blue-50/85{color:#eff6ffd9}.text-blue-50/90{color:#eff6ffe6}.text-blue-50/95{color:#eff6fff2}.text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.text-blue-500/0{color:#3b82f600}.text-blue-500/10{color:#3b82f61a}.text-blue-500/100{color:#3b82f6}.text-blue-500/15{color:#3b82f626}.text-blue-500/20{color:#3b82f633}.text-blue-500/25{color:#3b82f640}.text-blue-500/30{color:#3b82f64d}.text-blue-500/35{color:#3b82f659}.text-blue-500/40{color:#3b82f666}.text-blue-500/45{color:#3b82f673}.text-blue-500/5{color:#3b82f60d}.text-blue-500/50{color:#3b82f680}.text-blue-500/55{color:#3b82f68c}.text-blue-500/60{color:#3b82f699}.text-blue-500/65{color:#3b82f6a6}.text-blue-500/70{color:#3b82f6b3}.text-blue-500/75{color:#3b82f6bf}.text-blue-500/80{color:#3b82f6cc}.text-blue-500/85{color:#3b82f6d9}.text-blue-500/90{color:#3b82f6e6}.text-blue-500/95{color:#3b82f6f2}.text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-blue-600/0{color:#2563eb00}.text-blue-600/10{color:#2563eb1a}.text-blue-600/100{color:#2563eb}.text-blue-600/15{color:#2563eb26}.text-blue-600/20{color:#2563eb33}.text-blue-600/25{color:#2563eb40}.text-blue-600/30{color:#2563eb4d}.text-blue-600/35{color:#2563eb59}.text-blue-600/40{color:#2563eb66}.text-blue-600/45{color:#2563eb73}.text-blue-600/5{color:#2563eb0d}.text-blue-600/50{color:#2563eb80}.text-blue-600/55{color:#2563eb8c}.text-blue-600/60{color:#2563eb99}.text-blue-600/65{color:#2563eba6}.text-blue-600/70{color:#2563ebb3}.text-blue-600/75{color:#2563ebbf}.text-blue-600/80{color:#2563ebcc}.text-blue-600/85{color:#2563ebd9}.text-blue-600/90{color:#2563ebe6}.text-blue-600/95{color:#2563ebf2}.text-blue-700{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.text-blue-700/0{color:#1d4ed800}.text-blue-700/10{color:#1d4ed81a}.text-blue-700/100{color:#1d4ed8}.text-blue-700/15{color:#1d4ed826}.text-blue-700/20{color:#1d4ed833}.text-blue-700/25{color:#1d4ed840}.text-blue-700/30{color:#1d4ed84d}.text-blue-700/35{color:#1d4ed859}.text-blue-700/40{color:#1d4ed866}.text-blue-700/45{color:#1d4ed873}.text-blue-700/5{color:#1d4ed80d}.text-blue-700/50{color:#1d4ed880}.text-blue-700/55{color:#1d4ed88c}.text-blue-700/60{color:#1d4ed899}.text-blue-700/65{color:#1d4ed8a6}.text-blue-700/70{color:#1d4ed8b3}.text-blue-700/75{color:#1d4ed8bf}.text-blue-700/80{color:#1d4ed8cc}.text-blue-700/85{color:#1d4ed8d9}.text-blue-700/90{color:#1d4ed8e6}.text-blue-700/95{color:#1d4ed8f2}.text-blue-800{--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity, 1))}.text-blue-800/0{color:#1e40af00}.text-blue-800/10{color:#1e40af1a}.text-blue-800/100{color:#1e40af}.text-blue-800/15{color:#1e40af26}.text-blue-800/20{color:#1e40af33}.text-blue-800/25{color:#1e40af40}.text-blue-800/30{color:#1e40af4d}.text-blue-800/35{color:#1e40af59}.text-blue-800/40{color:#1e40af66}.text-blue-800/45{color:#1e40af73}.text-blue-800/5{color:#1e40af0d}.text-blue-800/50{color:#1e40af80}.text-blue-800/55{color:#1e40af8c}.text-blue-800/60{color:#1e40af99}.text-blue-800/65{color:#1e40afa6}.text-blue-800/70{color:#1e40afb3}.text-blue-800/75{color:#1e40afbf}.text-blue-800/80{color:#1e40afcc}.text-blue-800/85{color:#1e40afd9}.text-blue-800/90{color:#1e40afe6}.text-blue-800/95{color:#1e40aff2}.text-blue-900{--tw-text-opacity: 1;color:rgb(30 58 138 / var(--tw-text-opacity, 1))}.text-blue-900/0{color:#1e3a8a00}.text-blue-900/10{color:#1e3a8a1a}.text-blue-900/100{color:#1e3a8a}.text-blue-900/15{color:#1e3a8a26}.text-blue-900/20{color:#1e3a8a33}.text-blue-900/25{color:#1e3a8a40}.text-blue-900/30{color:#1e3a8a4d}.text-blue-900/35{color:#1e3a8a59}.text-blue-900/40{color:#1e3a8a66}.text-blue-900/45{color:#1e3a8a73}.text-blue-900/5{color:#1e3a8a0d}.text-blue-900/50{color:#1e3a8a80}.text-blue-900/55{color:#1e3a8a8c}.text-blue-900/60{color:#1e3a8a99}.text-blue-900/65{color:#1e3a8aa6}.text-blue-900/70{color:#1e3a8ab3}.text-blue-900/75{color:#1e3a8abf}.text-blue-900/80{color:#1e3a8acc}.text-blue-900/85{color:#1e3a8ad9}.text-blue-900/90{color:#1e3a8ae6}.text-blue-900/95{color:#1e3a8af2}.text-card-foreground{color:hsl(var(--card-foreground))}.text-current{color:currentColor}.text-destructive{color:hsl(var(--destructive))}.text-destructive-foreground{color:hsl(var(--destructive-foreground))}.text-foreground{color:hsl(var(--foreground))}.text-foreground/50{color:hsl(var(--foreground) / .5)}.text-gray-100{--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity, 1))}.text-gray-100/0{color:#f3f4f600}.text-gray-100/10{color:#f3f4f61a}.text-gray-100/100{color:#f3f4f6}.text-gray-100/15{color:#f3f4f626}.text-gray-100/20{color:#f3f4f633}.text-gray-100/25{color:#f3f4f640}.text-gray-100/30{color:#f3f4f64d}.text-gray-100/35{color:#f3f4f659}.text-gray-100/40{color:#f3f4f666}.text-gray-100/45{color:#f3f4f673}.text-gray-100/5{color:#f3f4f60d}.text-gray-100/50{color:#f3f4f680}.text-gray-100/55{color:#f3f4f68c}.text-gray-100/60{color:#f3f4f699}.text-gray-100/65{color:#f3f4f6a6}.text-gray-100/70{color:#f3f4f6b3}.text-gray-100/75{color:#f3f4f6bf}.text-gray-100/80{color:#f3f4f6cc}.text-gray-100/85{color:#f3f4f6d9}.text-gray-100/90{color:#f3f4f6e6}.text-gray-100/95{color:#f3f4f6f2}.text-gray-200{--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.text-gray-200/0{color:#e5e7eb00}.text-gray-200/10{color:#e5e7eb1a}.text-gray-200/100{color:#e5e7eb}.text-gray-200/15{color:#e5e7eb26}.text-gray-200/20{color:#e5e7eb33}.text-gray-200/25{color:#e5e7eb40}.text-gray-200/30{color:#e5e7eb4d}.text-gray-200/35{color:#e5e7eb59}.text-gray-200/40{color:#e5e7eb66}.text-gray-200/45{color:#e5e7eb73}.text-gray-200/5{color:#e5e7eb0d}.text-gray-200/50{color:#e5e7eb80}.text-gray-200/55{color:#e5e7eb8c}.text-gray-200/60{color:#e5e7eb99}.text-gray-200/65{color:#e5e7eba6}.text-gray-200/70{color:#e5e7ebb3}.text-gray-200/75{color:#e5e7ebbf}.text-gray-200/80{color:#e5e7ebcc}.text-gray-200/85{color:#e5e7ebd9}.text-gray-200/90{color:#e5e7ebe6}.text-gray-200/95{color:#e5e7ebf2}.text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.text-gray-300/0{color:#d1d5db00}.text-gray-300/10{color:#d1d5db1a}.text-gray-300/100{color:#d1d5db}.text-gray-300/15{color:#d1d5db26}.text-gray-300/20{color:#d1d5db33}.text-gray-300/25{color:#d1d5db40}.text-gray-300/30{color:#d1d5db4d}.text-gray-300/35{color:#d1d5db59}.text-gray-300/40{color:#d1d5db66}.text-gray-300/45{color:#d1d5db73}.text-gray-300/5{color:#d1d5db0d}.text-gray-300/50{color:#d1d5db80}.text-gray-300/55{color:#d1d5db8c}.text-gray-300/60{color:#d1d5db99}.text-gray-300/65{color:#d1d5dba6}.text-gray-300/70{color:#d1d5dbb3}.text-gray-300/75{color:#d1d5dbbf}.text-gray-300/80{color:#d1d5dbcc}.text-gray-300/85{color:#d1d5dbd9}.text-gray-300/90{color:#d1d5dbe6}.text-gray-300/95{color:#d1d5dbf2}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-400/0{color:#9ca3af00}.text-gray-400/10{color:#9ca3af1a}.text-gray-400/100{color:#9ca3af}.text-gray-400/15{color:#9ca3af26}.text-gray-400/20{color:#9ca3af33}.text-gray-400/25{color:#9ca3af40}.text-gray-400/30{color:#9ca3af4d}.text-gray-400/35{color:#9ca3af59}.text-gray-400/40{color:#9ca3af66}.text-gray-400/45{color:#9ca3af73}.text-gray-400/5{color:#9ca3af0d}.text-gray-400/50{color:#9ca3af80}.text-gray-400/55{color:#9ca3af8c}.text-gray-400/60{color:#9ca3af99}.text-gray-400/65{color:#9ca3afa6}.text-gray-400/70{color:#9ca3afb3}.text-gray-400/75{color:#9ca3afbf}.text-gray-400/80{color:#9ca3afcc}.text-gray-400/85{color:#9ca3afd9}.text-gray-400/90{color:#9ca3afe6}.text-gray-400/95{color:#9ca3aff2}.text-gray-50{--tw-text-opacity: 1;color:rgb(249 250 251 / var(--tw-text-opacity, 1))}.text-gray-50/0{color:#f9fafb00}.text-gray-50/10{color:#f9fafb1a}.text-gray-50/100{color:#f9fafb}.text-gray-50/15{color:#f9fafb26}.text-gray-50/20{color:#f9fafb33}.text-gray-50/25{color:#f9fafb40}.text-gray-50/30{color:#f9fafb4d}.text-gray-50/35{color:#f9fafb59}.text-gray-50/40{color:#f9fafb66}.text-gray-50/45{color:#f9fafb73}.text-gray-50/5{color:#f9fafb0d}.text-gray-50/50{color:#f9fafb80}.text-gray-50/55{color:#f9fafb8c}.text-gray-50/60{color:#f9fafb99}.text-gray-50/65{color:#f9fafba6}.text-gray-50/70{color:#f9fafbb3}.text-gray-50/75{color:#f9fafbbf}.text-gray-50/80{color:#f9fafbcc}.text-gray-50/85{color:#f9fafbd9}.text-gray-50/90{color:#f9fafbe6}.text-gray-50/95{color:#f9fafbf2}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-500/0{color:#6b728000}.text-gray-500/10{color:#6b72801a}.text-gray-500/100{color:#6b7280}.text-gray-500/15{color:#6b728026}.text-gray-500/20{color:#6b728033}.text-gray-500/25{color:#6b728040}.text-gray-500/30{color:#6b72804d}.text-gray-500/35{color:#6b728059}.text-gray-500/40{color:#6b728066}.text-gray-500/45{color:#6b728073}.text-gray-500/5{color:#6b72800d}.text-gray-500/50{color:#6b728080}.text-gray-500/55{color:#6b72808c}.text-gray-500/60{color:#6b728099}.text-gray-500/65{color:#6b7280a6}.text-gray-500/70{color:#6b7280b3}.text-gray-500/75{color:#6b7280bf}.text-gray-500/80{color:#6b7280cc}.text-gray-500/85{color:#6b7280d9}.text-gray-500/90{color:#6b7280e6}.text-gray-500/95{color:#6b7280f2}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.text-gray-600/0{color:#4b556300}.text-gray-600/10{color:#4b55631a}.text-gray-600/100{color:#4b5563}.text-gray-600/15{color:#4b556326}.text-gray-600/20{color:#4b556333}.text-gray-600/25{color:#4b556340}.text-gray-600/30{color:#4b55634d}.text-gray-600/35{color:#4b556359}.text-gray-600/40{color:#4b556366}.text-gray-600/45{color:#4b556373}.text-gray-600/5{color:#4b55630d}.text-gray-600/50{color:#4b556380}.text-gray-600/55{color:#4b55638c}.text-gray-600/60{color:#4b556399}.text-gray-600/65{color:#4b5563a6}.text-gray-600/70{color:#4b5563b3}.text-gray-600/75{color:#4b5563bf}.text-gray-600/80{color:#4b5563cc}.text-gray-600/85{color:#4b5563d9}.text-gray-600/90{color:#4b5563e6}.text-gray-600/95{color:#4b5563f2}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.text-gray-700/0{color:#37415100}.text-gray-700/10{color:#3741511a}.text-gray-700/100{color:#374151}.text-gray-700/15{color:#37415126}.text-gray-700/20{color:#37415133}.text-gray-700/25{color:#37415140}.text-gray-700/30{color:#3741514d}.text-gray-700/35{color:#37415159}.text-gray-700/40{color:#37415166}.text-gray-700/45{color:#37415173}.text-gray-700/5{color:#3741510d}.text-gray-700/50{color:#37415180}.text-gray-700/55{color:#3741518c}.text-gray-700/60{color:#37415199}.text-gray-700/65{color:#374151a6}.text-gray-700/70{color:#374151b3}.text-gray-700/75{color:#374151bf}.text-gray-700/80{color:#374151cc}.text-gray-700/85{color:#374151d9}.text-gray-700/90{color:#374151e6}.text-gray-700/95{color:#374151f2}.text-gray-800{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.text-gray-800/0{color:#1f293700}.text-gray-800/10{color:#1f29371a}.text-gray-800/100{color:#1f2937}.text-gray-800/15{color:#1f293726}.text-gray-800/20{color:#1f293733}.text-gray-800/25{color:#1f293740}.text-gray-800/30{color:#1f29374d}.text-gray-800/35{color:#1f293759}.text-gray-800/40{color:#1f293766}.text-gray-800/45{color:#1f293773}.text-gray-800/5{color:#1f29370d}.text-gray-800/50{color:#1f293780}.text-gray-800/55{color:#1f29378c}.text-gray-800/60{color:#1f293799}.text-gray-800/65{color:#1f2937a6}.text-gray-800/70{color:#1f2937b3}.text-gray-800/75{color:#1f2937bf}.text-gray-800/80{color:#1f2937cc}.text-gray-800/85{color:#1f2937d9}.text-gray-800/90{color:#1f2937e6}.text-gray-800/95{color:#1f2937f2}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.text-gray-900/0{color:#11182700}.text-gray-900/10{color:#1118271a}.text-gray-900/100{color:#111827}.text-gray-900/15{color:#11182726}.text-gray-900/20{color:#11182733}.text-gray-900/25{color:#11182740}.text-gray-900/30{color:#1118274d}.text-gray-900/35{color:#11182759}.text-gray-900/40{color:#11182766}.text-gray-900/45{color:#11182773}.text-gray-900/5{color:#1118270d}.text-gray-900/50{color:#11182780}.text-gray-900/55{color:#1118278c}.text-gray-900/60{color:#11182799}.text-gray-900/65{color:#111827a6}.text-gray-900/70{color:#111827b3}.text-gray-900/75{color:#111827bf}.text-gray-900/80{color:#111827cc}.text-gray-900/85{color:#111827d9}.text-gray-900/90{color:#111827e6}.text-gray-900/95{color:#111827f2}.text-green-100{--tw-text-opacity: 1;color:rgb(220 252 231 / var(--tw-text-opacity, 1))}.text-green-100/0{color:#dcfce700}.text-green-100/10{color:#dcfce71a}.text-green-100/100{color:#dcfce7}.text-green-100/15{color:#dcfce726}.text-green-100/20{color:#dcfce733}.text-green-100/25{color:#dcfce740}.text-green-100/30{color:#dcfce74d}.text-green-100/35{color:#dcfce759}.text-green-100/40{color:#dcfce766}.text-green-100/45{color:#dcfce773}.text-green-100/5{color:#dcfce70d}.text-green-100/50{color:#dcfce780}.text-green-100/55{color:#dcfce78c}.text-green-100/60{color:#dcfce799}.text-green-100/65{color:#dcfce7a6}.text-green-100/70{color:#dcfce7b3}.text-green-100/75{color:#dcfce7bf}.text-green-100/80{color:#dcfce7cc}.text-green-100/85{color:#dcfce7d9}.text-green-100/90{color:#dcfce7e6}.text-green-100/95{color:#dcfce7f2}.text-green-200{--tw-text-opacity: 1;color:rgb(187 247 208 / var(--tw-text-opacity, 1))}.text-green-200/0{color:#bbf7d000}.text-green-200/10{color:#bbf7d01a}.text-green-200/100{color:#bbf7d0}.text-green-200/15{color:#bbf7d026}.text-green-200/20{color:#bbf7d033}.text-green-200/25{color:#bbf7d040}.text-green-200/30{color:#bbf7d04d}.text-green-200/35{color:#bbf7d059}.text-green-200/40{color:#bbf7d066}.text-green-200/45{color:#bbf7d073}.text-green-200/5{color:#bbf7d00d}.text-green-200/50{color:#bbf7d080}.text-green-200/55{color:#bbf7d08c}.text-green-200/60{color:#bbf7d099}.text-green-200/65{color:#bbf7d0a6}.text-green-200/70{color:#bbf7d0b3}.text-green-200/75{color:#bbf7d0bf}.text-green-200/80{color:#bbf7d0cc}.text-green-200/85{color:#bbf7d0d9}.text-green-200/90{color:#bbf7d0e6}.text-green-200/95{color:#bbf7d0f2}.text-green-300{--tw-text-opacity: 1;color:rgb(134 239 172 / var(--tw-text-opacity, 1))}.text-green-300/0{color:#86efac00}.text-green-300/10{color:#86efac1a}.text-green-300/100{color:#86efac}.text-green-300/15{color:#86efac26}.text-green-300/20{color:#86efac33}.text-green-300/25{color:#86efac40}.text-green-300/30{color:#86efac4d}.text-green-300/35{color:#86efac59}.text-green-300/40{color:#86efac66}.text-green-300/45{color:#86efac73}.text-green-300/5{color:#86efac0d}.text-green-300/50{color:#86efac80}.text-green-300/55{color:#86efac8c}.text-green-300/60{color:#86efac99}.text-green-300/65{color:#86efaca6}.text-green-300/70{color:#86efacb3}.text-green-300/75{color:#86efacbf}.text-green-300/80{color:#86efaccc}.text-green-300/85{color:#86efacd9}.text-green-300/90{color:#86eface6}.text-green-300/95{color:#86efacf2}.text-green-400{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.text-green-400/0{color:#4ade8000}.text-green-400/10{color:#4ade801a}.text-green-400/100{color:#4ade80}.text-green-400/15{color:#4ade8026}.text-green-400/20{color:#4ade8033}.text-green-400/25{color:#4ade8040}.text-green-400/30{color:#4ade804d}.text-green-400/35{color:#4ade8059}.text-green-400/40{color:#4ade8066}.text-green-400/45{color:#4ade8073}.text-green-400/5{color:#4ade800d}.text-green-400/50{color:#4ade8080}.text-green-400/55{color:#4ade808c}.text-green-400/60{color:#4ade8099}.text-green-400/65{color:#4ade80a6}.text-green-400/70{color:#4ade80b3}.text-green-400/75{color:#4ade80bf}.text-green-400/80{color:#4ade80cc}.text-green-400/85{color:#4ade80d9}.text-green-400/90{color:#4ade80e6}.text-green-400/95{color:#4ade80f2}.text-green-50{--tw-text-opacity: 1;color:rgb(240 253 244 / var(--tw-text-opacity, 1))}.text-green-50/0{color:#f0fdf400}.text-green-50/10{color:#f0fdf41a}.text-green-50/100{color:#f0fdf4}.text-green-50/15{color:#f0fdf426}.text-green-50/20{color:#f0fdf433}.text-green-50/25{color:#f0fdf440}.text-green-50/30{color:#f0fdf44d}.text-green-50/35{color:#f0fdf459}.text-green-50/40{color:#f0fdf466}.text-green-50/45{color:#f0fdf473}.text-green-50/5{color:#f0fdf40d}.text-green-50/50{color:#f0fdf480}.text-green-50/55{color:#f0fdf48c}.text-green-50/60{color:#f0fdf499}.text-green-50/65{color:#f0fdf4a6}.text-green-50/70{color:#f0fdf4b3}.text-green-50/75{color:#f0fdf4bf}.text-green-50/80{color:#f0fdf4cc}.text-green-50/85{color:#f0fdf4d9}.text-green-50/90{color:#f0fdf4e6}.text-green-50/95{color:#f0fdf4f2}.text-green-500{--tw-text-opacity: 1;color:rgb(34 197 94 / var(--tw-text-opacity, 1))}.text-green-500/0{color:#22c55e00}.text-green-500/10{color:#22c55e1a}.text-green-500/100{color:#22c55e}.text-green-500/15{color:#22c55e26}.text-green-500/20{color:#22c55e33}.text-green-500/25{color:#22c55e40}.text-green-500/30{color:#22c55e4d}.text-green-500/35{color:#22c55e59}.text-green-500/40{color:#22c55e66}.text-green-500/45{color:#22c55e73}.text-green-500/5{color:#22c55e0d}.text-green-500/50{color:#22c55e80}.text-green-500/55{color:#22c55e8c}.text-green-500/60{color:#22c55e99}.text-green-500/65{color:#22c55ea6}.text-green-500/70{color:#22c55eb3}.text-green-500/75{color:#22c55ebf}.text-green-500/80{color:#22c55ecc}.text-green-500/85{color:#22c55ed9}.text-green-500/90{color:#22c55ee6}.text-green-500/95{color:#22c55ef2}.text-green-600{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.text-green-600/0{color:#16a34a00}.text-green-600/10{color:#16a34a1a}.text-green-600/100{color:#16a34a}.text-green-600/15{color:#16a34a26}.text-green-600/20{color:#16a34a33}.text-green-600/25{color:#16a34a40}.text-green-600/30{color:#16a34a4d}.text-green-600/35{color:#16a34a59}.text-green-600/40{color:#16a34a66}.text-green-600/45{color:#16a34a73}.text-green-600/5{color:#16a34a0d}.text-green-600/50{color:#16a34a80}.text-green-600/55{color:#16a34a8c}.text-green-600/60{color:#16a34a99}.text-green-600/65{color:#16a34aa6}.text-green-600/70{color:#16a34ab3}.text-green-600/75{color:#16a34abf}.text-green-600/80{color:#16a34acc}.text-green-600/85{color:#16a34ad9}.text-green-600/90{color:#16a34ae6}.text-green-600/95{color:#16a34af2}.text-green-700{--tw-text-opacity: 1;color:rgb(21 128 61 / var(--tw-text-opacity, 1))}.text-green-700/0{color:#15803d00}.text-green-700/10{color:#15803d1a}.text-green-700/100{color:#15803d}.text-green-700/15{color:#15803d26}.text-green-700/20{color:#15803d33}.text-green-700/25{color:#15803d40}.text-green-700/30{color:#15803d4d}.text-green-700/35{color:#15803d59}.text-green-700/40{color:#15803d66}.text-green-700/45{color:#15803d73}.text-green-700/5{color:#15803d0d}.text-green-700/50{color:#15803d80}.text-green-700/55{color:#15803d8c}.text-green-700/60{color:#15803d99}.text-green-700/65{color:#15803da6}.text-green-700/70{color:#15803db3}.text-green-700/75{color:#15803dbf}.text-green-700/80{color:#15803dcc}.text-green-700/85{color:#15803dd9}.text-green-700/90{color:#15803de6}.text-green-700/95{color:#15803df2}.text-green-800{--tw-text-opacity: 1;color:rgb(22 101 52 / var(--tw-text-opacity, 1))}.text-green-800/0{color:#16653400}.text-green-800/10{color:#1665341a}.text-green-800/100{color:#166534}.text-green-800/15{color:#16653426}.text-green-800/20{color:#16653433}.text-green-800/25{color:#16653440}.text-green-800/30{color:#1665344d}.text-green-800/35{color:#16653459}.text-green-800/40{color:#16653466}.text-green-800/45{color:#16653473}.text-green-800/5{color:#1665340d}.text-green-800/50{color:#16653480}.text-green-800/55{color:#1665348c}.text-green-800/60{color:#16653499}.text-green-800/65{color:#166534a6}.text-green-800/70{color:#166534b3}.text-green-800/75{color:#166534bf}.text-green-800/80{color:#166534cc}.text-green-800/85{color:#166534d9}.text-green-800/90{color:#166534e6}.text-green-800/95{color:#166534f2}.text-green-900{--tw-text-opacity: 1;color:rgb(20 83 45 / var(--tw-text-opacity, 1))}.text-green-900/0{color:#14532d00}.text-green-900/10{color:#14532d1a}.text-green-900/100{color:#14532d}.text-green-900/15{color:#14532d26}.text-green-900/20{color:#14532d33}.text-green-900/25{color:#14532d40}.text-green-900/30{color:#14532d4d}.text-green-900/35{color:#14532d59}.text-green-900/40{color:#14532d66}.text-green-900/45{color:#14532d73}.text-green-900/5{color:#14532d0d}.text-green-900/50{color:#14532d80}.text-green-900/55{color:#14532d8c}.text-green-900/60{color:#14532d99}.text-green-900/65{color:#14532da6}.text-green-900/70{color:#14532db3}.text-green-900/75{color:#14532dbf}.text-green-900/80{color:#14532dcc}.text-green-900/85{color:#14532dd9}.text-green-900/90{color:#14532de6}.text-green-900/95{color:#14532df2}.text-muted-foreground{color:hsl(var(--muted-foreground))}.text-popover-foreground{color:hsl(var(--popover-foreground))}.text-red-100{--tw-text-opacity: 1;color:rgb(254 226 226 / var(--tw-text-opacity, 1))}.text-red-100/0{color:#fee2e200}.text-red-100/10{color:#fee2e21a}.text-red-100/100{color:#fee2e2}.text-red-100/15{color:#fee2e226}.text-red-100/20{color:#fee2e233}.text-red-100/25{color:#fee2e240}.text-red-100/30{color:#fee2e24d}.text-red-100/35{color:#fee2e259}.text-red-100/40{color:#fee2e266}.text-red-100/45{color:#fee2e273}.text-red-100/5{color:#fee2e20d}.text-red-100/50{color:#fee2e280}.text-red-100/55{color:#fee2e28c}.text-red-100/60{color:#fee2e299}.text-red-100/65{color:#fee2e2a6}.text-red-100/70{color:#fee2e2b3}.text-red-100/75{color:#fee2e2bf}.text-red-100/80{color:#fee2e2cc}.text-red-100/85{color:#fee2e2d9}.text-red-100/90{color:#fee2e2e6}.text-red-100/95{color:#fee2e2f2}.text-red-200{--tw-text-opacity: 1;color:rgb(254 202 202 / var(--tw-text-opacity, 1))}.text-red-200/0{color:#fecaca00}.text-red-200/10{color:#fecaca1a}.text-red-200/100{color:#fecaca}.text-red-200/15{color:#fecaca26}.text-red-200/20{color:#fecaca33}.text-red-200/25{color:#fecaca40}.text-red-200/30{color:#fecaca4d}.text-red-200/35{color:#fecaca59}.text-red-200/40{color:#fecaca66}.text-red-200/45{color:#fecaca73}.text-red-200/5{color:#fecaca0d}.text-red-200/50{color:#fecaca80}.text-red-200/55{color:#fecaca8c}.text-red-200/60{color:#fecaca99}.text-red-200/65{color:#fecacaa6}.text-red-200/70{color:#fecacab3}.text-red-200/75{color:#fecacabf}.text-red-200/80{color:#fecacacc}.text-red-200/85{color:#fecacad9}.text-red-200/90{color:#fecacae6}.text-red-200/95{color:#fecacaf2}.text-red-300{--tw-text-opacity: 1;color:rgb(252 165 165 / var(--tw-text-opacity, 1))}.text-red-300/0{color:#fca5a500}.text-red-300/10{color:#fca5a51a}.text-red-300/100{color:#fca5a5}.text-red-300/15{color:#fca5a526}.text-red-300/20{color:#fca5a533}.text-red-300/25{color:#fca5a540}.text-red-300/30{color:#fca5a54d}.text-red-300/35{color:#fca5a559}.text-red-300/40{color:#fca5a566}.text-red-300/45{color:#fca5a573}.text-red-300/5{color:#fca5a50d}.text-red-300/50{color:#fca5a580}.text-red-300/55{color:#fca5a58c}.text-red-300/60{color:#fca5a599}.text-red-300/65{color:#fca5a5a6}.text-red-300/70{color:#fca5a5b3}.text-red-300/75{color:#fca5a5bf}.text-red-300/80{color:#fca5a5cc}.text-red-300/85{color:#fca5a5d9}.text-red-300/90{color:#fca5a5e6}.text-red-300/95{color:#fca5a5f2}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.text-red-400/0{color:#f8717100}.text-red-400/10{color:#f871711a}.text-red-400/100{color:#f87171}.text-red-400/15{color:#f8717126}.text-red-400/20{color:#f8717133}.text-red-400/25{color:#f8717140}.text-red-400/30{color:#f871714d}.text-red-400/35{color:#f8717159}.text-red-400/40{color:#f8717166}.text-red-400/45{color:#f8717173}.text-red-400/5{color:#f871710d}.text-red-400/50{color:#f8717180}.text-red-400/55{color:#f871718c}.text-red-400/60{color:#f8717199}.text-red-400/65{color:#f87171a6}.text-red-400/70{color:#f87171b3}.text-red-400/75{color:#f87171bf}.text-red-400/80{color:#f87171cc}.text-red-400/85{color:#f87171d9}.text-red-400/90{color:#f87171e6}.text-red-400/95{color:#f87171f2}.text-red-50{--tw-text-opacity: 1;color:rgb(254 242 242 / var(--tw-text-opacity, 1))}.text-red-50/0{color:#fef2f200}.text-red-50/10{color:#fef2f21a}.text-red-50/100{color:#fef2f2}.text-red-50/15{color:#fef2f226}.text-red-50/20{color:#fef2f233}.text-red-50/25{color:#fef2f240}.text-red-50/30{color:#fef2f24d}.text-red-50/35{color:#fef2f259}.text-red-50/40{color:#fef2f266}.text-red-50/45{color:#fef2f273}.text-red-50/5{color:#fef2f20d}.text-red-50/50{color:#fef2f280}.text-red-50/55{color:#fef2f28c}.text-red-50/60{color:#fef2f299}.text-red-50/65{color:#fef2f2a6}.text-red-50/70{color:#fef2f2b3}.text-red-50/75{color:#fef2f2bf}.text-red-50/80{color:#fef2f2cc}.text-red-50/85{color:#fef2f2d9}.text-red-50/90{color:#fef2f2e6}.text-red-50/95{color:#fef2f2f2}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.text-red-500/0{color:#ef444400}.text-red-500/10{color:#ef44441a}.text-red-500/100{color:#ef4444}.text-red-500/15{color:#ef444426}.text-red-500/20{color:#ef444433}.text-red-500/25{color:#ef444440}.text-red-500/30{color:#ef44444d}.text-red-500/35{color:#ef444459}.text-red-500/40{color:#ef444466}.text-red-500/45{color:#ef444473}.text-red-500/5{color:#ef44440d}.text-red-500/50{color:#ef444480}.text-red-500/55{color:#ef44448c}.text-red-500/60{color:#ef444499}.text-red-500/65{color:#ef4444a6}.text-red-500/70{color:#ef4444b3}.text-red-500/75{color:#ef4444bf}.text-red-500/80{color:#ef4444cc}.text-red-500/85{color:#ef4444d9}.text-red-500/90{color:#ef4444e6}.text-red-500/95{color:#ef4444f2}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-red-600/0{color:#dc262600}.text-red-600/10{color:#dc26261a}.text-red-600/100{color:#dc2626}.text-red-600/15{color:#dc262626}.text-red-600/20{color:#dc262633}.text-red-600/25{color:#dc262640}.text-red-600/30{color:#dc26264d}.text-red-600/35{color:#dc262659}.text-red-600/40{color:#dc262666}.text-red-600/45{color:#dc262673}.text-red-600/5{color:#dc26260d}.text-red-600/50{color:#dc262680}.text-red-600/55{color:#dc26268c}.text-red-600/60{color:#dc262699}.text-red-600/65{color:#dc2626a6}.text-red-600/70{color:#dc2626b3}.text-red-600/75{color:#dc2626bf}.text-red-600/80{color:#dc2626cc}.text-red-600/85{color:#dc2626d9}.text-red-600/90{color:#dc2626e6}.text-red-600/95{color:#dc2626f2}.text-red-700{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity, 1))}.text-red-700/0{color:#b91c1c00}.text-red-700/10{color:#b91c1c1a}.text-red-700/100{color:#b91c1c}.text-red-700/15{color:#b91c1c26}.text-red-700/20{color:#b91c1c33}.text-red-700/25{color:#b91c1c40}.text-red-700/30{color:#b91c1c4d}.text-red-700/35{color:#b91c1c59}.text-red-700/40{color:#b91c1c66}.text-red-700/45{color:#b91c1c73}.text-red-700/5{color:#b91c1c0d}.text-red-700/50{color:#b91c1c80}.text-red-700/55{color:#b91c1c8c}.text-red-700/60{color:#b91c1c99}.text-red-700/65{color:#b91c1ca6}.text-red-700/70{color:#b91c1cb3}.text-red-700/75{color:#b91c1cbf}.text-red-700/80{color:#b91c1ccc}.text-red-700/85{color:#b91c1cd9}.text-red-700/90{color:#b91c1ce6}.text-red-700/95{color:#b91c1cf2}.text-red-800{--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity, 1))}.text-red-800/0{color:#991b1b00}.text-red-800/10{color:#991b1b1a}.text-red-800/100{color:#991b1b}.text-red-800/15{color:#991b1b26}.text-red-800/20{color:#991b1b33}.text-red-800/25{color:#991b1b40}.text-red-800/30{color:#991b1b4d}.text-red-800/35{color:#991b1b59}.text-red-800/40{color:#991b1b66}.text-red-800/45{color:#991b1b73}.text-red-800/5{color:#991b1b0d}.text-red-800/50{color:#991b1b80}.text-red-800/55{color:#991b1b8c}.text-red-800/60{color:#991b1b99}.text-red-800/65{color:#991b1ba6}.text-red-800/70{color:#991b1bb3}.text-red-800/75{color:#991b1bbf}.text-red-800/80{color:#991b1bcc}.text-red-800/85{color:#991b1bd9}.text-red-800/90{color:#991b1be6}.text-red-800/95{color:#991b1bf2}.text-red-900{--tw-text-opacity: 1;color:rgb(127 29 29 / var(--tw-text-opacity, 1))}.text-red-900/0{color:#7f1d1d00}.text-red-900/10{color:#7f1d1d1a}.text-red-900/100{color:#7f1d1d}.text-red-900/15{color:#7f1d1d26}.text-red-900/20{color:#7f1d1d33}.text-red-900/25{color:#7f1d1d40}.text-red-900/30{color:#7f1d1d4d}.text-red-900/35{color:#7f1d1d59}.text-red-900/40{color:#7f1d1d66}.text-red-900/45{color:#7f1d1d73}.text-red-900/5{color:#7f1d1d0d}.text-red-900/50{color:#7f1d1d80}.text-red-900/55{color:#7f1d1d8c}.text-red-900/60{color:#7f1d1d99}.text-red-900/65{color:#7f1d1da6}.text-red-900/70{color:#7f1d1db3}.text-red-900/75{color:#7f1d1dbf}.text-red-900/80{color:#7f1d1dcc}.text-red-900/85{color:#7f1d1dd9}.text-red-900/90{color:#7f1d1de6}.text-red-900/95{color:#7f1d1df2}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.line-through{text-decoration-line:line-through}.underline-offset-4{text-underline-offset:4px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-25{opacity:.25}.opacity-30{opacity:.3}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.opacity-90{opacity:.9}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-none{--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring-0{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-ring{--tw-ring-color: hsl(var(--ring))}.ring-offset-background{--tw-ring-offset-color: hsl(var(--background))}.drop-shadow{--tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / .1)) drop-shadow(0 1px 1px rgb(0 0 0 / .06));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)}.grayscale{--tw-grayscale: grayscale(100%);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)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.animate-in{animation-duration:.3s;animation-fill-mode:both;animation-timing-function:cubic-bezier(.4,0,.2,1)}.fade-in-0{animation-name:fadeIn}.zoom-in-95{animation-name:zoomIn}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes zoomIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.app-container{max-width:1200px;margin:0 auto;padding:20px}@media (max-width: 768px){.app-container{padding:15px}}@media (max-width: 480px){.app-container{padding:10px}}.app-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:15px;border-bottom:1px solid #e0e0e0}@media (max-width: 768px){.app-header{flex-direction:column;align-items:flex-start;gap:10px}}.app-header h1{margin:0;color:#333}@media (max-width: 480px){.app-header h1{font-size:1.5rem}}.user-info{display:flex;align-items:center;gap:15px}@media (max-width: 480px){.user-info{gap:10px;flex-wrap:wrap}}.app-main{background-color:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a}@media (max-width: 768px){.app-main{padding:15px}}@media (max-width: 480px){.app-main{padding:10px;border-radius:6px}}.schema-selector{display:flex;align-items:center;gap:15px;margin-bottom:20px}@media (max-width: 768px){.schema-selector{flex-direction:column;align-items:flex-start;gap:10px}}.loading{text-align:center;padding:20px;color:#666}.error-message{background-color:#ffebee;color:#c62828;padding:10px 15px;border-radius:4px;margin-bottom:20px}@media (max-width: 480px){.error-message{padding:8px 12px;font-size:14px}}.import-job-status{margin-top:20px;padding:15px;background-color:#e8f5e9;border-radius:4px}@media (max-width: 480px){.import-job-status{padding:10px}}.login-container{max-width:400px;margin:100px auto;padding:30px;background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a}@media (max-width: 768px){.login-container{max-width:85%;margin:60px auto;padding:20px}}@media (max-width: 480px){.login-container{max-width:95%;margin:30px auto;padding:15px}}.login-container h2{margin-top:0;margin-bottom:20px;text-align:center;color:#333}@media (max-width: 480px){.login-container h2{font-size:1.5rem;margin-bottom:15px}}.form-group{margin-bottom:15px}.form-group label{display:block;margin-bottom:5px;font-weight:500}.form-group input{width:100%;padding:8px 12px;border-radius:4px;border:1px solid #ccc;box-sizing:border-box}.file:border-0::file-selector-button{border-width:0px}.file:bg-transparent::file-selector-button{background-color:transparent}.file:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file:font-medium::file-selector-button{font-weight:500}.placeholder:text-gray-500::-moz-placeholder{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.placeholder:text-gray-500::placeholder{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.placeholder:text-muted-foreground::-moz-placeholder{color:hsl(var(--muted-foreground))}.placeholder:text-muted-foreground::placeholder{color:hsl(var(--muted-foreground))}.before:absolute:before{content:var(--tw-content);position:absolute}.before:inset-0:before{content:var(--tw-content);inset:0}.before:-z-10:before{content:var(--tw-content);z-index:-10}.before:rounded-full:before{content:var(--tw-content);border-radius:9999px}.before:bg-green-500:before{content:var(--tw-content);--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.before:content-['']:before{--tw-content: "";content:var(--tw-content)}.hover:border-gray-400:hover{--tw-border-opacity: 1;border-color:rgb(156 163 175 / var(--tw-border-opacity, 1))}.hover:bg-blue-100:hover{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.hover:bg-blue-700:hover{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1))}.hover:bg-gray-100:hover{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.hover:bg-gray-200:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.hover:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.hover:bg-red-100:hover{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.hover:bg-red-700:hover{--tw-bg-opacity: 1;background-color:rgb(185 28 28 / var(--tw-bg-opacity, 1))}.hover:bg-secondary:hover{background-color:hsl(var(--secondary))}.hover:text-blue-700:hover{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.hover:text-blue-900:hover{--tw-text-opacity: 1;color:rgb(30 58 138 / var(--tw-text-opacity, 1))}.hover:text-foreground:hover{color:hsl(var(--foreground))}.hover:text-gray-900:hover{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.hover:underline:hover{text-decoration-line:underline}.hover:opacity-100:hover{opacity:1}.focus:border-blue-500:focus{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.focus:bg-blue-100:focus{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.focus:bg-white:focus{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.focus:text-blue-900:focus{--tw-text-opacity: 1;color:rgb(30 58 138 / var(--tw-text-opacity, 1))}.focus:opacity-100:focus{opacity:1}.focus:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus:ring-blue-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.focus:ring-ring:focus{--tw-ring-color: hsl(var(--ring))}.focus:ring-offset-2:focus{--tw-ring-offset-width: 2px}.focus-visible:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible:ring-blue-500:focus-visible{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.focus-visible:ring-gray-500:focus-visible{--tw-ring-opacity: 1;--tw-ring-color: rgb(107 114 128 / var(--tw-ring-opacity, 1))}.focus-visible:ring-red-500:focus-visible{--tw-ring-opacity: 1;--tw-ring-color: rgb(239 68 68 / var(--tw-ring-opacity, 1))}.focus-visible:ring-ring:focus-visible{--tw-ring-color: hsl(var(--ring))}.focus-visible:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.focus-visible:ring-offset-background:focus-visible{--tw-ring-offset-color: hsl(var(--background))}.disabled:pointer-events-none:disabled{pointer-events:none}.disabled:cursor-not-allowed:disabled{cursor:not-allowed}.disabled:bg-gray-50:disabled{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.disabled:opacity-50:disabled{opacity:.5}.group:hover .group-hover:opacity-100{opacity:1}.group.destructive .group-[.destructive]:border-muted/40{border-color:hsl(var(--muted) / .4)}.group.destructive .group-[.destructive]:text-red-300{--tw-text-opacity: 1;color:rgb(252 165 165 / var(--tw-text-opacity, 1))}.group.destructive .group-[.destructive]:hover:border-destructive/30:hover{border-color:hsl(var(--destructive) / .3)}.group.destructive .group-[.destructive]:hover:bg-destructive:hover{background-color:hsl(var(--destructive))}.group.destructive .group-[.destructive]:hover:text-destructive-foreground:hover{color:hsl(var(--destructive-foreground))}.group.destructive .group-[.destructive]:hover:text-red-50:hover{--tw-text-opacity: 1;color:rgb(254 242 242 / var(--tw-text-opacity, 1))}.group.destructive .group-[.destructive]:focus:ring-destructive:focus{--tw-ring-color: hsl(var(--destructive))}.group.destructive .group-[.destructive]:focus:ring-red-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(248 113 113 / var(--tw-ring-opacity, 1))}.group.destructive .group-[.destructive]:focus:ring-offset-red-600:focus{--tw-ring-offset-color: #dc2626}.data-[disabled]:pointer-events-none[data-disabled]{pointer-events:none}.data-[side=bottom]:translate-y-1[data-side=bottom]{--tw-translate-y: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-[side=left]:-translate-x-1[data-side=left]{--tw-translate-x: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-[side=right]:translate-x-1[data-side=right]{--tw-translate-x: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-[side=top]:-translate-y-1[data-side=top]{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-[state=checked]:translate-x-5[data-state=checked]{--tw-translate-x: 1.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-[state=unchecked]:translate-x-0[data-state=unchecked],.data-[swipe=cancel]:translate-x-0[data-swipe=cancel]{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-[swipe=end]:translate-x-[var(--radix-toast-swipe-end-x)][data-swipe=end]{--tw-translate-x: var(--radix-toast-swipe-end-x);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-[swipe=move]:translate-x-[var(--radix-toast-swipe-move-x)][data-swipe=move]{--tw-translate-x: var(--radix-toast-swipe-move-x);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-[disabled]:cursor-not-allowed[data-disabled]{cursor:not-allowed}.data-[state=checked]:bg-blue-50[data-state=checked]{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.data-[state=checked]:bg-primary[data-state=checked]{background-color:hsl(var(--primary))}.data-[state=open]:bg-accent[data-state=open]{background-color:hsl(var(--accent))}.data-[state=unchecked]:bg-input[data-state=unchecked]{background-color:hsl(var(--input))}.data-[state=checked]:font-medium[data-state=checked]{font-weight:500}.data-[state=checked]:text-blue-900[data-state=checked]{--tw-text-opacity: 1;color:rgb(30 58 138 / var(--tw-text-opacity, 1))}.data-[state=checked]:text-primary-foreground[data-state=checked]{color:hsl(var(--primary-foreground))}.data-[state=open]:text-muted-foreground[data-state=open]{color:hsl(var(--muted-foreground))}.data-[disabled]:opacity-40[data-disabled]{opacity:.4}.data-[swipe=move]:transition-none[data-swipe=move]{transition-property:none}.data-[state=open]:animate-in[data-state=open]{animation-duration:.3s;animation-fill-mode:both;animation-timing-function:cubic-bezier(.4,0,.2,1)}.data-[state=open]:fade-in-0[data-state=open]{animation-name:fadeIn}.data-[state=open]:zoom-in-95[data-state=open]{animation-name:zoomIn}.dark:border-destructive:is([data-theme=dark] *){border-color:hsl(var(--destructive))}.dark:border-gray-700:is([data-theme=dark] *){--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity, 1))}.dark:bg-gray-900:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity, 1))}.dark:text-gray-100:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity, 1))}@media (max-width: 480px){.max-[480px]:p-4{padding:1rem}}@media (min-width: 640px){.sm:bottom-0{bottom:0}.sm:right-0{right:0}.sm:top-auto{top:auto}.sm:flex-row{flex-direction:row}.sm:flex-col{flex-direction:column}.sm:justify-end{justify-content:flex-end}.sm:space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.sm:rounded-lg{border-radius:var(--radius)}.sm:px-4{padding-left:1rem;padding-right:1rem}.sm:py-6{padding-top:1.5rem;padding-bottom:1.5rem}.sm:text-left{text-align:left}}@media (min-width: 768px){.md:block{display:block}.md:max-w-[420px]{max-width:420px}}.[&>*]:min-w-[190px]>*{min-width:190px}.[&>*]:flex-1>*{flex:1 1 0%}.[&>span]:line-clamp-1>span{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.[&>svg+div]:translate-y-[-3px]>svg+div{--tw-translate-y: -3px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.[&>svg]:absolute>svg{position:absolute}.[&>svg]:left-4>svg{left:1rem}.[&>svg]:top-4>svg{top:1rem}.[&>svg]:text-destructive>svg{color:hsl(var(--destructive))}.[&>svg]:text-foreground>svg{color:hsl(var(--foreground))}.[&>svg~*]:pl-7>svg~*{padding-left:1.75rem}.[&_p]:leading-relaxed p{line-height:1.625}:root{--base-spacing: 24px;--m-xxxxs: calc(var(--base-spacing) / 5);--m-xxxs: calc(var(--base-spacing) / 4);--m-xxs: calc(var(--base-spacing) / 3);--m-xs: calc(var(--base-spacing) / 2);--m-s: calc(var(--base-spacing) * 2 / 3);--m: var(--base-spacing);--m-mm: calc(var(--base-spacing) * 3 / 2);--m-l: calc(var(--base-spacing) * 5 / 3);--m-xl: calc(var(--base-spacing) * 2);--m-xxl: calc(var(--base-spacing) * 5 / 2);--m-xxxl: calc(var(--base-spacing) * 3);--font-size-xs: calc(var(--font-size) * 16 / 17);--font-size-s: calc(var(--font-size) * 13 / 14);--font-size: .875rem;--font-size-l: calc(var(--font-size) * 8 / 7);--font-size-xl: calc(var(--font-size) * 9 / 7);--font-size-xxl: calc(var(--font-size) * 12 / 7);--font-size-xxxl: calc(var(--font-size) * 18 / 7);--font-size-h: calc(var(--font-size) * 24 / 7);--font-family: "Inter", sans-serif;--font-family-1: var(--font-family);--font-family-2: "Laxan", sans-serif;--border-radius: 4px;--border-radius-1: var(--border-radius);--border-radius-2: calc(var(--border-radius) * 2);--border-radius-3: calc(var(--border-radius) * 3);--border-radius-4: calc(var(--border-radius) * 4);--border-radius-5: calc(var(--border-radius) * 5);--border-radius-r: 50%;--fast: .3s;--speed: .4s;--slow: .9s;--ease: ease-out;--transition-ui: background-color var(--fast) var(--ease), border-color var(--fast) var(--ease), opacity var(--fast) var(--ease), transform var(--fast) var(--ease), color var(--fast) var(--ease);--blurred: 5px;--color-primary: #2563eb;--color-primary-hover: #1d4ed8;--color-primary-focus: #2563eb;--color-primary-disabled: #bfdbfe;--color-primary-button-disabled: #3f3b55;--color-secondary: #1d2939;--color-secondary-hover: #475467;--color-secondary-focus: #1d2939;--color-secondary-disabled: #344054;--color-text-on-primary: #ffffff;--color-text-on-primary-disabled: #667085;--color-text-on-primary-button-disabled: #ffffff;--color-text-on-secondary: #f2f4f7;--color-text-on-secondary-disabled: #475467;--color-progress-bar: #099250;--color-success: rgba(18, 183, 106, .88);--color-emphasis: #0ba5ec;--color-error: rgba(252, 93, 93, .88);--color-attention: rgba(248, 203, 44, .88);--color-importer-link: #2275d7;--blue-light-500: #0ba5ec;--color-green-ui: var(--color-progress-bar);--color-green: var(--color-success);--color-blue: #0ba5ec;--color-red: rgba(252, 93, 93, .88);--color-yellow: rgba(248, 203, 44, .88);--importer-link: var(--color-importer-link)}.CSVImporter-dark{color-scheme:dark;--color-background: #0e1116;--color-background-main: var(--color-background);--color-background-modal: #171a20;--color-background-modal-hover: #2e323c;--color-background-modal-veil: #0e1116;--color-background-modal-shadow: #0e1116;--color-background-modal-shade: #171a20;--color-tertiary: #101828;--color-tertiary-hover: #1d2939;--color-tertiary-focus: #1d2939;--color-tertiary-disabled: #eaecf0;--color-background-menu: #101828;--color-background-menu-hover: #1d2939;--color-text-strong: #f2f4f7;--color-text: #d0d5dd;--color-text-soft: #667085;--color-text-on-tertiary: #ffffff;--color-text-on-tertiary-disabled: #667085;--color-error: #912018;--color-text-error: #f04438;--color-background-error: #f04438;--color-background-error-hover: #d92d20;--color-background-error-soft: #fecdca;--color-input-background: #101828;--color-input-background-soft: #1d2939;--color-input-border: #344054;--color-input-placeholder: #344054;--color-input-text-disabled: #344054;--color-input-disabled: #171a20;--color-border: #1d2939;--color-background-small-button-selected: #344054;--color-background-small-button-hover: #101828;--color-text-small-button: $base-white;--color-button: #eff6ff;--color-button-hover: #dbeafe;--color-button-disabled: #dbeafe;--color-button-text: #171a20;--color-button-text-disabled: lighter(#171a20, 10);--color-button-border: transparent;--color-border: #344054;--color-border-soft: #1d2939;--color-icon: #d0d5dd;--color-bisel: rgba(255, 255, 255, .05);--color-csv-import-text: var(--color-text);--color-stepper: #30374f;--color-stepper-active: #6ce9a6}.CSVImporter-light{color-scheme:light;--color-background: #f2f4f7;--color-background-main: #ffffff;--color-background-modal: #ffffff;--color-background-modal-hover: #ffffff;--color-background-modal-veil: #0e1116;--color-background-modal-shadow: transparent;--color-background-modal-shade: #f2f4f7;--color-tertiary: #ffffff;--color-tertiary-hover: #f2f4f7;--color-tertiary-focus: #ffffff;--color-tertiary-disabled: #eaecf0;--color-background-menu: #ffffff;--color-background-menu-hover: #f2f4f7;--color-text-strong: #101828;--color-text: #1d2939;--color-text-soft: #667085;--color-text-on-tertiary: #344054;--color-text-on-tertiary-disabled: #667085;--color-error: #fecdca;--color-text-error: #f04438;--color-background-error: #f04438;--color-background-error-hover: #d92d20;--color-background-error-soft: #fecdca;--color-input-background: #ffffff;--color-input-background-soft: #d0d5dd;--color-input-border: #344054;--color-input-placeholder: #344054;--color-input-text-disabled: #344054;--color-input-disabled: #f9fafb;--color-border: #1d2939;--color-background-small-button-selected: #f2f4f7;--color-background-small-button-hover: #f9fafb;--color-text-small-button: var(--color-text);--color-button: #ffffff;--color-button-hover: #f2f4f7;--color-button-disabled: #fcfcfd;--color-button-text: var(--color-text-soft);--color-button-text-disabled: #d0d5dd;--color-button-border: #d0d5dd;--color-border: #d0d5dd;--color-border-soft: #eaecf0;--color-icon: #101323;--color-bisel: rgba(0, 0, 0, .05);--color-csv-import-text: #130638;--color-stepper: #b9c0d4;--color-stepper-active: #6ce9a6}.csv-importer{font-family:Geist,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--color-background);color:var(--color-text);font-size:var(--font-size);font-weight:500;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.csv-importer *{box-sizing:border-box}.csv-importer .container{max-width:1300px;margin:0 auto;padding:2rem}@media (max-width: 640px){.csv-importer .container{padding:1rem}}.csv-importer h1,.csv-importer h2,.csv-importer h3,.csv-importer h4,.csv-importer h5,.csv-importer h6{font-family:Geist,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-weight:600;line-height:1.2;color:#111827}.csv-importer h1{font-size:2rem}.csv-importer h2{font-size:1.5rem}.csv-importer h3{font-size:1.25rem}.csv-importer h4{font-size:1.125rem}.csv-importer h5{font-size:1rem}.csv-importer h6{font-size:.875rem}.csv-importer p{line-height:1.6;color:#4b5563}.csv-importer button{font-family:Geist,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-weight:500;transition:all .2s ease}.csv-importer button:hover:not(:disabled){transform:translateY(-1px)}.csv-importer input,.csv-importer textarea,.csv-importer select{font-family:Geist,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:.875rem}.csv-importer input:focus,.csv-importer textarea:focus,.csv-importer select:focus{outline:none;box-shadow:0 0 0 3px rgba(var(--color-primary-rgb, 122, 94, 248),.1)}.csv-importer a{color:var(--color-primary);text-decoration:none;transition:color .2s ease}.csv-importer a:hover{color:var(--color-primary-700);text-decoration:underline}.CSVImporter{border:none;background-color:transparent;padding:0 1rem;border-radius:1.2rem;color:inherit;cursor:pointer;font-weight:500;font-size:14px;display:inline-flex;gap:.5rem;align-items:center;transition:filter .2s ease-out}.CSVImporter svg{display:block}.CSVImporter svg path{stroke:currentColor!important}.CSVImporter:hover,.CSVImporter:active{filter:brightness(1.2)}.CSVImporter-dialog::backdrop{background-color:#000000d9}.CSVImporter-dialog{border-radius:1rem;width:80vw;max-height:80vh;min-width:800px;border:none;position:fixed;inset:0;padding:0;margin:auto}.CSVImporter-div{border:none;display:block;width:100%;height:auto;max-height:80vh;overflow-y:auto}@media (max-width: 768px){.CSVImporter-dialog{width:95vw;min-width:unset;max-width:100%}}
|
|
138
|
-
|
|
149
|
+
*/return(function(){function o(i,f){return i===f&&(i!==0||1/i===1/f)||i!==i&&f!==f}typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var e=h,r=Pl(),t=typeof Object.is=="function"?Object.is:o,a=r.useSyncExternalStore,n=e.useRef,l=e.useEffect,s=e.useMemo,c=e.useDebugValue;$r.useSyncExternalStoreWithSelector=function(i,f,T,w,y){var v=n(null);if(v.current===null){var x={hasValue:!1,value:null};v.current=x}else x=v.current;v=s(function(){function k(K){if(!j){if(j=!0,F=K,K=w(K),y!==void 0&&x.hasValue){var $=x.value;if(y($,K))return de=$}return de=K}if($=de,t(F,K))return $;var b=w(K);return y!==void 0&&y($,b)?(F=K,$):(F=K,de=b)}var j=!1,F,de,me=T===void 0?null:T;return[function(){return k(f())},me===null?void 0:function(){return k(me())}]},[f,T,w,y]);var E=a(i,v[0],v[1]);return l(function(){x.hasValue=!0,x.value=E},[E]),c(E),E},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})(),$r}var zo;function $l(){return zo||(zo=1,Lr.exports=Ll()),Lr.exports}var Fl=$l();const Zl=tt(Fl),$t={},{useDebugValue:Ul}=h,{useSyncExternalStoreWithSelector:Wl}=Zl;let Ao=!1;const Bl=o=>o;function ql(o,e=Bl,r){($t?"react":void 0)!=="production"&&r&&!Ao&&(console.warn("[DEPRECATED] Use `createWithEqualityFn` instead of `create` or use `useStoreWithEqualityFn` instead of `useStore`. They can be imported from 'zustand/traditional'. https://github.com/pmndrs/zustand/discussions/1937"),Ao=!0);const t=Wl(o.subscribe,o.getState,o.getServerState||o.getInitialState,e,r);return Ul(t),t}const Yl=o=>{($t?"react":void 0)!=="production"&&typeof o!="function"&&console.warn("[DEPRECATED] Passing a vanilla store will be unsupported in a future version. Instead use `import { useStore } from 'zustand'`.");const e=typeof o=="function"?zl(o):o,r=(t,a)=>ql(e,t,a);return Object.assign(r,e),r},Hl=o=>Yl,Gl={};function Kl(o,e){let r;try{r=o()}catch{return}return{getItem:a=>{var n;const l=c=>c===null?null:JSON.parse(c,void 0),s=(n=r.getItem(a))!=null?n:null;return s instanceof Promise?s.then(l):l(s)},setItem:(a,n)=>r.setItem(a,JSON.stringify(n,void 0)),removeItem:a=>r.removeItem(a)}}const xr=o=>e=>{try{const r=o(e);return r instanceof Promise?r:{then(t){return xr(t)(r)},catch(t){return this}}}catch(r){return{then(t){return this},catch(t){return xr(t)(r)}}}},Xl=(o,e)=>(r,t,a)=>{let n={getStorage:()=>localStorage,serialize:JSON.stringify,deserialize:JSON.parse,partialize:E=>E,version:0,merge:(E,k)=>({...k,...E}),...e},l=!1;const s=new Set,c=new Set;let i;try{i=n.getStorage()}catch{}if(!i)return o((...E)=>{console.warn(`[zustand persist middleware] Unable to update item '${n.name}', the given storage is currently unavailable.`),r(...E)},t,a);const f=xr(n.serialize),T=()=>{const E=n.partialize({...t()});let k;const j=f({state:E,version:n.version}).then(F=>i.setItem(n.name,F)).catch(F=>{k=F});if(k)throw k;return j},w=a.setState;a.setState=(E,k)=>{w(E,k),T()};const y=o((...E)=>{r(...E),T()},t,a);let v;const x=()=>{var E;if(!i)return;l=!1,s.forEach(j=>j(t()));const k=((E=n.onRehydrateStorage)==null?void 0:E.call(n,t()))||void 0;return xr(i.getItem.bind(i))(n.name).then(j=>{if(j)return n.deserialize(j)}).then(j=>{if(j)if(typeof j.version=="number"&&j.version!==n.version){if(n.migrate)return n.migrate(j.state,j.version);console.error("State loaded from storage couldn't be migrated since no migrate function was provided")}else return j.state}).then(j=>{var F;return v=n.merge(j,(F=t())!=null?F:y),r(v,!0),T()}).then(()=>{k?.(v,void 0),l=!0,c.forEach(j=>j(v))}).catch(j=>{k?.(void 0,j)})};return a.persist={setOptions:E=>{n={...n,...E},E.getStorage&&(i=E.getStorage())},clearStorage:()=>{i?.removeItem(n.name)},getOptions:()=>n,rehydrate:()=>x(),hasHydrated:()=>l,onHydrate:E=>(s.add(E),()=>{s.delete(E)}),onFinishHydration:E=>(c.add(E),()=>{c.delete(E)})},x(),v||y},Jl=(o,e)=>(r,t,a)=>{let n={storage:Kl(()=>localStorage),partialize:x=>x,version:0,merge:(x,E)=>({...E,...x}),...e},l=!1;const s=new Set,c=new Set;let i=n.storage;if(!i)return o((...x)=>{console.warn(`[zustand persist middleware] Unable to update item '${n.name}', the given storage is currently unavailable.`),r(...x)},t,a);const f=()=>{const x=n.partialize({...t()});return i.setItem(n.name,{state:x,version:n.version})},T=a.setState;a.setState=(x,E)=>{T(x,E),f()};const w=o((...x)=>{r(...x),f()},t,a);a.getInitialState=()=>w;let y;const v=()=>{var x,E;if(!i)return;l=!1,s.forEach(j=>{var F;return j((F=t())!=null?F:w)});const k=((E=n.onRehydrateStorage)==null?void 0:E.call(n,(x=t())!=null?x:w))||void 0;return xr(i.getItem.bind(i))(n.name).then(j=>{if(j)if(typeof j.version=="number"&&j.version!==n.version){if(n.migrate)return[!0,n.migrate(j.state,j.version)];console.error("State loaded from storage couldn't be migrated since no migrate function was provided")}else return[!1,j.state];return[!1,void 0]}).then(j=>{var F;const[de,me]=j;if(y=n.merge(me,(F=t())!=null?F:w),r(y,!0),de)return f()}).then(()=>{k?.(y,void 0),y=t(),l=!0,c.forEach(j=>j(y))}).catch(j=>{k?.(void 0,j)})};return a.persist={setOptions:x=>{n={...n,...x},x.storage&&(i=x.storage)},clearStorage:()=>{i?.removeItem(n.name)},getOptions:()=>n,rehydrate:()=>v(),hasHydrated:()=>l,onHydrate:x=>(s.add(x),()=>{s.delete(x)}),onFinishHydration:x=>(c.add(x),()=>{c.delete(x)})},n.skipHydration||v(),y||w},Ql=(o,e)=>"getStorage"in e||"serialize"in e||"deserialize"in e?((Gl?"react":void 0)!=="production"&&console.warn("[DEPRECATED] `getStorage`, `serialize` and `deserialize` options are deprecated. Use `storage` option instead."),Xl(o,e)):Jl(o,e),ed=Ql,Po="csv-importer-theme",rd=Hl()(ed(o=>({theme:typeof window<"u"?localStorage.getItem(Po):"light",setTheme:e=>o(r=>({theme:e||(r.theme==="light"?"dark":"light")}))}),{name:Po})),od=({isOpen:o,onClose:e,children:r,closeOnOutsideClick:t=!0,className:a="",overlayClassName:n="",contentClassName:l=""})=>{const s=h.useRef(null),c=h.useRef(null),i='a[href], area[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), button:not([disabled]), iframe, object, embed, [tabindex]:not([tabindex="-1"]), [contenteditable]';h.useEffect(()=>{if(!o)return;const w=y=>{y.key==="Escape"&&e()};return document.addEventListener("keydown",w),()=>document.removeEventListener("keydown",w)},[o,e]),h.useEffect(()=>{if(!o||!s.current)return;const w=s.current,y=w.querySelectorAll(i),v=y[0],x=y[y.length-1],E=k=>{if(k.key==="Tab"){if(y.length===0){k.preventDefault();return}k.shiftKey?document.activeElement===v&&(k.preventDefault(),x?.focus()):document.activeElement===x&&(k.preventDefault(),v?.focus())}};return w.addEventListener("keydown",E),c.current=document.activeElement,v?v.focus():w.focus(),()=>{w.removeEventListener("keydown",E),c.current&&c.current instanceof HTMLElement&&c.current.focus()}},[o]),h.useEffect(()=>{if(!o)return;const w=document.body.style.overflow,y=document.body.style.paddingRight,v=window.innerWidth-document.documentElement.clientWidth;return document.body.style.overflow="hidden",v>0&&(document.body.style.paddingRight=`${v}px`),()=>{document.body.style.overflow=w,document.body.style.paddingRight=y}},[o]);const f=h.useCallback(w=>{t&&w.target===w.currentTarget&&e()},[t,e]);if(!o)return null;const T=d.jsxDEV("div",{className:`csv-importer-modal-overlay ${n}`,onClick:f,role:"presentation","aria-hidden":"true",children:d.jsxDEV("div",{ref:s,className:`csv-importer-modal-content ${l} ${a}`,role:"dialog","aria-modal":"true",tabIndex:-1,onClick:w=>w.stopPropagation(),children:r},void 0,!1,{fileName:"/frontend/src/components/Modal/index.tsx",lineNumber:134,columnNumber:7},void 0)},void 0,!1,{fileName:"/frontend/src/components/Modal/index.tsx",lineNumber:128,columnNumber:5},void 0);return typeof document<"u"?la(T,document.body):null};var he;(function(o){o.assertEqual=a=>{};function e(a){}o.assertIs=e;function r(a){throw new Error}o.assertNever=r,o.arrayToEnum=a=>{const n={};for(const l of a)n[l]=l;return n},o.getValidEnumValues=a=>{const n=o.objectKeys(a).filter(s=>typeof a[a[s]]!="number"),l={};for(const s of n)l[s]=a[s];return o.objectValues(l)},o.objectValues=a=>o.objectKeys(a).map(function(n){return a[n]}),o.objectKeys=typeof Object.keys=="function"?a=>Object.keys(a):a=>{const n=[];for(const l in a)Object.prototype.hasOwnProperty.call(a,l)&&n.push(l);return n},o.find=(a,n)=>{for(const l of a)if(n(l))return l},o.isInteger=typeof Number.isInteger=="function"?a=>Number.isInteger(a):a=>typeof a=="number"&&Number.isFinite(a)&&Math.floor(a)===a;function t(a,n=" | "){return a.map(l=>typeof l=="string"?`'${l}'`:l).join(n)}o.joinValues=t,o.jsonStringifyReplacer=(a,n)=>typeof n=="bigint"?n.toString():n})(he||(he={}));var Lo;(function(o){o.mergeShapes=(e,r)=>({...e,...r})})(Lo||(Lo={}));const Y=he.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Be=o=>{switch(typeof o){case"undefined":return Y.undefined;case"string":return Y.string;case"number":return Number.isNaN(o)?Y.nan:Y.number;case"boolean":return Y.boolean;case"function":return Y.function;case"bigint":return Y.bigint;case"symbol":return Y.symbol;case"object":return Array.isArray(o)?Y.array:o===null?Y.null:o.then&&typeof o.then=="function"&&o.catch&&typeof o.catch=="function"?Y.promise:typeof Map<"u"&&o instanceof Map?Y.map:typeof Set<"u"&&o instanceof Set?Y.set:typeof Date<"u"&&o instanceof Date?Y.date:Y.object;default:return Y.unknown}},R=he.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]);class Ze extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=t=>{this.issues=[...this.issues,t]},this.addIssues=(t=[])=>{this.issues=[...this.issues,...t]};const r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=e}format(e){const r=e||function(n){return n.message},t={_errors:[]},a=n=>{for(const l of n.issues)if(l.code==="invalid_union")l.unionErrors.map(a);else if(l.code==="invalid_return_type")a(l.returnTypeError);else if(l.code==="invalid_arguments")a(l.argumentsError);else if(l.path.length===0)t._errors.push(r(l));else{let s=t,c=0;for(;c<l.path.length;){const i=l.path[c];c===l.path.length-1?(s[i]=s[i]||{_errors:[]},s[i]._errors.push(r(l))):s[i]=s[i]||{_errors:[]},s=s[i],c++}}};return a(this),t}static assert(e){if(!(e instanceof Ze))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,he.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=r=>r.message){const r={},t=[];for(const a of this.issues)if(a.path.length>0){const n=a.path[0];r[n]=r[n]||[],r[n].push(e(a))}else t.push(e(a));return{formErrors:t,fieldErrors:r}}get formErrors(){return this.flatten()}}Ze.create=o=>new Ze(o);const Hr=(o,e)=>{let r;switch(o.code){case R.invalid_type:o.received===Y.undefined?r="Required":r=`Expected ${o.expected}, received ${o.received}`;break;case R.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(o.expected,he.jsonStringifyReplacer)}`;break;case R.unrecognized_keys:r=`Unrecognized key(s) in object: ${he.joinValues(o.keys,", ")}`;break;case R.invalid_union:r="Invalid input";break;case R.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${he.joinValues(o.options)}`;break;case R.invalid_enum_value:r=`Invalid enum value. Expected ${he.joinValues(o.options)}, received '${o.received}'`;break;case R.invalid_arguments:r="Invalid function arguments";break;case R.invalid_return_type:r="Invalid function return type";break;case R.invalid_date:r="Invalid date";break;case R.invalid_string:typeof o.validation=="object"?"includes"in o.validation?(r=`Invalid input: must include "${o.validation.includes}"`,typeof o.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${o.validation.position}`)):"startsWith"in o.validation?r=`Invalid input: must start with "${o.validation.startsWith}"`:"endsWith"in o.validation?r=`Invalid input: must end with "${o.validation.endsWith}"`:he.assertNever(o.validation):o.validation!=="regex"?r=`Invalid ${o.validation}`:r="Invalid";break;case R.too_small:o.type==="array"?r=`Array must contain ${o.exact?"exactly":o.inclusive?"at least":"more than"} ${o.minimum} element(s)`:o.type==="string"?r=`String must contain ${o.exact?"exactly":o.inclusive?"at least":"over"} ${o.minimum} character(s)`:o.type==="number"?r=`Number must be ${o.exact?"exactly equal to ":o.inclusive?"greater than or equal to ":"greater than "}${o.minimum}`:o.type==="bigint"?r=`Number must be ${o.exact?"exactly equal to ":o.inclusive?"greater than or equal to ":"greater than "}${o.minimum}`:o.type==="date"?r=`Date must be ${o.exact?"exactly equal to ":o.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(o.minimum))}`:r="Invalid input";break;case R.too_big:o.type==="array"?r=`Array must contain ${o.exact?"exactly":o.inclusive?"at most":"less than"} ${o.maximum} element(s)`:o.type==="string"?r=`String must contain ${o.exact?"exactly":o.inclusive?"at most":"under"} ${o.maximum} character(s)`:o.type==="number"?r=`Number must be ${o.exact?"exactly":o.inclusive?"less than or equal to":"less than"} ${o.maximum}`:o.type==="bigint"?r=`BigInt must be ${o.exact?"exactly":o.inclusive?"less than or equal to":"less than"} ${o.maximum}`:o.type==="date"?r=`Date must be ${o.exact?"exactly":o.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(o.maximum))}`:r="Invalid input";break;case R.custom:r="Invalid input";break;case R.invalid_intersection_types:r="Intersection results could not be merged";break;case R.not_multiple_of:r=`Number must be a multiple of ${o.multipleOf}`;break;case R.not_finite:r="Number must be finite";break;default:r=e.defaultError,he.assertNever(o)}return{message:r}};let td=Hr;function ad(){return td}const nd=o=>{const{data:e,path:r,errorMaps:t,issueData:a}=o,n=[...r,...a.path||[]],l={...a,path:n};if(a.message!==void 0)return{...a,path:n,message:a.message};let s="";const c=t.filter(i=>!!i).slice().reverse();for(const i of c)s=i(l,{data:e,defaultError:s}).message;return{...a,path:n,message:s}};function U(o,e){const r=ad(),t=nd({issueData:e,data:o.data,path:o.path,errorMaps:[o.common.contextualErrorMap,o.schemaErrorMap,r,r===Hr?void 0:Hr].filter(a=>!!a)});o.common.issues.push(t)}class Ie{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,r){const t=[];for(const a of r){if(a.status==="aborted")return ne;a.status==="dirty"&&e.dirty(),t.push(a.value)}return{status:e.value,value:t}}static async mergeObjectAsync(e,r){const t=[];for(const a of r){const n=await a.key,l=await a.value;t.push({key:n,value:l})}return Ie.mergeObjectSync(e,t)}static mergeObjectSync(e,r){const t={};for(const a of r){const{key:n,value:l}=a;if(n.status==="aborted"||l.status==="aborted")return ne;n.status==="dirty"&&e.dirty(),l.status==="dirty"&&e.dirty(),n.value!=="__proto__"&&(typeof l.value<"u"||a.alwaysSet)&&(t[n.value]=l.value)}return{status:e.value,value:t}}}const ne=Object.freeze({status:"aborted"}),pr=o=>({status:"dirty",value:o}),Pe=o=>({status:"valid",value:o}),$o=o=>o.status==="aborted",Fo=o=>o.status==="dirty",lr=o=>o.status==="valid",jr=o=>typeof Promise<"u"&&o instanceof Promise;var G;(function(o){o.errToObj=e=>typeof e=="string"?{message:e}:e||{},o.toString=e=>typeof e=="string"?e:e?.message})(G||(G={}));class He{constructor(e,r,t,a){this._cachedPath=[],this.parent=e,this.data=r,this._path=t,this._key=a}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}}const Zo=(o,e)=>{if(lr(e))return{success:!0,data:e.value};if(!o.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;const r=new Ze(o.common.issues);return this._error=r,this._error}}};function fe(o){if(!o)return{};const{errorMap:e,invalid_type_error:r,required_error:t,description:a}=o;if(e&&(r||t))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:a}:{errorMap:(l,s)=>{const{message:c}=o;return l.code==="invalid_enum_value"?{message:c??s.defaultError}:typeof s.data>"u"?{message:c??t??s.defaultError}:l.code!=="invalid_type"?{message:s.defaultError}:{message:c??r??s.defaultError}},description:a}}class pe{get description(){return this._def.description}_getType(e){return Be(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:Be(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Ie,ctx:{common:e.parent.common,data:e.data,parsedType:Be(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){const r=this._parse(e);if(jr(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(e){const r=this._parse(e);return Promise.resolve(r)}parse(e,r){const t=this.safeParse(e,r);if(t.success)return t.data;throw t.error}safeParse(e,r){const t={common:{issues:[],async:r?.async??!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Be(e)},a=this._parseSync({data:e,path:t.path,parent:t});return Zo(t,a)}"~validate"(e){const r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Be(e)};if(!this["~standard"].async)try{const t=this._parseSync({data:e,path:[],parent:r});return lr(t)?{value:t.value}:{issues:r.common.issues}}catch(t){t?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),r.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:r}).then(t=>lr(t)?{value:t.value}:{issues:r.common.issues})}async parseAsync(e,r){const t=await this.safeParseAsync(e,r);if(t.success)return t.data;throw t.error}async safeParseAsync(e,r){const t={common:{issues:[],contextualErrorMap:r?.errorMap,async:!0},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Be(e)},a=this._parse({data:e,path:t.path,parent:t}),n=await(jr(a)?a:Promise.resolve(a));return Zo(t,n)}refine(e,r){const t=a=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(a):r;return this._refinement((a,n)=>{const l=e(a),s=()=>n.addIssue({code:R.custom,...t(a)});return typeof Promise<"u"&&l instanceof Promise?l.then(c=>c?!0:(s(),!1)):l?!0:(s(),!1)})}refinement(e,r){return this._refinement((t,a)=>e(t)?!0:(a.addIssue(typeof r=="function"?r(t,a):r),!1))}_refinement(e){return new sr({schema:this,typeName:le.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:r=>this["~validate"](r)}}optional(){return Ye.create(this,this._def)}nullable(){return ir.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return $e.create(this)}promise(){return Mr.create(this,this._def)}or(e){return Or.create([this,e],this._def)}and(e){return Rr.create(this,e,this._def)}transform(e){return new sr({...fe(this._def),schema:this,typeName:le.ZodEffects,effect:{type:"transform",transform:e}})}default(e){const r=typeof e=="function"?e:()=>e;return new Kr({...fe(this._def),innerType:this,defaultValue:r,typeName:le.ZodDefault})}brand(){return new Vd({typeName:le.ZodBranded,type:this,...fe(this._def)})}catch(e){const r=typeof e=="function"?e:()=>e;return new Xr({...fe(this._def),innerType:this,catchValue:r,typeName:le.ZodCatch})}describe(e){const r=this.constructor;return new r({...this._def,description:e})}pipe(e){return oo.create(this,e)}readonly(){return Jr.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}const ld=/^c[^\s-]{8,}$/i,dd=/^[0-9a-z]+$/,sd=/^[0-9A-HJKMNP-TV-Z]{26}$/i,id=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,cd=/^[a-z0-9_-]{21}$/i,ud=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,bd=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,fd=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,md="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";let Ur;const gd=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,pd=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,hd=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,xd=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,yd=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,vd=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Ft="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",_d=new RegExp(`^${Ft}$`);function Zt(o){let e="[0-5]\\d";o.precision?e=`${e}\\.\\d{${o.precision}}`:o.precision==null&&(e=`${e}(\\.\\d+)?`);const r=o.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${r}`}function wd(o){return new RegExp(`^${Zt(o)}$`)}function kd(o){let e=`${Ft}T${Zt(o)}`;const r=[];return r.push(o.local?"Z?":"Z"),o.offset&&r.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${r.join("|")})`,new RegExp(`^${e}$`)}function Nd(o,e){return!!((e==="v4"||!e)&&gd.test(o)||(e==="v6"||!e)&&hd.test(o))}function Ed(o,e){if(!ud.test(o))return!1;try{const[r]=o.split(".");if(!r)return!1;const t=r.replace(/-/g,"+").replace(/_/g,"/").padEnd(r.length+(4-r.length%4)%4,"="),a=JSON.parse(atob(t));return!(typeof a!="object"||a===null||"typ"in a&&a?.typ!=="JWT"||!a.alg||e&&a.alg!==e)}catch{return!1}}function Sd(o,e){return!!((e==="v4"||!e)&&pd.test(o)||(e==="v6"||!e)&&xd.test(o))}class Qe extends pe{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==Y.string){const n=this._getOrReturnCtx(e);return U(n,{code:R.invalid_type,expected:Y.string,received:n.parsedType}),ne}const t=new Ie;let a;for(const n of this._def.checks)if(n.kind==="min")e.data.length<n.value&&(a=this._getOrReturnCtx(e,a),U(a,{code:R.too_small,minimum:n.value,type:"string",inclusive:!0,exact:!1,message:n.message}),t.dirty());else if(n.kind==="max")e.data.length>n.value&&(a=this._getOrReturnCtx(e,a),U(a,{code:R.too_big,maximum:n.value,type:"string",inclusive:!0,exact:!1,message:n.message}),t.dirty());else if(n.kind==="length"){const l=e.data.length>n.value,s=e.data.length<n.value;(l||s)&&(a=this._getOrReturnCtx(e,a),l?U(a,{code:R.too_big,maximum:n.value,type:"string",inclusive:!0,exact:!0,message:n.message}):s&&U(a,{code:R.too_small,minimum:n.value,type:"string",inclusive:!0,exact:!0,message:n.message}),t.dirty())}else if(n.kind==="email")fd.test(e.data)||(a=this._getOrReturnCtx(e,a),U(a,{validation:"email",code:R.invalid_string,message:n.message}),t.dirty());else if(n.kind==="emoji")Ur||(Ur=new RegExp(md,"u")),Ur.test(e.data)||(a=this._getOrReturnCtx(e,a),U(a,{validation:"emoji",code:R.invalid_string,message:n.message}),t.dirty());else if(n.kind==="uuid")id.test(e.data)||(a=this._getOrReturnCtx(e,a),U(a,{validation:"uuid",code:R.invalid_string,message:n.message}),t.dirty());else if(n.kind==="nanoid")cd.test(e.data)||(a=this._getOrReturnCtx(e,a),U(a,{validation:"nanoid",code:R.invalid_string,message:n.message}),t.dirty());else if(n.kind==="cuid")ld.test(e.data)||(a=this._getOrReturnCtx(e,a),U(a,{validation:"cuid",code:R.invalid_string,message:n.message}),t.dirty());else if(n.kind==="cuid2")dd.test(e.data)||(a=this._getOrReturnCtx(e,a),U(a,{validation:"cuid2",code:R.invalid_string,message:n.message}),t.dirty());else if(n.kind==="ulid")sd.test(e.data)||(a=this._getOrReturnCtx(e,a),U(a,{validation:"ulid",code:R.invalid_string,message:n.message}),t.dirty());else if(n.kind==="url")try{new URL(e.data)}catch{a=this._getOrReturnCtx(e,a),U(a,{validation:"url",code:R.invalid_string,message:n.message}),t.dirty()}else n.kind==="regex"?(n.regex.lastIndex=0,n.regex.test(e.data)||(a=this._getOrReturnCtx(e,a),U(a,{validation:"regex",code:R.invalid_string,message:n.message}),t.dirty())):n.kind==="trim"?e.data=e.data.trim():n.kind==="includes"?e.data.includes(n.value,n.position)||(a=this._getOrReturnCtx(e,a),U(a,{code:R.invalid_string,validation:{includes:n.value,position:n.position},message:n.message}),t.dirty()):n.kind==="toLowerCase"?e.data=e.data.toLowerCase():n.kind==="toUpperCase"?e.data=e.data.toUpperCase():n.kind==="startsWith"?e.data.startsWith(n.value)||(a=this._getOrReturnCtx(e,a),U(a,{code:R.invalid_string,validation:{startsWith:n.value},message:n.message}),t.dirty()):n.kind==="endsWith"?e.data.endsWith(n.value)||(a=this._getOrReturnCtx(e,a),U(a,{code:R.invalid_string,validation:{endsWith:n.value},message:n.message}),t.dirty()):n.kind==="datetime"?kd(n).test(e.data)||(a=this._getOrReturnCtx(e,a),U(a,{code:R.invalid_string,validation:"datetime",message:n.message}),t.dirty()):n.kind==="date"?_d.test(e.data)||(a=this._getOrReturnCtx(e,a),U(a,{code:R.invalid_string,validation:"date",message:n.message}),t.dirty()):n.kind==="time"?wd(n).test(e.data)||(a=this._getOrReturnCtx(e,a),U(a,{code:R.invalid_string,validation:"time",message:n.message}),t.dirty()):n.kind==="duration"?bd.test(e.data)||(a=this._getOrReturnCtx(e,a),U(a,{validation:"duration",code:R.invalid_string,message:n.message}),t.dirty()):n.kind==="ip"?Nd(e.data,n.version)||(a=this._getOrReturnCtx(e,a),U(a,{validation:"ip",code:R.invalid_string,message:n.message}),t.dirty()):n.kind==="jwt"?Ed(e.data,n.alg)||(a=this._getOrReturnCtx(e,a),U(a,{validation:"jwt",code:R.invalid_string,message:n.message}),t.dirty()):n.kind==="cidr"?Sd(e.data,n.version)||(a=this._getOrReturnCtx(e,a),U(a,{validation:"cidr",code:R.invalid_string,message:n.message}),t.dirty()):n.kind==="base64"?yd.test(e.data)||(a=this._getOrReturnCtx(e,a),U(a,{validation:"base64",code:R.invalid_string,message:n.message}),t.dirty()):n.kind==="base64url"?vd.test(e.data)||(a=this._getOrReturnCtx(e,a),U(a,{validation:"base64url",code:R.invalid_string,message:n.message}),t.dirty()):he.assertNever(n);return{status:t.value,value:e.data}}_regex(e,r,t){return this.refinement(a=>e.test(a),{validation:r,code:R.invalid_string,...G.errToObj(t)})}_addCheck(e){return new Qe({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...G.errToObj(e)})}url(e){return this._addCheck({kind:"url",...G.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...G.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...G.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...G.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...G.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...G.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...G.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...G.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...G.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...G.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...G.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...G.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...G.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...G.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...G.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...G.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...G.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...G.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...G.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...G.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...G.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...G.errToObj(r)})}nonempty(e){return this.min(1,G.errToObj(e))}trim(){return new Qe({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new Qe({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new Qe({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(const r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxLength(){let e=null;for(const r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}}Qe.create=o=>new Qe({checks:[],typeName:le.ZodString,coerce:o?.coerce??!1,...fe(o)});function Cd(o,e){const r=(o.toString().split(".")[1]||"").length,t=(e.toString().split(".")[1]||"").length,a=r>t?r:t,n=Number.parseInt(o.toFixed(a).replace(".","")),l=Number.parseInt(e.toFixed(a).replace(".",""));return n%l/10**a}class yr extends pe{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==Y.number){const n=this._getOrReturnCtx(e);return U(n,{code:R.invalid_type,expected:Y.number,received:n.parsedType}),ne}let t;const a=new Ie;for(const n of this._def.checks)n.kind==="int"?he.isInteger(e.data)||(t=this._getOrReturnCtx(e,t),U(t,{code:R.invalid_type,expected:"integer",received:"float",message:n.message}),a.dirty()):n.kind==="min"?(n.inclusive?e.data<n.value:e.data<=n.value)&&(t=this._getOrReturnCtx(e,t),U(t,{code:R.too_small,minimum:n.value,type:"number",inclusive:n.inclusive,exact:!1,message:n.message}),a.dirty()):n.kind==="max"?(n.inclusive?e.data>n.value:e.data>=n.value)&&(t=this._getOrReturnCtx(e,t),U(t,{code:R.too_big,maximum:n.value,type:"number",inclusive:n.inclusive,exact:!1,message:n.message}),a.dirty()):n.kind==="multipleOf"?Cd(e.data,n.value)!==0&&(t=this._getOrReturnCtx(e,t),U(t,{code:R.not_multiple_of,multipleOf:n.value,message:n.message}),a.dirty()):n.kind==="finite"?Number.isFinite(e.data)||(t=this._getOrReturnCtx(e,t),U(t,{code:R.not_finite,message:n.message}),a.dirty()):he.assertNever(n);return{status:a.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,G.toString(r))}gt(e,r){return this.setLimit("min",e,!1,G.toString(r))}lte(e,r){return this.setLimit("max",e,!0,G.toString(r))}lt(e,r){return this.setLimit("max",e,!1,G.toString(r))}setLimit(e,r,t,a){return new yr({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:t,message:G.toString(a)}]})}_addCheck(e){return new yr({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:G.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:G.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:G.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:G.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:G.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:G.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:G.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:G.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:G.toString(e)})}get minValue(){let e=null;for(const r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(const r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&he.isInteger(e.value))}get isFinite(){let e=null,r=null;for(const t of this._def.checks){if(t.kind==="finite"||t.kind==="int"||t.kind==="multipleOf")return!0;t.kind==="min"?(r===null||t.value>r)&&(r=t.value):t.kind==="max"&&(e===null||t.value<e)&&(e=t.value)}return Number.isFinite(r)&&Number.isFinite(e)}}yr.create=o=>new yr({checks:[],typeName:le.ZodNumber,coerce:o?.coerce||!1,...fe(o)});class vr extends pe{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==Y.bigint)return this._getInvalidInput(e);let t;const a=new Ie;for(const n of this._def.checks)n.kind==="min"?(n.inclusive?e.data<n.value:e.data<=n.value)&&(t=this._getOrReturnCtx(e,t),U(t,{code:R.too_small,type:"bigint",minimum:n.value,inclusive:n.inclusive,message:n.message}),a.dirty()):n.kind==="max"?(n.inclusive?e.data>n.value:e.data>=n.value)&&(t=this._getOrReturnCtx(e,t),U(t,{code:R.too_big,type:"bigint",maximum:n.value,inclusive:n.inclusive,message:n.message}),a.dirty()):n.kind==="multipleOf"?e.data%n.value!==BigInt(0)&&(t=this._getOrReturnCtx(e,t),U(t,{code:R.not_multiple_of,multipleOf:n.value,message:n.message}),a.dirty()):he.assertNever(n);return{status:a.value,value:e.data}}_getInvalidInput(e){const r=this._getOrReturnCtx(e);return U(r,{code:R.invalid_type,expected:Y.bigint,received:r.parsedType}),ne}gte(e,r){return this.setLimit("min",e,!0,G.toString(r))}gt(e,r){return this.setLimit("min",e,!1,G.toString(r))}lte(e,r){return this.setLimit("max",e,!0,G.toString(r))}lt(e,r){return this.setLimit("max",e,!1,G.toString(r))}setLimit(e,r,t,a){return new vr({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:t,message:G.toString(a)}]})}_addCheck(e){return new vr({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:G.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:G.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:G.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:G.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:G.toString(r)})}get minValue(){let e=null;for(const r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(const r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}}vr.create=o=>new vr({checks:[],typeName:le.ZodBigInt,coerce:o?.coerce??!1,...fe(o)});class Uo extends pe{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==Y.boolean){const t=this._getOrReturnCtx(e);return U(t,{code:R.invalid_type,expected:Y.boolean,received:t.parsedType}),ne}return Pe(e.data)}}Uo.create=o=>new Uo({typeName:le.ZodBoolean,coerce:o?.coerce||!1,...fe(o)});class Tr extends pe{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==Y.date){const n=this._getOrReturnCtx(e);return U(n,{code:R.invalid_type,expected:Y.date,received:n.parsedType}),ne}if(Number.isNaN(e.data.getTime())){const n=this._getOrReturnCtx(e);return U(n,{code:R.invalid_date}),ne}const t=new Ie;let a;for(const n of this._def.checks)n.kind==="min"?e.data.getTime()<n.value&&(a=this._getOrReturnCtx(e,a),U(a,{code:R.too_small,message:n.message,inclusive:!0,exact:!1,minimum:n.value,type:"date"}),t.dirty()):n.kind==="max"?e.data.getTime()>n.value&&(a=this._getOrReturnCtx(e,a),U(a,{code:R.too_big,message:n.message,inclusive:!0,exact:!1,maximum:n.value,type:"date"}),t.dirty()):he.assertNever(n);return{status:t.value,value:new Date(e.data.getTime())}}_addCheck(e){return new Tr({...this._def,checks:[...this._def.checks,e]})}min(e,r){return this._addCheck({kind:"min",value:e.getTime(),message:G.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:G.toString(r)})}get minDate(){let e=null;for(const r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(const r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e!=null?new Date(e):null}}Tr.create=o=>new Tr({checks:[],coerce:o?.coerce||!1,typeName:le.ZodDate,...fe(o)});class Wo extends pe{_parse(e){if(this._getType(e)!==Y.symbol){const t=this._getOrReturnCtx(e);return U(t,{code:R.invalid_type,expected:Y.symbol,received:t.parsedType}),ne}return Pe(e.data)}}Wo.create=o=>new Wo({typeName:le.ZodSymbol,...fe(o)});class Bo extends pe{_parse(e){if(this._getType(e)!==Y.undefined){const t=this._getOrReturnCtx(e);return U(t,{code:R.invalid_type,expected:Y.undefined,received:t.parsedType}),ne}return Pe(e.data)}}Bo.create=o=>new Bo({typeName:le.ZodUndefined,...fe(o)});class qo extends pe{_parse(e){if(this._getType(e)!==Y.null){const t=this._getOrReturnCtx(e);return U(t,{code:R.invalid_type,expected:Y.null,received:t.parsedType}),ne}return Pe(e.data)}}qo.create=o=>new qo({typeName:le.ZodNull,...fe(o)});class Yo extends pe{constructor(){super(...arguments),this._any=!0}_parse(e){return Pe(e.data)}}Yo.create=o=>new Yo({typeName:le.ZodAny,...fe(o)});class Ho extends pe{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Pe(e.data)}}Ho.create=o=>new Ho({typeName:le.ZodUnknown,...fe(o)});class Ge extends pe{_parse(e){const r=this._getOrReturnCtx(e);return U(r,{code:R.invalid_type,expected:Y.never,received:r.parsedType}),ne}}Ge.create=o=>new Ge({typeName:le.ZodNever,...fe(o)});class Go extends pe{_parse(e){if(this._getType(e)!==Y.undefined){const t=this._getOrReturnCtx(e);return U(t,{code:R.invalid_type,expected:Y.void,received:t.parsedType}),ne}return Pe(e.data)}}Go.create=o=>new Go({typeName:le.ZodVoid,...fe(o)});class $e extends pe{_parse(e){const{ctx:r,status:t}=this._processInputParams(e),a=this._def;if(r.parsedType!==Y.array)return U(r,{code:R.invalid_type,expected:Y.array,received:r.parsedType}),ne;if(a.exactLength!==null){const l=r.data.length>a.exactLength.value,s=r.data.length<a.exactLength.value;(l||s)&&(U(r,{code:l?R.too_big:R.too_small,minimum:s?a.exactLength.value:void 0,maximum:l?a.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:a.exactLength.message}),t.dirty())}if(a.minLength!==null&&r.data.length<a.minLength.value&&(U(r,{code:R.too_small,minimum:a.minLength.value,type:"array",inclusive:!0,exact:!1,message:a.minLength.message}),t.dirty()),a.maxLength!==null&&r.data.length>a.maxLength.value&&(U(r,{code:R.too_big,maximum:a.maxLength.value,type:"array",inclusive:!0,exact:!1,message:a.maxLength.message}),t.dirty()),r.common.async)return Promise.all([...r.data].map((l,s)=>a.type._parseAsync(new He(r,l,r.path,s)))).then(l=>Ie.mergeArray(t,l));const n=[...r.data].map((l,s)=>a.type._parseSync(new He(r,l,r.path,s)));return Ie.mergeArray(t,n)}get element(){return this._def.type}min(e,r){return new $e({...this._def,minLength:{value:e,message:G.toString(r)}})}max(e,r){return new $e({...this._def,maxLength:{value:e,message:G.toString(r)}})}length(e,r){return new $e({...this._def,exactLength:{value:e,message:G.toString(r)}})}nonempty(e){return this.min(1,e)}}$e.create=(o,e)=>new $e({type:o,minLength:null,maxLength:null,exactLength:null,typeName:le.ZodArray,...fe(e)});function ar(o){if(o instanceof Ce){const e={};for(const r in o.shape){const t=o.shape[r];e[r]=Ye.create(ar(t))}return new Ce({...o._def,shape:()=>e})}else return o instanceof $e?new $e({...o._def,type:ar(o.element)}):o instanceof Ye?Ye.create(ar(o.unwrap())):o instanceof ir?ir.create(ar(o.unwrap())):o instanceof er?er.create(o.items.map(e=>ar(e))):o}class Ce extends pe{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;const e=this._def.shape(),r=he.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==Y.object){const i=this._getOrReturnCtx(e);return U(i,{code:R.invalid_type,expected:Y.object,received:i.parsedType}),ne}const{status:t,ctx:a}=this._processInputParams(e),{shape:n,keys:l}=this._getCached(),s=[];if(!(this._def.catchall instanceof Ge&&this._def.unknownKeys==="strip"))for(const i in a.data)l.includes(i)||s.push(i);const c=[];for(const i of l){const f=n[i],T=a.data[i];c.push({key:{status:"valid",value:i},value:f._parse(new He(a,T,a.path,i)),alwaysSet:i in a.data})}if(this._def.catchall instanceof Ge){const i=this._def.unknownKeys;if(i==="passthrough")for(const f of s)c.push({key:{status:"valid",value:f},value:{status:"valid",value:a.data[f]}});else if(i==="strict")s.length>0&&(U(a,{code:R.unrecognized_keys,keys:s}),t.dirty());else if(i!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{const i=this._def.catchall;for(const f of s){const T=a.data[f];c.push({key:{status:"valid",value:f},value:i._parse(new He(a,T,a.path,f)),alwaysSet:f in a.data})}}return a.common.async?Promise.resolve().then(async()=>{const i=[];for(const f of c){const T=await f.key,w=await f.value;i.push({key:T,value:w,alwaysSet:f.alwaysSet})}return i}).then(i=>Ie.mergeObjectSync(t,i)):Ie.mergeObjectSync(t,c)}get shape(){return this._def.shape()}strict(e){return G.errToObj,new Ce({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(r,t)=>{const a=this._def.errorMap?.(r,t).message??t.defaultError;return r.code==="unrecognized_keys"?{message:G.errToObj(e).message??a}:{message:a}}}:{}})}strip(){return new Ce({...this._def,unknownKeys:"strip"})}passthrough(){return new Ce({...this._def,unknownKeys:"passthrough"})}extend(e){return new Ce({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new Ce({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:le.ZodObject})}setKey(e,r){return this.augment({[e]:r})}catchall(e){return new Ce({...this._def,catchall:e})}pick(e){const r={};for(const t of he.objectKeys(e))e[t]&&this.shape[t]&&(r[t]=this.shape[t]);return new Ce({...this._def,shape:()=>r})}omit(e){const r={};for(const t of he.objectKeys(this.shape))e[t]||(r[t]=this.shape[t]);return new Ce({...this._def,shape:()=>r})}deepPartial(){return ar(this)}partial(e){const r={};for(const t of he.objectKeys(this.shape)){const a=this.shape[t];e&&!e[t]?r[t]=a:r[t]=a.optional()}return new Ce({...this._def,shape:()=>r})}required(e){const r={};for(const t of he.objectKeys(this.shape))if(e&&!e[t])r[t]=this.shape[t];else{let n=this.shape[t];for(;n instanceof Ye;)n=n._def.innerType;r[t]=n}return new Ce({...this._def,shape:()=>r})}keyof(){return Ut(he.objectKeys(this.shape))}}Ce.create=(o,e)=>new Ce({shape:()=>o,unknownKeys:"strip",catchall:Ge.create(),typeName:le.ZodObject,...fe(e)});Ce.strictCreate=(o,e)=>new Ce({shape:()=>o,unknownKeys:"strict",catchall:Ge.create(),typeName:le.ZodObject,...fe(e)});Ce.lazycreate=(o,e)=>new Ce({shape:o,unknownKeys:"strip",catchall:Ge.create(),typeName:le.ZodObject,...fe(e)});class Or extends pe{_parse(e){const{ctx:r}=this._processInputParams(e),t=this._def.options;function a(n){for(const s of n)if(s.result.status==="valid")return s.result;for(const s of n)if(s.result.status==="dirty")return r.common.issues.push(...s.ctx.common.issues),s.result;const l=n.map(s=>new Ze(s.ctx.common.issues));return U(r,{code:R.invalid_union,unionErrors:l}),ne}if(r.common.async)return Promise.all(t.map(async n=>{const l={...r,common:{...r.common,issues:[]},parent:null};return{result:await n._parseAsync({data:r.data,path:r.path,parent:l}),ctx:l}})).then(a);{let n;const l=[];for(const c of t){const i={...r,common:{...r.common,issues:[]},parent:null},f=c._parseSync({data:r.data,path:r.path,parent:i});if(f.status==="valid")return f;f.status==="dirty"&&!n&&(n={result:f,ctx:i}),i.common.issues.length&&l.push(i.common.issues)}if(n)return r.common.issues.push(...n.ctx.common.issues),n.result;const s=l.map(c=>new Ze(c));return U(r,{code:R.invalid_union,unionErrors:s}),ne}}get options(){return this._def.options}}Or.create=(o,e)=>new Or({options:o,typeName:le.ZodUnion,...fe(e)});function Gr(o,e){const r=Be(o),t=Be(e);if(o===e)return{valid:!0,data:o};if(r===Y.object&&t===Y.object){const a=he.objectKeys(e),n=he.objectKeys(o).filter(s=>a.indexOf(s)!==-1),l={...o,...e};for(const s of n){const c=Gr(o[s],e[s]);if(!c.valid)return{valid:!1};l[s]=c.data}return{valid:!0,data:l}}else if(r===Y.array&&t===Y.array){if(o.length!==e.length)return{valid:!1};const a=[];for(let n=0;n<o.length;n++){const l=o[n],s=e[n],c=Gr(l,s);if(!c.valid)return{valid:!1};a.push(c.data)}return{valid:!0,data:a}}else return r===Y.date&&t===Y.date&&+o==+e?{valid:!0,data:o}:{valid:!1}}class Rr extends pe{_parse(e){const{status:r,ctx:t}=this._processInputParams(e),a=(n,l)=>{if($o(n)||$o(l))return ne;const s=Gr(n.value,l.value);return s.valid?((Fo(n)||Fo(l))&&r.dirty(),{status:r.value,value:s.data}):(U(t,{code:R.invalid_intersection_types}),ne)};return t.common.async?Promise.all([this._def.left._parseAsync({data:t.data,path:t.path,parent:t}),this._def.right._parseAsync({data:t.data,path:t.path,parent:t})]).then(([n,l])=>a(n,l)):a(this._def.left._parseSync({data:t.data,path:t.path,parent:t}),this._def.right._parseSync({data:t.data,path:t.path,parent:t}))}}Rr.create=(o,e,r)=>new Rr({left:o,right:e,typeName:le.ZodIntersection,...fe(r)});class er extends pe{_parse(e){const{status:r,ctx:t}=this._processInputParams(e);if(t.parsedType!==Y.array)return U(t,{code:R.invalid_type,expected:Y.array,received:t.parsedType}),ne;if(t.data.length<this._def.items.length)return U(t,{code:R.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),ne;!this._def.rest&&t.data.length>this._def.items.length&&(U(t,{code:R.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());const n=[...t.data].map((l,s)=>{const c=this._def.items[s]||this._def.rest;return c?c._parse(new He(t,l,t.path,s)):null}).filter(l=>!!l);return t.common.async?Promise.all(n).then(l=>Ie.mergeArray(r,l)):Ie.mergeArray(r,n)}get items(){return this._def.items}rest(e){return new er({...this._def,rest:e})}}er.create=(o,e)=>{if(!Array.isArray(o))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new er({items:o,typeName:le.ZodTuple,rest:null,...fe(e)})};class Ko extends pe{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:r,ctx:t}=this._processInputParams(e);if(t.parsedType!==Y.map)return U(t,{code:R.invalid_type,expected:Y.map,received:t.parsedType}),ne;const a=this._def.keyType,n=this._def.valueType,l=[...t.data.entries()].map(([s,c],i)=>({key:a._parse(new He(t,s,t.path,[i,"key"])),value:n._parse(new He(t,c,t.path,[i,"value"]))}));if(t.common.async){const s=new Map;return Promise.resolve().then(async()=>{for(const c of l){const i=await c.key,f=await c.value;if(i.status==="aborted"||f.status==="aborted")return ne;(i.status==="dirty"||f.status==="dirty")&&r.dirty(),s.set(i.value,f.value)}return{status:r.value,value:s}})}else{const s=new Map;for(const c of l){const i=c.key,f=c.value;if(i.status==="aborted"||f.status==="aborted")return ne;(i.status==="dirty"||f.status==="dirty")&&r.dirty(),s.set(i.value,f.value)}return{status:r.value,value:s}}}}Ko.create=(o,e,r)=>new Ko({valueType:e,keyType:o,typeName:le.ZodMap,...fe(r)});class _r extends pe{_parse(e){const{status:r,ctx:t}=this._processInputParams(e);if(t.parsedType!==Y.set)return U(t,{code:R.invalid_type,expected:Y.set,received:t.parsedType}),ne;const a=this._def;a.minSize!==null&&t.data.size<a.minSize.value&&(U(t,{code:R.too_small,minimum:a.minSize.value,type:"set",inclusive:!0,exact:!1,message:a.minSize.message}),r.dirty()),a.maxSize!==null&&t.data.size>a.maxSize.value&&(U(t,{code:R.too_big,maximum:a.maxSize.value,type:"set",inclusive:!0,exact:!1,message:a.maxSize.message}),r.dirty());const n=this._def.valueType;function l(c){const i=new Set;for(const f of c){if(f.status==="aborted")return ne;f.status==="dirty"&&r.dirty(),i.add(f.value)}return{status:r.value,value:i}}const s=[...t.data.values()].map((c,i)=>n._parse(new He(t,c,t.path,i)));return t.common.async?Promise.all(s).then(c=>l(c)):l(s)}min(e,r){return new _r({...this._def,minSize:{value:e,message:G.toString(r)}})}max(e,r){return new _r({...this._def,maxSize:{value:e,message:G.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}}_r.create=(o,e)=>new _r({valueType:o,minSize:null,maxSize:null,typeName:le.ZodSet,...fe(e)});class Xo extends pe{get schema(){return this._def.getter()}_parse(e){const{ctx:r}=this._processInputParams(e);return this._def.getter()._parse({data:r.data,path:r.path,parent:r})}}Xo.create=(o,e)=>new Xo({getter:o,typeName:le.ZodLazy,...fe(e)});class Jo extends pe{_parse(e){if(e.data!==this._def.value){const r=this._getOrReturnCtx(e);return U(r,{received:r.data,code:R.invalid_literal,expected:this._def.value}),ne}return{status:"valid",value:e.data}}get value(){return this._def.value}}Jo.create=(o,e)=>new Jo({value:o,typeName:le.ZodLiteral,...fe(e)});function Ut(o,e){return new dr({values:o,typeName:le.ZodEnum,...fe(e)})}class dr extends pe{_parse(e){if(typeof e.data!="string"){const r=this._getOrReturnCtx(e),t=this._def.values;return U(r,{expected:he.joinValues(t),received:r.parsedType,code:R.invalid_type}),ne}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){const r=this._getOrReturnCtx(e),t=this._def.values;return U(r,{received:r.data,code:R.invalid_enum_value,options:t}),ne}return Pe(e.data)}get options(){return this._def.values}get enum(){const e={};for(const r of this._def.values)e[r]=r;return e}get Values(){const e={};for(const r of this._def.values)e[r]=r;return e}get Enum(){const e={};for(const r of this._def.values)e[r]=r;return e}extract(e,r=this._def){return dr.create(e,{...this._def,...r})}exclude(e,r=this._def){return dr.create(this.options.filter(t=>!e.includes(t)),{...this._def,...r})}}dr.create=Ut;class Qo extends pe{_parse(e){const r=he.getValidEnumValues(this._def.values),t=this._getOrReturnCtx(e);if(t.parsedType!==Y.string&&t.parsedType!==Y.number){const a=he.objectValues(r);return U(t,{expected:he.joinValues(a),received:t.parsedType,code:R.invalid_type}),ne}if(this._cache||(this._cache=new Set(he.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){const a=he.objectValues(r);return U(t,{received:t.data,code:R.invalid_enum_value,options:a}),ne}return Pe(e.data)}get enum(){return this._def.values}}Qo.create=(o,e)=>new Qo({values:o,typeName:le.ZodNativeEnum,...fe(e)});class Mr extends pe{unwrap(){return this._def.type}_parse(e){const{ctx:r}=this._processInputParams(e);if(r.parsedType!==Y.promise&&r.common.async===!1)return U(r,{code:R.invalid_type,expected:Y.promise,received:r.parsedType}),ne;const t=r.parsedType===Y.promise?r.data:Promise.resolve(r.data);return Pe(t.then(a=>this._def.type.parseAsync(a,{path:r.path,errorMap:r.common.contextualErrorMap})))}}Mr.create=(o,e)=>new Mr({type:o,typeName:le.ZodPromise,...fe(e)});class sr extends pe{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===le.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){const{status:r,ctx:t}=this._processInputParams(e),a=this._def.effect||null,n={addIssue:l=>{U(t,l),l.fatal?r.abort():r.dirty()},get path(){return t.path}};if(n.addIssue=n.addIssue.bind(n),a.type==="preprocess"){const l=a.transform(t.data,n);if(t.common.async)return Promise.resolve(l).then(async s=>{if(r.value==="aborted")return ne;const c=await this._def.schema._parseAsync({data:s,path:t.path,parent:t});return c.status==="aborted"?ne:c.status==="dirty"||r.value==="dirty"?pr(c.value):c});{if(r.value==="aborted")return ne;const s=this._def.schema._parseSync({data:l,path:t.path,parent:t});return s.status==="aborted"?ne:s.status==="dirty"||r.value==="dirty"?pr(s.value):s}}if(a.type==="refinement"){const l=s=>{const c=a.refinement(s,n);if(t.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return s};if(t.common.async===!1){const s=this._def.schema._parseSync({data:t.data,path:t.path,parent:t});return s.status==="aborted"?ne:(s.status==="dirty"&&r.dirty(),l(s.value),{status:r.value,value:s.value})}else return this._def.schema._parseAsync({data:t.data,path:t.path,parent:t}).then(s=>s.status==="aborted"?ne:(s.status==="dirty"&&r.dirty(),l(s.value).then(()=>({status:r.value,value:s.value}))))}if(a.type==="transform")if(t.common.async===!1){const l=this._def.schema._parseSync({data:t.data,path:t.path,parent:t});if(!lr(l))return ne;const s=a.transform(l.value,n);if(s instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:s}}else return this._def.schema._parseAsync({data:t.data,path:t.path,parent:t}).then(l=>lr(l)?Promise.resolve(a.transform(l.value,n)).then(s=>({status:r.value,value:s})):ne);he.assertNever(a)}}sr.create=(o,e,r)=>new sr({schema:o,typeName:le.ZodEffects,effect:e,...fe(r)});sr.createWithPreprocess=(o,e,r)=>new sr({schema:e,effect:{type:"preprocess",transform:o},typeName:le.ZodEffects,...fe(r)});class Ye extends pe{_parse(e){return this._getType(e)===Y.undefined?Pe(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}Ye.create=(o,e)=>new Ye({innerType:o,typeName:le.ZodOptional,...fe(e)});class ir extends pe{_parse(e){return this._getType(e)===Y.null?Pe(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}ir.create=(o,e)=>new ir({innerType:o,typeName:le.ZodNullable,...fe(e)});class Kr extends pe{_parse(e){const{ctx:r}=this._processInputParams(e);let t=r.data;return r.parsedType===Y.undefined&&(t=this._def.defaultValue()),this._def.innerType._parse({data:t,path:r.path,parent:r})}removeDefault(){return this._def.innerType}}Kr.create=(o,e)=>new Kr({innerType:o,typeName:le.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...fe(e)});class Xr extends pe{_parse(e){const{ctx:r}=this._processInputParams(e),t={...r,common:{...r.common,issues:[]}},a=this._def.innerType._parse({data:t.data,path:t.path,parent:{...t}});return jr(a)?a.then(n=>({status:"valid",value:n.status==="valid"?n.value:this._def.catchValue({get error(){return new Ze(t.common.issues)},input:t.data})})):{status:"valid",value:a.status==="valid"?a.value:this._def.catchValue({get error(){return new Ze(t.common.issues)},input:t.data})}}removeCatch(){return this._def.innerType}}Xr.create=(o,e)=>new Xr({innerType:o,typeName:le.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...fe(e)});class et extends pe{_parse(e){if(this._getType(e)!==Y.nan){const t=this._getOrReturnCtx(e);return U(t,{code:R.invalid_type,expected:Y.nan,received:t.parsedType}),ne}return{status:"valid",value:e.data}}}et.create=o=>new et({typeName:le.ZodNaN,...fe(o)});class Vd extends pe{_parse(e){const{ctx:r}=this._processInputParams(e),t=r.data;return this._def.type._parse({data:t,path:r.path,parent:r})}unwrap(){return this._def.type}}class oo extends pe{_parse(e){const{status:r,ctx:t}=this._processInputParams(e);if(t.common.async)return(async()=>{const n=await this._def.in._parseAsync({data:t.data,path:t.path,parent:t});return n.status==="aborted"?ne:n.status==="dirty"?(r.dirty(),pr(n.value)):this._def.out._parseAsync({data:n.value,path:t.path,parent:t})})();{const a=this._def.in._parseSync({data:t.data,path:t.path,parent:t});return a.status==="aborted"?ne:a.status==="dirty"?(r.dirty(),{status:"dirty",value:a.value}):this._def.out._parseSync({data:a.value,path:t.path,parent:t})}}static create(e,r){return new oo({in:e,out:r,typeName:le.ZodPipeline})}}class Jr extends pe{_parse(e){const r=this._def.innerType._parse(e),t=a=>(lr(a)&&(a.value=Object.freeze(a.value)),a);return jr(r)?r.then(a=>t(a)):t(r)}unwrap(){return this._def.innerType}}Jr.create=(o,e)=>new Jr({innerType:o,typeName:le.ZodReadonly,...fe(e)});var le;(function(o){o.ZodString="ZodString",o.ZodNumber="ZodNumber",o.ZodNaN="ZodNaN",o.ZodBigInt="ZodBigInt",o.ZodBoolean="ZodBoolean",o.ZodDate="ZodDate",o.ZodSymbol="ZodSymbol",o.ZodUndefined="ZodUndefined",o.ZodNull="ZodNull",o.ZodAny="ZodAny",o.ZodUnknown="ZodUnknown",o.ZodNever="ZodNever",o.ZodVoid="ZodVoid",o.ZodArray="ZodArray",o.ZodObject="ZodObject",o.ZodUnion="ZodUnion",o.ZodDiscriminatedUnion="ZodDiscriminatedUnion",o.ZodIntersection="ZodIntersection",o.ZodTuple="ZodTuple",o.ZodRecord="ZodRecord",o.ZodMap="ZodMap",o.ZodSet="ZodSet",o.ZodFunction="ZodFunction",o.ZodLazy="ZodLazy",o.ZodLiteral="ZodLiteral",o.ZodEnum="ZodEnum",o.ZodEffects="ZodEffects",o.ZodNativeEnum="ZodNativeEnum",o.ZodOptional="ZodOptional",o.ZodNullable="ZodNullable",o.ZodDefault="ZodDefault",o.ZodCatch="ZodCatch",o.ZodPromise="ZodPromise",o.ZodBranded="ZodBranded",o.ZodPipeline="ZodPipeline",o.ZodReadonly="ZodReadonly"})(le||(le={}));Ge.create;$e.create;Or.create;Rr.create;er.create;dr.create;Mr.create;Ye.create;ir.create;function to(o){if(!(o instanceof Ce))return o&&typeof o=="object"&&"_def"in o?console.error('ImportCSV: Schema detection failed. This usually means multiple Zod versions are installed. Ensure you have only one version: run "npm ls zod" to check.'):console.warn("zodSchemaToColumns: Only z.object() schemas supported"),[];const e=o.shape;return Object.entries(e).map(([r,t])=>{const a=Dd(t),n=jd(t,r),{type:l,options:s}=Td(t),c=Od(t),i={id:r,label:Rd(r),type:l};return a.length>0&&(i.validators=a),n.length>0&&(i.transformations=n),s&&(i.options=s),c&&(i.description=c),i})}function Dd(o){const e=[];let r=o;for(;r._def.typeName==="ZodOptional"||r._def.typeName==="ZodNullable";)r=r._def.innerType;o._def.typeName!=="ZodOptional"&&e.push({type:"required"});const t=r._def.checks||[];for(const a of t)switch(a.kind){case"min":r._def.typeName==="ZodString"?e.push({type:"min_length",value:a.value,message:a.message}):r._def.typeName==="ZodNumber"&&e.push({type:"min",value:a.value,message:a.message});break;case"max":r._def.typeName==="ZodString"?e.push({type:"max_length",value:a.value,message:a.message}):r._def.typeName==="ZodNumber"&&e.push({type:"max",value:a.value,message:a.message});break;case"regex":e.push({type:"regex",pattern:a.regex.source,message:a.message});break}return e}function jd(o,e){const r=[];let t=o;const a=[];for(;t;)if(t._def.typeName==="ZodEffects"&&t._def.effect?.type==="transform"&&a.push(t._def.effect),t._def.innerType)t=t._def.innerType;else if(t._def.schema)t=t._def.schema;else break;for(const n of a){if(!n)continue;const l=n.transform?.toString()||"";l.includes(".trim()")&&r.push({type:"trim"}),l.includes(".toLowerCase()")&&r.push({type:"lowercase"}),l.includes(".toUpperCase()")&&r.push({type:"uppercase"}),r.length===0&&n.transform&&console.warn(`Unable to convert Zod transform for field "${e}". Use Column transformations for full support.`)}return r}function Td(o){let e=o;for(;e._def.typeName==="ZodOptional"||e._def.typeName==="ZodNullable";)e=e._def.innerType;const r=e._def.typeName;return(e._def.checks||[]).some(l=>l.kind==="email")?{type:"email"}:r==="ZodEnum"?{type:"select",options:e._def.values}:{type:{ZodString:"string",ZodNumber:"number",ZodBoolean:"string",ZodDate:"date"}[r]||"string"}}function Od(o){let e=o;for(;e;){if(e._def.description)return e._def.description;if(e._def.innerType)e=e._def.innerType;else break}}function Rd(o){return o.replace(/([A-Z])/g," $1").replace(/_/g," ").replace(/^./,e=>e.toUpperCase()).trim()}const Wt=Re((o,e)=>{const{isModal:r=!0,modalIsOpen:t=!0,modalOnCloseTriggered:a=()=>null,modalCloseOnOutsideClick:n,theme:l,darkMode:s=!1,primaryColor:c="#2563eb",className:i,classNames:f,onComplete:T,customStyles:w,showDownloadTemplateButton:y,skipHeaderRowSelection:v,invalidRowHandling:x,includeUnmatchedColumns:E,language:k,customTranslations:j,importerKey:F,backendUrl:de,user:me,metadata:K,demoData:$,schema:b,columns:u,...p}=o,C=e??h.useRef(null),[_,O]=h.useState(t),Z=h.useMemo(()=>{if(b){u&&console.warn("ImportCSV: Both `schema` and `columns` props provided. Using `schema`. The `columns` prop is deprecated and will be removed in v2.0.");const D=to(b);return D.length===0&&console.error("ImportCSV: Failed to extract columns from schema. Ensure schema is z.object({...}) and you have a single Zod version installed."),D}return u&&console.warn("ImportCSV: The `columns` prop is deprecated. Use `schema` prop with Zod schemas instead. See migration guide: https://docs.importcsv.com/guides/zod-schemas"),u},[b,u]);h.useEffect(()=>{O(t)},[t]);const H="CSVImporter",te=s?`${H}-dark`:`${H}-light`,A=["importcsv","csv-importer",`${H}-${r?"modal":"div"}`,te,i,f?.root].filter(D=>D).join(" "),N=rd(D=>D.setTheme);h.useEffect(()=>{N(s?"dark":"light")},[s]),h.useEffect(()=>{if(c&&al(c)&&C?.current){const D=C.current;D&&(D.style.setProperty("--color-primary",c),D.style.setProperty("--color-primary-hover",gr(c,20)))}},[c,C]);const W=()=>{O(!1),a()},se={ref:C,className:A,"data-theme":s?"dark":"light",style:{colorScheme:s?"dark":"light"},...p},m=()=>d.jsxDEV(Ml,{theme:s?"dark":l,primaryColor:c,customStyles:w,targetElement:C?.current,children:d.jsxDEV(jl,{isModal:r,modalIsOpen:t,modalOnCloseTriggered:a,modalCloseOnOutsideClick:n,darkMode:s,primaryColor:c,className:f?.content||i,onComplete:T,customStyles:w,showDownloadTemplateButton:y,skipHeaderRowSelection:v,invalidRowHandling:x,includeUnmatchedColumns:E,language:k,customTranslations:j,importerKey:F,backendUrl:de,user:me,metadata:K,demoData:$,columns:Z,schema:b},void 0,!1,{fileName:"/frontend/src/components/CSVImporter/index.tsx",lineNumber:137,columnNumber:7},void 0)},void 0,!1,{fileName:"/frontend/src/components/CSVImporter/index.tsx",lineNumber:131,columnNumber:5},void 0);return r?d.jsxDEV(od,{isOpen:_,onClose:W,closeOnOutsideClick:n,className:A,contentClassName:"csv-importer-modal-container",children:d.jsxDEV("div",{...se,children:d.jsxDEV(m,{},void 0,!1,{fileName:"/frontend/src/components/CSVImporter/index.tsx",lineNumber:173,columnNumber:9},void 0)},void 0,!1,{fileName:"/frontend/src/components/CSVImporter/index.tsx",lineNumber:172,columnNumber:7},void 0)},void 0,!1,{fileName:"/frontend/src/components/CSVImporter/index.tsx",lineNumber:165,columnNumber:5},void 0):d.jsxDEV("div",{...se,children:d.jsxDEV(m,{},void 0,!1,{fileName:"/frontend/src/components/CSVImporter/index.tsx",lineNumber:178,columnNumber:7},void 0)},void 0,!1,{fileName:"/frontend/src/components/CSVImporter/index.tsx",lineNumber:177,columnNumber:5},void 0)}),Bt=aa(null);function qt({children:o,schema:e,columns:r,onComplete:t,data:a}){const n=h.useMemo(()=>e?to(e):r||[],[e,r]),l=h.useMemo(()=>i=>e?e.safeParse(i):{success:!0,data:i},[e]),s=h.useMemo(()=>({columns:n,schema:e,validate:l,onComplete:t,data:a}),[n,e,l,t,a]),c=Bt.Provider;return d.jsxDEV(c,{value:s,children:o},void 0,!1,{fileName:"/frontend/src/headless/root.tsx",lineNumber:73,columnNumber:10},this)}function ao(){const o=h.useContext(Bt);if(!o)throw new Error("useCSV must be used within a CSV.Root component");return o}function Md(o){const e=o.trim().split(`
|
|
150
|
+
`);if(e.length===0)return[];const r=e[0].split(",").map(a=>a.trim()),t=[];for(let a=1;a<e.length;a++){const n=e[a].split(",").map(s=>s.trim()),l={};r.forEach((s,c)=>{l[s]=n[c]||""}),t.push(l)}return t}const Wr=({onUpload:o,onError:e,placeholder:r,maxSize:t,acceptedFormats:a=["csv"],className:n,theme:l="light",appearance:s})=>{const[c,i]=h.useState(!1),[f,T]=h.useState(!1),w=h.useCallback(async E=>{i(!0);try{const k=E.name.split(".").pop()?.toLowerCase();if(!a.includes(k||"")){e?.({code:"INVALID_FORMAT",message:`Invalid file format. Accepted formats: ${a.join(", ")}`}),i(!1);return}if(t&&E.size>t){e?.({code:"FILE_TOO_LARGE",message:`File size exceeds maximum allowed size of ${t} bytes`}),i(!1);return}const j=await E.text(),F=Md(j);if(F.length===0){e?.({code:"EMPTY_FILE",message:"CSV file is empty"}),i(!1);return}o({rows:F})}catch{e?.({code:"PARSE_ERROR",message:"Failed to parse CSV file"})}finally{i(!1)}},[o,e,t,a]),y={"text/csv":[".csv"]};a.includes("tsv")&&(y["text/tab-separated-values"]=[".tsv"]),a.includes("txt")&&(y["text/plain"]=[".txt"]);const v=ie("w-full flex justify-center items-center flex-col rounded-lg transition-all duration-200","min-h-[320px] py-12 px-10 border-2 border-dashed",l==="dark"?"bg-gray-800 border-gray-600 hover:border-gray-500":"bg-gray-50 border-gray-300 hover:border-gray-400",f&&"border-blue-500 bg-blue-50",c&&"opacity-50 cursor-not-allowed",n),x=s?.variables?{borderRadius:s.variables.borderRadius}:void 0;return d.jsxDEV("div",{className:v,style:x,children:d.jsxDEV(Lt,{onFileSelect:w,accept:y,disabled:c,loading:c,className:"w-full h-full flex flex-col items-center justify-center",children:[d.jsxDEV("div",{className:"mb-4 p-4 rounded-full bg-white",children:d.jsxDEV(ro,{size:48,className:"text-gray-400"},void 0,!1,{fileName:"/frontend/src/components/Uploader.tsx",lineNumber:150,columnNumber:11},void 0)},void 0,!1,{fileName:"/frontend/src/components/Uploader.tsx",lineNumber:149,columnNumber:9},void 0),c?d.jsxDEV("p",{className:"text-lg font-medium text-gray-700",children:"Parsing CSV..."},void 0,!1,{fileName:"/frontend/src/components/Uploader.tsx",lineNumber:154,columnNumber:11},void 0):d.jsxDEV(d.Fragment,{children:[d.jsxDEV("p",{className:"text-lg font-medium text-gray-700 mb-2",children:r||"Drag and drop your CSV file here"},void 0,!1,{fileName:"/frontend/src/components/Uploader.tsx",lineNumber:157,columnNumber:13},void 0),d.jsxDEV("p",{className:"text-sm text-gray-500",children:"or click to browse"},void 0,!1,{fileName:"/frontend/src/components/Uploader.tsx",lineNumber:160,columnNumber:13},void 0)]},void 0,!0,{fileName:"/frontend/src/components/Uploader.tsx",lineNumber:156,columnNumber:11},void 0),d.jsxDEV("label",{className:"sr-only",htmlFor:"file-upload",children:"Choose file to upload"},void 0,!1,{fileName:"/frontend/src/components/Uploader.tsx",lineNumber:167,columnNumber:9},void 0)]},void 0,!0,{fileName:"/frontend/src/components/Uploader.tsx",lineNumber:141,columnNumber:7},void 0)},void 0,!1,{fileName:"/frontend/src/components/Uploader.tsx",lineNumber:140,columnNumber:5},void 0)},Id=({schema:o,columns:e,onUpload:r,...t})=>{if(!o&&!e)return d.jsxDEV(Wr,{onUpload:r,...t},void 0,!1,{fileName:"/frontend/src/components/Uploader.tsx",lineNumber:184,columnNumber:12},void 0);try{return d.jsxDEV(Wr,{onUpload:r,...t},void 0,!1,{fileName:"/frontend/src/components/Uploader.tsx",lineNumber:190,columnNumber:12},void 0)}catch{return d.jsxDEV(qt,{schema:o,columns:e,onComplete:n=>r({rows:n}),children:d.jsxDEV(Wr,{onUpload:r,...t},void 0,!1,{fileName:"/frontend/src/components/Uploader.tsx",lineNumber:199,columnNumber:9},void 0)},void 0,!1,{fileName:"/frontend/src/components/Uploader.tsx",lineNumber:194,columnNumber:7},void 0)}};function zd(o,e){const r=o.length>e.length?o:e,t=o.length>e.length?e:o;if(r.length===0)return 1;const a=Ad(r.toLowerCase(),t.toLowerCase());return(r.length-a)/r.length}function Ad(o,e){const r=[];for(let t=0;t<=o.length;t++){let a=t;for(let n=0;n<=e.length;n++)if(t===0)r[n]=n;else if(n>0){let l=r[n-1];o.charAt(t-1)!==e.charAt(n-1)&&(l=Math.min(Math.min(l,a),r[n])+1),r[n-1]=a,a=l}t>0&&(r[e.length]=a)}return r[e.length]}const Pd=({schema:o,columns:e,data:r,onComplete:t,onError:a,autoSuggest:n=!0,showPreview:l=!1,previewRows:s=5,autoSkipIfPerfectMatch:c=!1,className:i,theme:f="light",appearance:T})=>{const w=h.useMemo(()=>{if(o&&o instanceof Ce){const u=o.shape;return Object.entries(u).map(([p,C])=>({id:p,label:p.charAt(0).toUpperCase()+p.slice(1),required:!C.isOptional?.()}))}return e||[]},[o,e]),y=h.useMemo(()=>!r.rows||r.rows.length===0?[]:Object.keys(r.rows[0]),[r]),[v,x]=h.useState({}),[E,k]=h.useState([]),[j,F]=h.useState(null);h.useEffect(()=>{if(!n||y.length===0)return;const u={};w.forEach(p=>{let C="",_=0;y.forEach(O=>{const Z=zd(p.id,O);Z>_&&(_=Z,C=O)}),_>.5&&(u[p.id]=C)}),x(u)},[w,y,n]),h.useEffect(()=>{if(!c)return;if(w.every(p=>y.includes(p.id))){const p={};w.forEach(C=>{p[C.id]=C.id}),t(p)}},[w,y,c,t]),h.useEffect(()=>{y.length===0&&a?.({code:"NO_COLUMNS",message:"No columns found in CSV data"})},[y,a]);const de=(u,p)=>{x(C=>({...C,[u]:p})),k([]),F(null)},me=()=>{const u=[];if(w.forEach(_=>{_.required&&!v[_.id]&&u.push(`${_.label||_.id} is required and must be mapped`)}),u.length>0){k(u);return}const p=Object.values(v).filter(Boolean);p.length!==new Set(p).size&&F("Warning: Same column mapped multiple times"),t(v)},K=h.useMemo(()=>!l||!r.rows?[]:r.rows.slice(0,s).map(u=>{const p={};return Object.entries(v).forEach(([C,_])=>{_&&(p[C]=u[_])}),p}),[r,v,l,s]);if(r.rows.length===0)return d.jsxDEV("div",{className:ie("p-8 text-center",f==="dark"&&"bg-gray-800 text-white"),children:d.jsxDEV("p",{className:"text-gray-500",children:"No data available to map"},void 0,!1,{fileName:"/frontend/src/components/ColumnMapper.tsx",lineNumber:204,columnNumber:9},void 0)},void 0,!1,{fileName:"/frontend/src/components/ColumnMapper.tsx",lineNumber:203,columnNumber:7},void 0);const $=ie("p-6 rounded-lg",f==="dark"?"bg-gray-800 text-white theme-dark":"bg-white",i),b=T?.variables?.colorPrimary?{backgroundColor:T.variables.colorPrimary}:void 0;return d.jsxDEV("div",{className:$,children:[d.jsxDEV("h2",{className:"text-2xl font-semibold mb-6",children:"Map Your Columns"},void 0,!1,{fileName:"/frontend/src/components/ColumnMapper.tsx",lineNumber:221,columnNumber:7},void 0),d.jsxDEV("div",{className:"space-y-4 mb-6",children:w.map(u=>d.jsxDEV("div",{className:"flex items-center gap-4",children:[d.jsxDEV("label",{htmlFor:`mapping-${u.id}`,className:"w-1/3 font-medium",children:[u.label||u.id,u.required&&d.jsxDEV("span",{className:"text-red-500 ml-1",children:"*"},void 0,!1,{fileName:"/frontend/src/components/ColumnMapper.tsx",lineNumber:232,columnNumber:32},void 0)]},void 0,!0,{fileName:"/frontend/src/components/ColumnMapper.tsx",lineNumber:227,columnNumber:13},void 0),d.jsxDEV("select",{id:`mapping-${u.id}`,"aria-label":u.label||u.id,value:v[u.id]||"",onChange:p=>de(u.id,p.target.value),className:"flex-1 px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500",children:[d.jsxDEV("option",{value:"",children:"-- Select Column --"},void 0,!1,{fileName:"/frontend/src/components/ColumnMapper.tsx",lineNumber:242,columnNumber:15},void 0),y.map(p=>d.jsxDEV("option",{value:p,children:p},p,!1,{fileName:"/frontend/src/components/ColumnMapper.tsx",lineNumber:244,columnNumber:17},void 0))]},void 0,!0,{fileName:"/frontend/src/components/ColumnMapper.tsx",lineNumber:235,columnNumber:13},void 0)]},u.id,!0,{fileName:"/frontend/src/components/ColumnMapper.tsx",lineNumber:226,columnNumber:11},void 0))},void 0,!1,{fileName:"/frontend/src/components/ColumnMapper.tsx",lineNumber:224,columnNumber:7},void 0),E.length>0&&d.jsxDEV("div",{className:"mb-4 p-4 bg-red-50 border border-red-200 rounded-md",children:[d.jsxDEV("p",{className:"text-red-800 font-medium mb-2",children:"Please fix the following errors:"},void 0,!1,{fileName:"/frontend/src/components/ColumnMapper.tsx",lineNumber:256,columnNumber:11},void 0),d.jsxDEV("ul",{className:"list-disc list-inside text-red-700",children:E.map((u,p)=>d.jsxDEV("li",{children:u},p,!1,{fileName:"/frontend/src/components/ColumnMapper.tsx",lineNumber:259,columnNumber:15},void 0))},void 0,!1,{fileName:"/frontend/src/components/ColumnMapper.tsx",lineNumber:257,columnNumber:11},void 0)]},void 0,!0,{fileName:"/frontend/src/components/ColumnMapper.tsx",lineNumber:255,columnNumber:9},void 0),j&&d.jsxDEV("div",{className:"mb-4 p-4 bg-yellow-50 border border-yellow-200 rounded-md",children:d.jsxDEV("p",{className:"text-yellow-800",children:j},void 0,!1,{fileName:"/frontend/src/components/ColumnMapper.tsx",lineNumber:268,columnNumber:11},void 0)},void 0,!1,{fileName:"/frontend/src/components/ColumnMapper.tsx",lineNumber:267,columnNumber:9},void 0),l&&K.length>0&&d.jsxDEV("div",{className:"mb-6",children:[d.jsxDEV("h3",{className:"text-lg font-medium mb-3",children:"Preview"},void 0,!1,{fileName:"/frontend/src/components/ColumnMapper.tsx",lineNumber:275,columnNumber:11},void 0),d.jsxDEV("div",{className:"overflow-x-auto",children:d.jsxDEV("table",{className:"min-w-full border border-gray-200",children:[d.jsxDEV("thead",{className:"bg-gray-50",children:d.jsxDEV("tr",{children:w.map(u=>d.jsxDEV("th",{className:"px-4 py-2 border-b text-left",children:u.label||u.id},u.id,!1,{fileName:"/frontend/src/components/ColumnMapper.tsx",lineNumber:281,columnNumber:21},void 0))},void 0,!1,{fileName:"/frontend/src/components/ColumnMapper.tsx",lineNumber:279,columnNumber:17},void 0)},void 0,!1,{fileName:"/frontend/src/components/ColumnMapper.tsx",lineNumber:278,columnNumber:15},void 0),d.jsxDEV("tbody",{children:K.map((u,p)=>d.jsxDEV("tr",{className:"border-b",children:w.map(C=>d.jsxDEV("td",{className:"px-4 py-2",children:u[C.id]||"-"},C.id,!1,{fileName:"/frontend/src/components/ColumnMapper.tsx",lineNumber:291,columnNumber:23},void 0))},p,!1,{fileName:"/frontend/src/components/ColumnMapper.tsx",lineNumber:289,columnNumber:19},void 0))},void 0,!1,{fileName:"/frontend/src/components/ColumnMapper.tsx",lineNumber:287,columnNumber:15},void 0)]},void 0,!0,{fileName:"/frontend/src/components/ColumnMapper.tsx",lineNumber:277,columnNumber:13},void 0)},void 0,!1,{fileName:"/frontend/src/components/ColumnMapper.tsx",lineNumber:276,columnNumber:11},void 0)]},void 0,!0,{fileName:"/frontend/src/components/ColumnMapper.tsx",lineNumber:274,columnNumber:9},void 0),d.jsxDEV("button",{onClick:me,style:b,className:"px-6 py-2 bg-blue-600 text-white rounded-md hover:bg-blue-700 focus:outline-none focus:ring-2 focus:ring-blue-500",children:"Continue"},void 0,!1,{fileName:"/frontend/src/components/ColumnMapper.tsx",lineNumber:304,columnNumber:7},void 0)]},void 0,!0,{fileName:"/frontend/src/components/ColumnMapper.tsx",lineNumber:220,columnNumber:5},void 0)};function Ld({children:o}){const e=ao(),[r,t]=h.useState([]),[a,n]=h.useState(!1),l=h.useCallback(async()=>{n(!0);const s=[];try{e.schema&&e.data?.rows&&e.data.rows.forEach((c,i)=>{const f=e.schema.safeParse(c);f.success||f.error.issues.forEach(T=>{s.push({row:i,column:T.path.join("."),message:T.message})})})}catch(c){console.error("Validation error:",c)}finally{t(s),n(!1)}return s},[e.schema,e.data]);return o({errors:r,validate:l,isValidating:a})}function wr({children:o,...e}){const r=da(o);if(r.length===0)return null;const t=r[0];if(!t||typeof t!="object"||!("type"in t))return null;const a=t.props||{},n=(...f)=>{a.onClick&&typeof a.onClick=="function"&&a.onClick(...f),e.onClick&&typeof e.onClick=="function"&&e.onClick(...f)},l=typeof a.className=="string"?a.className:"",s=typeof e.className=="string"?e.className:"",c=[l,s].filter(Boolean).join(" "),i={...e,...a,onClick:n,className:c||void 0};return na(t,i)}function $d({asChild:o=!1,children:e,onClick:r,...t}){const a=h.useRef(null),n=()=>{a.current&&a.current.click(),r?.()},l=o?wr:"button";return d.jsxDEV("div",{children:[d.jsxDEV(l,{onClick:n,...t,children:e},void 0,!1,{fileName:"/frontend/src/headless/upload-trigger.tsx",lineNumber:55,columnNumber:7},this),d.jsxDEV("input",{ref:a,type:"file",accept:".csv,.txt",style:{display:"none"},"aria-hidden":"true"},void 0,!1,{fileName:"/frontend/src/headless/upload-trigger.tsx",lineNumber:58,columnNumber:7},this)]},void 0,!0,{fileName:"/frontend/src/headless/upload-trigger.tsx",lineNumber:54,columnNumber:5},this)}function Fd({asChild:o=!1,children:e,onClick:r,...t}){const a=()=>{r?.()},n=o?wr:"button";return d.jsxDEV(n,{onClick:a,...t,children:e},void 0,!1,{fileName:"/frontend/src/headless/next-button.tsx",lineNumber:47,columnNumber:5},this)}function Zd({asChild:o=!1,children:e,onClick:r,...t}){const a=()=>{r?.()},n=o?wr:"button";return d.jsxDEV(n,{onClick:a,...t,children:e},void 0,!1,{fileName:"/frontend/src/headless/back-button.tsx",lineNumber:47,columnNumber:5},this)}function Ud({asChild:o=!1,children:e,onClick:r,...t}){const a=ao(),n=()=>{a?.data?.rows&&a.onComplete(a.data.rows),r?.()},l=o?wr:"button";return d.jsxDEV(l,{onClick:n,...t,children:e},void 0,!1,{fileName:"/frontend/src/headless/submit-button.tsx",lineNumber:54,columnNumber:5},this)}const Wd=Object.freeze(Object.defineProperty({__proto__:null,BackButton:Zd,NextButton:Fd,Root:qt,Slot:wr,SubmitButton:Ud,UploadTrigger:$d,Validator:Ld,useCSV:ao,zodSchemaToColumns:to},Symbol.toStringTag,{value:"Module"})),Bd=`@import"https://fonts.googleapis.com/css2?family=Geist:wght@100;200;300;400;500;600;700;800;900&display=swap";@import"https://fonts.googleapis.com/css2?family=Geist:wght@100;200;300;400;500;600;700;800;900&display=swap";.Errors-module-module__errors___fyHDX{color:var(--color-text-error);margin:var(--m-xxs) 0}.Errors-module-module__errors___fyHDX p{margin:0;display:flex;align-items:center;gap:var(--m-xxs);text-align:left}.Errors-module-module__centered___RHKZi{display:flex;justify-content:center;align-items:center;flex-direction:column;height:100%}.Validation-module-module__baseContainer___-0AsU,.Validation-module-module__flexContainer___cBods{width:100%;max-width:100%;padding:1.5rem}@media (max-width: 768px){.Validation-module-module__baseContainer___-0AsU,.Validation-module-module__flexContainer___cBods{padding:1rem}}@media (max-width: 640px){.Validation-module-module__baseContainer___-0AsU,.Validation-module-module__flexContainer___cBods{padding:.75rem}}.Validation-module-module__flexContainer___cBods{display:flex;flex-direction:column;min-height:0;min-width:0}.Validation-module-module__scrollableContent___d0ytT{flex:1;display:flex;flex-direction:column;overflow:visible;max-width:100%;min-width:0}.Validation-module-module__tableContainer___jRikO{flex:1;overflow-x:auto;overflow-y:auto;max-width:100%;-webkit-overflow-scrolling:touch}.Validation-module-module__tableContainer___jRikO table{min-width:100%;width:-moz-max-content;width:max-content}.Validation-module-module__headerSection___drcpg,.Validation-module-module__header___ocGI2{padding:1rem;border-bottom:1px solid #e5e7eb}.Validation-module-module__headerSection___drcpg h2,.Validation-module-module__header___ocGI2 h2{font-size:1.25rem;font-weight:600;color:#111827;margin:0 0 .5rem}.Validation-module-module__headerSection___drcpg p,.Validation-module-module__header___ocGI2 p{font-size:.875rem;color:#6b7280;margin:0}.Validation-module-module__toolbar___-DCj6{padding:.75rem 1rem;background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;margin-bottom:1rem;box-shadow:0 1px 2px #0000000d}.Validation-module-module__validationContainer___jrlPR{display:flex;flex-direction:column;width:100%;min-height:600px;max-height:calc(100vh - 2rem);height:calc(100vh - 2rem);max-width:100%;box-sizing:border-box;font-family:Geist,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:1rem 0}.Validation-module-module__header___ocGI2{flex-shrink:0;padding:1.5rem 1.5rem 0}@media (max-width: 640px){.Validation-module-module__header___ocGI2{padding:1rem 1rem 0}.Validation-module-module__header___ocGI2 h2{font-size:1.125rem}.Validation-module-module__header___ocGI2 p{font-size:.8125rem}}.Validation-module-module__toolbarSection___Q0YdW{flex-shrink:0;padding:1rem 1.5rem 0;background:transparent}@media (max-width: 640px){.Validation-module-module__toolbarSection___Q0YdW{padding:.75rem 1rem 0}}.Validation-module-module__scrollableSection___nwC-B{flex:1 1 auto;min-width:0;overflow:auto;min-height:200px;margin:1rem 1.5rem 0;background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f;-webkit-overflow-scrolling:touch}.Validation-module-module__scrollableSection___nwC-B>table{border-collapse:collapse}.Validation-module-module__scrollableSection___nwC-B>table thead{position:sticky;top:0;z-index:10}.Validation-module-module__scrollableSection___nwC-B>table thead th{background:#f9fafb;border-bottom:2px solid #e5e7eb}.Validation-module-module__scrollableSection___nwC-B>table th:first-child,.Validation-module-module__scrollableSection___nwC-B>table td:first-child{position:sticky;left:0;z-index:5}.Validation-module-module__scrollableSection___nwC-B>table thead th:first-child{z-index:11}@media (max-width: 640px){.Validation-module-module__scrollableSection___nwC-B{margin:.75rem}}.Validation-module-module__validationContent___hn2Dz{padding:1rem 0;width:100%;max-width:100%;overflow:visible}.Validation-module-module__toolbar___-DCj6{background:transparent;border:1px solid #e5e7eb;border-radius:.5rem;margin-bottom:0;margin-top:.5rem;box-shadow:0 1px 2px #0000000d}@media (max-width: 640px){.Validation-module-module__toolbar___-DCj6{padding:.75rem}.Validation-module-module__toolbar___-DCj6>div{flex-direction:column;gap:.75rem;align-items:stretch}}.Validation-module-module__errorBadge___yeHS0{display:inline-flex;align-items:center;padding:.25rem .625rem;background-color:#fee2e2;border:1px solid #fca5a5;border-radius:.375rem;font-size:.875rem;font-weight:600;color:#dc2626;animation:Validation-module-module__pulse___d-MKR 2s infinite}@keyframes Validation-module-module__pulse___d-MKR{0%,to{opacity:1}50%{opacity:.85}}.Validation-module-module__rowCount___h-OSk{font-size:.75rem;color:#9ca3af;font-weight:400}.Validation-module-module__tabFilter___DV34i{display:inline-flex;align-items:center;background:#f3f4f6;padding:.125rem;border-radius:2rem}@media (max-width: 640px){.Validation-module-module__tabFilter___DV34i{width:100%;justify-content:space-between}}.Validation-module-module__tab___JPIkM{position:relative;display:inline-flex;align-items:center;gap:.375rem;padding:.5rem 1.25rem;border:none;background:transparent;color:#6b7280;font-size:.875rem;font-weight:500;border-radius:1.75rem;cursor:pointer;transition:all .2s ease;outline:none;margin:0}@media (max-width: 640px){.Validation-module-module__tab___JPIkM{padding:.5rem .75rem;font-size:.8125rem;flex:1;justify-content:center}}.Validation-module-module__tab___JPIkM:hover:not(.Validation-module-module__active___rLvN7){color:#374151}.Validation-module-module__tab___JPIkM:focus-visible{box-shadow:0 0 0 2px #3b82f6;z-index:1}.Validation-module-module__tab___JPIkM.Validation-module-module__active___rLvN7{background:#4b5563;color:#fff;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f}.Validation-module-module__tab___JPIkM.Validation-module-module__active___rLvN7 .Validation-module-module__count___lb09d{background:#fff3;color:#fff}.Validation-module-module__tab___JPIkM .Validation-module-module__count___lb09d{display:inline-flex;align-items:center;justify-content:center;min-width:1.5rem;padding:.125rem .375rem;height:1.25rem;background:transparent;color:inherit;font-size:.875rem;font-weight:600;transition:all .2s ease}.Validation-module-module__tab___JPIkM.Validation-module-module__errorTab___ebQQd.Validation-module-module__active___rLvN7{background:#dc2626}.Validation-module-module__tab___JPIkM.Validation-module-module__errorTab___ebQQd.Validation-module-module__active___rLvN7 .Validation-module-module__count___lb09d{background:#fff3;color:#fff}.Validation-module-module__tab___JPIkM.Validation-module-module__errorTab___ebQQd:not(.Validation-module-module__active___rLvN7) .Validation-module-module__count___lb09d{color:#dc2626}.Validation-module-module__spreadsheetContainer___VOHHJ{width:100%;overflow-x:auto;overflow-y:auto;-webkit-overflow-scrolling:touch;background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f}.Validation-module-module__spreadsheetWrapper___jE9rZ{position:relative}.Validation-module-module__spreadsheetTable___OzR-h{width:-moz-max-content;width:max-content;min-width:800px;border-collapse:separate;border-spacing:0;font-size:.875rem}.Validation-module-module__spreadsheetHeader___CcIvW{position:sticky;top:0;z-index:10;background:#f9fafb}.Validation-module-module__spreadsheetHeader___CcIvW tr th{background:#f9fafb;border-bottom:2px solid #e5e7eb;border-right:1px solid #e5e7eb;padding:0;text-align:left;font-weight:600;color:#111827;position:relative}.Validation-module-module__spreadsheetHeader___CcIvW tr th:last-child{border-right:none}.Validation-module-module__rowNumberHeader___hBB39{width:60px;min-width:60px;max-width:60px;text-align:center!important;background:#f9fafb!important;position:sticky;left:0;z-index:11;font-size:.75rem;padding:.75rem 0!important}.Validation-module-module__columnHeader___Yjc-8{width:auto;min-width:100px}.Validation-module-module__columnHeader___Yjc-8 .Validation-module-module__headerContent___soxS5{padding:.75rem 1rem;font-size:.875rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.Validation-module-module__spreadsheetBody___ASDqW .Validation-module-module__dataRow___fAJUe:hover .Validation-module-module__dataCell___Kqej5{background:#f3f4f6}.Validation-module-module__spreadsheetBody___ASDqW .Validation-module-module__dataRow___fAJUe:hover .Validation-module-module__rowNumber___gW7gl{background:#f0f2f5}.Validation-module-module__spreadsheetBody___ASDqW .Validation-module-module__dataRow___fAJUe.Validation-module-module__errorRow___E5crc .Validation-module-module__dataCell___Kqej5{background:#fff1f1}.Validation-module-module__rowNumber___gW7gl{width:60px;min-width:60px;max-width:60px;background:#f9fafb;border-right:1px solid #e5e7eb;border-bottom:1px solid #e5e7eb;text-align:center;font-size:.75rem;font-weight:500;color:#6b7280;padding:.75rem 0;position:sticky;left:0;z-index:1}.Validation-module-module__dataCell___Kqej5{width:auto;min-width:100px;border-right:1px solid #e5e7eb;border-bottom:1px solid #e5e7eb;padding:0;background:#fff;position:relative;transition:background-color .15s ease;white-space:nowrap}.Validation-module-module__dataCell___Kqej5:last-child{border-right:none}.Validation-module-module__dataCell___Kqej5.Validation-module-module__errorCell___0EbsM{background:#fee2e2}.Validation-module-module__dataCell___Kqej5.Validation-module-module__errorCell___0EbsM .Validation-module-module__cellInput___LsyOo{color:#111827}.Validation-module-module__cellContent___ubxVt{position:relative;width:100%;min-height:44px;display:flex;align-items:center}.Validation-module-module__cellInput___LsyOo{width:100%;height:100%;min-height:40px;border:none;background:transparent;padding:.625rem 1.75rem .625rem .75rem;font-size:.875rem;font-family:inherit;color:#111827;outline:none;transition:box-shadow .15s ease;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.Validation-module-module__cellInput___LsyOo:focus{box-shadow:inset 0 0 0 2px #3b82f6;z-index:2;position:relative}.Validation-module-module__cellInput___LsyOo:hover{background:#00000003}.Validation-module-module__errorIndicator___2KEsf{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;cursor:help;z-index:3}.Validation-module-module__errorIndicator___2KEsf svg{filter:drop-shadow(0 1px 2px rgba(0,0,0,.1))}.Validation-module-module__emptyState___g41in{padding:3rem;text-align:center;color:#6b7280}.Validation-module-module__content___FgF43{display:flex;flex-direction:column;height:100%;width:100%}.Validation-module-module__tableWrapper___YcN6o{flex:1;overflow:auto;margin-bottom:1rem;border-radius:8px;box-shadow:0 2px 4px #0000001a}.Validation-module-module__actions___GIqEx{display:flex;justify-content:space-between;align-items:center;padding:1rem 0}.Validation-module-module__errorContainer___dKOJX{flex:1;margin:0 1rem}.Validation-module-module__errorRow___E5crc td{background-color:#ff000008}.Validation-module-module__editableCellContainer___7yPTv{position:relative;width:100%}.Validation-module-module__simpleInput___LhUg-{width:100%;padding:.25rem;border-radius:4px;font-size:.875rem;transition:all .2s}.Validation-module-module__simpleInput___LhUg-:focus{border-color:#3182ce;box-shadow:0 0 0 1px #3182ce}.Validation-module-module__errorInput___ZWDrT{border-color:#e53e3e}.Validation-module-module__errorInput___ZWDrT:focus{border-color:#e53e3e;box-shadow:0 0 0 1px #e53e3e}.Validation-module-module__errorIcon___NMpp3{position:absolute;top:50%;right:8px;transform:translateY(-50%);width:16px;height:16px;border-radius:50%;background-color:#e53e3e;color:#fff;font-size:12px;display:flex;align-items:center;justify-content:center;cursor:help}.Validation-module-module__validationTable___Wh1wk{width:100%;border-collapse:collapse}.Validation-module-module__validationTable___Wh1wk th{background-color:#f1f5f9;text-transform:none;font-weight:600;color:#334155;padding:12px 16px;text-align:left;border-bottom:1px solid #e2e8f0}.Validation-module-module__validationTable___Wh1wk th:first-child{border-top-left-radius:8px}.Validation-module-module__validationTable___Wh1wk th:last-child{border-top-right-radius:8px}.Validation-module-module__validationTable___Wh1wk td{padding:12px 16px;border-bottom:1px solid #e2e8f0;color:#334155}.Validation-module-module__validationTable___Wh1wk tr:last-child td:first-child{border-bottom-left-radius:8px}.Validation-module-module__validationTable___Wh1wk tr:last-child td:last-child{border-bottom-right-radius:8px}.Validation-module-module__validationTable___Wh1wk tr:hover{background-color:#f8fafc}.Validation-module-module__validationFilters___XqhsC{margin-bottom:1rem}.Validation-module-module__errorSummary___SYeAr{padding:.75rem 1rem;background:#fef2f2;border:1px solid #fecaca;border-radius:.375rem;margin-bottom:1rem}.Validation-module-module__tableContainer___jRikO{flex:1;overflow:auto;border:1px solid #e2e8f0;border-radius:.5rem;background:#fff}.Validation-module-module__toolbarActions___12qlG{display:flex;gap:.75rem;align-items:center}@media (max-width: 640px){.Validation-module-module__toolbarActions___12qlG{width:100%}.Validation-module-module__toolbarActions___12qlG button{flex:1;justify-content:center}}.Validation-module-module__footerSection___pJMfU{flex-shrink:0;display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-top:1px solid #e5e7eb;background:transparent}.Validation-module-module__tableWidth___MNjwY{width:-moz-max-content;width:max-content;min-width:100%}.Default-module-module__table___44Sxu{display:flex;flex-direction:column;flex:1 1 auto;width:100%;border-collapse:collapse;border-spacing:0;border-radius:var(--border-radius-2);outline:1px solid var(--color-border);table-layout:fixed;overflow:hidden}@media (max-width: 768px){.Default-module-module__table___44Sxu{font-size:14px}}@media (max-width: 480px){.Default-module-module__table___44Sxu{font-size:12px;min-width:320px}}.Default-module-module__table___44Sxu .Default-module-module__thead___QhWkw{display:table-header-group}.Default-module-module__table___44Sxu .Default-module-module__tbody___8S-zy{display:block;overflow:auto;width:100%}.Default-module-module__table___44Sxu .Default-module-module__tr___esZOa{display:flex;width:100%;overflow:hidden;flex-wrap:nowrap}.Default-module-module__table___44Sxu .Default-module-module__td___iAMlt{display:inline-flex;align-items:center;height:44px;flex-shrink:0}@media (max-width: 480px){.Default-module-module__table___44Sxu .Default-module-module__td___iAMlt{height:36px;padding-left:var(--m-xxs)!important;padding-right:var(--m-xxs)!important}}.Default-module-module__table___44Sxu .Default-module-module__caption___VYeqs{display:table-caption;border-bottom:1px solid var(--color-border);background-color:var(--color-background-modal);padding:0 var(--m-s);border-radius:var(--border-radius-2) var(--border-radius-2) 0 0}.Default-module-module__table___44Sxu .Default-module-module__thead___QhWkw .Default-module-module__tr___esZOa .Default-module-module__td___iAMlt{font-weight:400;white-space:nowrap;padding:var(--m-xxxs) var(--m-s);border-bottom:1px solid var(--color-border);color:var(--color-text-secondary)}.Default-module-module__table___44Sxu .Default-module-module__thead___QhWkw .Default-module-module__tr___esZOa .Default-module-module__td___iAMlt:first-of-type{border-radius:var(--border-radius-2) 0 0 0}.Default-module-module__table___44Sxu .Default-module-module__thead___QhWkw .Default-module-module__tr___esZOa .Default-module-module__td___iAMlt:last-child{border-radius:0 var(--border-radius-2) 0 0}.Default-module-module__table___44Sxu .Default-module-module__tbody___8S-zy .Default-module-module__tr___esZOa .Default-module-module__td___iAMlt{vertical-align:middle;padding:var(--m-xxxs) var(--m-s);font-weight:400}.Default-module-module__table___44Sxu .Default-module-module__tbody___8S-zy .Default-module-module__tr___esZOa .Default-module-module__td___iAMlt>span,.Default-module-module__table___44Sxu .Default-module-module__tbody___8S-zy .Default-module-module__tr___esZOa .Default-module-module__td___iAMlt>small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.Default-module-module__table___44Sxu .Default-module-module__tbody___8S-zy .Default-module-module__tr___esZOa .Default-module-module__td___iAMlt.Default-module-module__highlight___qpgKE{font-weight:500}.Default-module-module__table___44Sxu .Default-module-module__tbody___8S-zy .Default-module-module__tr___esZOa .Default-module-module__td___iAMlt.Default-module-module__element___DzyB-{padding:0 var(--m-s)}@media (max-width: 480px){.Default-module-module__table___44Sxu .Default-module-module__tbody___8S-zy .Default-module-module__tr___esZOa .Default-module-module__td___iAMlt.Default-module-module__element___DzyB-{padding:0 var(--m-xxs)}}.Default-module-module__table___44Sxu .Default-module-module__tbody___8S-zy .Default-module-module__tr___esZOa:hover{box-shadow:0 0 0 2px var(--color-border);position:relative}.Default-module-module__table___44Sxu .Default-module-module__tbody___8S-zy .Default-module-module__tr___esZOa:last-child{border-radius:0 0 var(--border-radius-2) var(--border-radius-2)}.Default-module-module__table___44Sxu .Default-module-module__tbody___8S-zy .Default-module-module__tr___esZOa:last-child .Default-module-module__td___iAMlt{border-bottom-color:transparent}.Default-module-module__table___44Sxu .Default-module-module__tbody___8S-zy .Default-module-module__tr___esZOa:last-child .Default-module-module__td___iAMlt:first-of-type{border-radius:0 0 0 var(--border-radius-2)}.Default-module-module__table___44Sxu .Default-module-module__tbody___8S-zy .Default-module-module__tr___esZOa:last-child .Default-module-module__td___iAMlt:last-child{border-radius:0 0 var(--border-radius-2) 0}.Default-module-module__table___44Sxu.Default-module-module__zebra___p0PyM{background-color:var(--color-background-modal)}.Default-module-module__table___44Sxu.Default-module-module__zebra___p0PyM .Default-module-module__tbody___8S-zy .Default-module-module__tr___esZOa:nth-child(odd) .Default-module-module__td___iAMlt{background-color:var(--color-background)}.Default-module-module__table___44Sxu.Default-module-module__dark___TYSeO{background-color:var(--color-background)}.Default-module-module__table___44Sxu.Default-module-module__dark___TYSeO .Default-module-module__thead___QhWkw .Default-module-module__tr___esZOa .Default-module-module__td___iAMlt,.Default-module-module__table___44Sxu.Default-module-module__light___uGaq4,.Default-module-module__table___44Sxu.Default-module-module__transparent___rzqM5 .Default-module-module__thead___QhWkw{background-color:var(--color-background-modal)}.Default-module-module__table___44Sxu.Default-module-module__transparent___rzqM5 .Default-module-module__tbody___8S-zy .Default-module-module__tr___esZOa:hover,.Default-module-module__table___44Sxu.Default-module-module__dark___TYSeO .Default-module-module__tbody___8S-zy .Default-module-module__tr___esZOa:hover,.Default-module-module__table___44Sxu.Default-module-module__light___uGaq4 .Default-module-module__tbody___8S-zy .Default-module-module__tr___esZOa:hover{box-shadow:none;position:static}.Default-module-module__table___44Sxu.Default-module-module__dark___TYSeO .Default-module-module__tbody___8S-zy .Default-module-module__tr___esZOa:first-of-type .Default-module-module__td___iAMlt,.Default-module-module__table___44Sxu.Default-module-module__light___uGaq4 .Default-module-module__tbody___8S-zy .Default-module-module__tr___esZOa:first-of-type .Default-module-module__td___iAMlt{padding-top:var(--m-s);height:calc(44px + var(--m-s) - var(--m-xxxs))}.Default-module-module__table___44Sxu.Default-module-module__dark___TYSeO .Default-module-module__tbody___8S-zy .Default-module-module__tr___esZOa:last-of-type .Default-module-module__td___iAMlt,.Default-module-module__table___44Sxu.Default-module-module__light___uGaq4 .Default-module-module__tbody___8S-zy .Default-module-module__tr___esZOa:last-of-type .Default-module-module__td___iAMlt{padding-bottom:var(--m-s);height:calc(44px + var(--m-s) - var(--m-xxxs))}.Default-module-module__emptyMsg___HmPC-{display:flex;justify-content:center;align-items:center;margin-top:15vh;text-align:center}.Tooltip-module-module__tooltip___wRW1H{display:inline-flex;align-items:center;gap:var(--m-xs)}.Tooltip-module-module__tooltip___wRW1H .Tooltip-module-module__icon___8Cb-b{position:relative;display:block;cursor:pointer}.Tooltip-module-module__tooltip___wRW1H.Tooltip-module-module__multiline___E-a-0 .Tooltip-module-module__message___dXk82{width:260px;white-space:normal}.Tooltip-module-module__message___dXk82{position:absolute;transform:translate(-50%);background-color:var(--color-background-modal);z-index:3;padding:var(--m-xxs) var(--m-xs);border-radius:var(--border-radius);margin-top:var(--m-xs);box-shadow:0 0 0 1px var(--color-border),0 5px 15px #0003;max-width:300px}.Tooltip-module-module__message___dXk82:after,.Tooltip-module-module__message___dXk82:before{position:absolute;top:calc(var(--m-xxxs) * 1.732 * -1);left:50%;border-left:var(--m-xxxs) solid transparent;border-right:var(--m-xxxs) solid transparent;border-bottom:calc(var(--m-xxxs) * 1.732) solid var(--color-border);content:"";font-size:0;line-height:0;width:0;transform:translate(-50%)}.Tooltip-module-module__message___dXk82:after{top:calc(var(--m-xxxs) * 1.732 * -1 + 2px);border-bottom:calc(var(--m-xxxs) * 1.732) solid var(--color-background-modal)}.ConfigureImport-module-module__baseContainer___q8h4Q,.ConfigureImport-module-module__configureImport___LEOsk,.ConfigureImport-module-module__flexContainer___HbOJk{width:100%;max-width:100%;padding:1.5rem}@media (max-width: 768px){.ConfigureImport-module-module__baseContainer___q8h4Q,.ConfigureImport-module-module__configureImport___LEOsk,.ConfigureImport-module-module__flexContainer___HbOJk{padding:1rem}}@media (max-width: 640px){.ConfigureImport-module-module__baseContainer___q8h4Q,.ConfigureImport-module-module__configureImport___LEOsk,.ConfigureImport-module-module__flexContainer___HbOJk{padding:.75rem}}.ConfigureImport-module-module__flexContainer___HbOJk{display:flex;flex-direction:column;min-height:0;min-width:0}.ConfigureImport-module-module__scrollableContent___njXa7{flex:1;display:flex;flex-direction:column;overflow:visible;max-width:100%;min-width:0}.ConfigureImport-module-module__tableContainer___mMlmj{flex:1;overflow-x:auto;overflow-y:auto;max-width:100%;-webkit-overflow-scrolling:touch}.ConfigureImport-module-module__tableContainer___mMlmj table{min-width:100%;width:-moz-max-content;width:max-content}.ConfigureImport-module-module__headerSection___ZgAQT{padding:1rem;border-bottom:1px solid #e5e7eb}.ConfigureImport-module-module__headerSection___ZgAQT h2{font-size:1.25rem;font-weight:600;color:#111827;margin:0 0 .5rem}.ConfigureImport-module-module__headerSection___ZgAQT p{font-size:.875rem;color:#6b7280;margin:0}.ConfigureImport-module-module__toolbar___GEhEX{padding:.75rem 1rem;background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;margin-bottom:1rem;box-shadow:0 1px 2px #0000000d}.ConfigureImport-module-module__configureImport___LEOsk{height:100%;margin:0}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Geist,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.csv-importer{--background: 0 0% 100%;--foreground: 222.2 84% 4.9%;--card: 0 0% 100%;--card-foreground: 222.2 84% 4.9%;--popover: 0 0% 100%;--popover-foreground: 222.2 84% 4.9%;--primary: 221.2 83.2% 53.3%;--primary-foreground: 210 40% 98%;--secondary: 210 40% 96.1%;--secondary-foreground: 222.2 47.4% 11.2%;--muted: 210 40% 96.1%;--muted-foreground: 215.4 16.3% 46.9%;--accent: 210 40% 96.1%;--accent-foreground: 222.2 47.4% 11.2%;--destructive: 0 84.2% 60.2%;--destructive-foreground: 210 40% 98%;--border: 214.3 31.8% 91.4%;--input: 214.3 31.8% 91.4%;--ring: 221.2 83.2% 53.3%;--radius: .5rem;--color-primary: #2563eb;--color-primary-foreground: #ffffff;--color-secondary: #f3f4f6;--color-secondary-foreground: #111827;--color-border: #e5e7eb;--color-background: #ffffff;--color-text: #111827;--color-error: #ef4444;--color-error-foreground: #ffffff;--color-muted: #f3f4f6;--color-muted-foreground: #6b7280;--color-accent: #f3f4f6;--color-accent-foreground: #111827}.csv-importer[data-theme=dark]{--background: 222.2 84% 4.9%;--foreground: 210 40% 98%;--card: 222.2 84% 4.9%;--card-foreground: 210 40% 98%;--popover: 222.2 84% 4.9%;--popover-foreground: 210 40% 98%;--primary: 217.2 91.2% 59.8%;--primary-foreground: 222.2 47.4% 11.2%;--secondary: 217.2 32.6% 17.5%;--secondary-foreground: 210 40% 98%;--muted: 217.2 32.6% 17.5%;--muted-foreground: 215 20.2% 65.1%;--accent: 217.2 32.6% 17.5%;--accent-foreground: 210 40% 98%;--destructive: 0 62.8% 30.6%;--destructive-foreground: 210 40% 98%;--border: 217.2 32.6% 17.5%;--input: 217.2 32.6% 17.5%;--ring: 224.3 76.3% 48%}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.bottom-0{bottom:0}.left-0{left:0}.left-2{left:.5rem}.left-4{left:1rem}.left-[50%]{left:50%}.right-0{right:0}.right-2{right:.5rem}.right-4{right:1rem}.top-0{top:0}.top-1{top:.25rem}.top-1/2{top:50%}.top-2{top:.5rem}.top-4{top:1rem}.top-[50%]{top:50%}.top-auto{top:auto}.isolate{isolation:isolate}.z-10{z-index:10}.z-50{z-index:50}.z-[100]{z-index:100}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.mx-3{margin-left:.75rem;margin-right:.75rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-6{margin-left:1.5rem;margin-right:1.5rem}.mx-auto{margin-left:auto;margin-right:auto}.my-1{margin-top:.25rem;margin-bottom:.25rem}.my-4{margin-top:1rem;margin-bottom:1rem}.my-8{margin-top:2rem;margin-bottom:2rem}.-ml-1{margin-left:-.25rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.mr-2{margin-right:.5rem}.mt-1{margin-top:.25rem}.mt-12{margin-top:3rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.box-border{box-sizing:border-box}.line-clamp-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.aspect-square{aspect-ratio:1 / 1}.h-0{height:0px}.h-1{height:.25rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-16{height:4rem}.h-3{height:.75rem}.h-3.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-[1px]{height:1px}.h-[36px]{height:36px}.h-[var(--radix-select-trigger-height)]{height:var(--radix-select-trigger-height)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.max-h-96{max-height:24rem}.max-h-[120px]{max-height:120px}.max-h-[300px]{max-height:300px}.max-h-screen{max-height:100vh}.min-h-0{min-height:0px}.min-h-[180px]{min-height:180px}.min-h-[240px]{min-height:240px}.min-h-[400px]{min-height:400px}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-12{width:3rem}.w-16{width:4rem}.w-3{width:.75rem}.w-3.5{width:.875rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-8{width:2rem}.w-[30%]{width:30%}.w-[35%]{width:35%}.w-full{width:100%}.w-max{width:-moz-max-content;width:max-content}.min-w-0{min-width:0px}.min-w-[36px]{min-width:36px}.min-w-[600px]{min-width:600px}.min-w-[8rem]{min-width:8rem}.min-w-[var(--radix-select-trigger-width)]{min-width:var(--radix-select-trigger-width)}.min-w-full{min-width:100%}.max-w-[1000px]{max-width:1000px}.max-w-[250px]{max-width:250px}.max-w-[300px]{max-width:300px}.max-w-[440px]{max-width:440px}.max-w-[560px]{max-width:560px}.max-w-[660px]{max-width:660px}.max-w-[800px]{max-width:800px}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-none{max-width:none}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-shrink{flex-shrink:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.border-collapse{border-collapse:collapse}.-translate-y-1{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-5{--tw-translate-x: 1.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-[-50%]{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-[-50%]{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-105{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize{resize:both}.flex-row{flex-direction:row}.flex-row-reverse{flex-direction:row-reverse}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.gap-0{gap:0px}.gap-1{gap:.25rem}.gap-1.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.self-center{align-self:center}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l-4{border-left-width:4px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-none{border-style:none}.border-blue-100{--tw-border-opacity: 1;border-color:rgb(219 234 254 / var(--tw-border-opacity, 1))}.border-blue-100/0{border-color:#dbeafe00}.border-blue-100/10{border-color:#dbeafe1a}.border-blue-100/100{border-color:#dbeafe}.border-blue-100/15{border-color:#dbeafe26}.border-blue-100/20{border-color:#dbeafe33}.border-blue-100/25{border-color:#dbeafe40}.border-blue-100/30{border-color:#dbeafe4d}.border-blue-100/35{border-color:#dbeafe59}.border-blue-100/40{border-color:#dbeafe66}.border-blue-100/45{border-color:#dbeafe73}.border-blue-100/5{border-color:#dbeafe0d}.border-blue-100/50{border-color:#dbeafe80}.border-blue-100/55{border-color:#dbeafe8c}.border-blue-100/60{border-color:#dbeafe99}.border-blue-100/65{border-color:#dbeafea6}.border-blue-100/70{border-color:#dbeafeb3}.border-blue-100/75{border-color:#dbeafebf}.border-blue-100/80{border-color:#dbeafecc}.border-blue-100/85{border-color:#dbeafed9}.border-blue-100/90{border-color:#dbeafee6}.border-blue-100/95{border-color:#dbeafef2}.border-blue-200{--tw-border-opacity: 1;border-color:rgb(191 219 254 / var(--tw-border-opacity, 1))}.border-blue-200/0{border-color:#bfdbfe00}.border-blue-200/10{border-color:#bfdbfe1a}.border-blue-200/100{border-color:#bfdbfe}.border-blue-200/15{border-color:#bfdbfe26}.border-blue-200/20{border-color:#bfdbfe33}.border-blue-200/25{border-color:#bfdbfe40}.border-blue-200/30{border-color:#bfdbfe4d}.border-blue-200/35{border-color:#bfdbfe59}.border-blue-200/40{border-color:#bfdbfe66}.border-blue-200/45{border-color:#bfdbfe73}.border-blue-200/5{border-color:#bfdbfe0d}.border-blue-200/50{border-color:#bfdbfe80}.border-blue-200/55{border-color:#bfdbfe8c}.border-blue-200/60{border-color:#bfdbfe99}.border-blue-200/65{border-color:#bfdbfea6}.border-blue-200/70{border-color:#bfdbfeb3}.border-blue-200/75{border-color:#bfdbfebf}.border-blue-200/80{border-color:#bfdbfecc}.border-blue-200/85{border-color:#bfdbfed9}.border-blue-200/90{border-color:#bfdbfee6}.border-blue-200/95{border-color:#bfdbfef2}.border-blue-300{--tw-border-opacity: 1;border-color:rgb(147 197 253 / var(--tw-border-opacity, 1))}.border-blue-300/0{border-color:#93c5fd00}.border-blue-300/10{border-color:#93c5fd1a}.border-blue-300/100{border-color:#93c5fd}.border-blue-300/15{border-color:#93c5fd26}.border-blue-300/20{border-color:#93c5fd33}.border-blue-300/25{border-color:#93c5fd40}.border-blue-300/30{border-color:#93c5fd4d}.border-blue-300/35{border-color:#93c5fd59}.border-blue-300/40{border-color:#93c5fd66}.border-blue-300/45{border-color:#93c5fd73}.border-blue-300/5{border-color:#93c5fd0d}.border-blue-300/50{border-color:#93c5fd80}.border-blue-300/55{border-color:#93c5fd8c}.border-blue-300/60{border-color:#93c5fd99}.border-blue-300/65{border-color:#93c5fda6}.border-blue-300/70{border-color:#93c5fdb3}.border-blue-300/75{border-color:#93c5fdbf}.border-blue-300/80{border-color:#93c5fdcc}.border-blue-300/85{border-color:#93c5fdd9}.border-blue-300/90{border-color:#93c5fde6}.border-blue-300/95{border-color:#93c5fdf2}.border-blue-400{--tw-border-opacity: 1;border-color:rgb(96 165 250 / var(--tw-border-opacity, 1))}.border-blue-400/0{border-color:#60a5fa00}.border-blue-400/10{border-color:#60a5fa1a}.border-blue-400/100{border-color:#60a5fa}.border-blue-400/15{border-color:#60a5fa26}.border-blue-400/20{border-color:#60a5fa33}.border-blue-400/25{border-color:#60a5fa40}.border-blue-400/30{border-color:#60a5fa4d}.border-blue-400/35{border-color:#60a5fa59}.border-blue-400/40{border-color:#60a5fa66}.border-blue-400/45{border-color:#60a5fa73}.border-blue-400/5{border-color:#60a5fa0d}.border-blue-400/50{border-color:#60a5fa80}.border-blue-400/55{border-color:#60a5fa8c}.border-blue-400/60{border-color:#60a5fa99}.border-blue-400/65{border-color:#60a5faa6}.border-blue-400/70{border-color:#60a5fab3}.border-blue-400/75{border-color:#60a5fabf}.border-blue-400/80{border-color:#60a5facc}.border-blue-400/85{border-color:#60a5fad9}.border-blue-400/90{border-color:#60a5fae6}.border-blue-400/95{border-color:#60a5faf2}.border-blue-50{--tw-border-opacity: 1;border-color:rgb(239 246 255 / var(--tw-border-opacity, 1))}.border-blue-50/0{border-color:#eff6ff00}.border-blue-50/10{border-color:#eff6ff1a}.border-blue-50/100{border-color:#eff6ff}.border-blue-50/15{border-color:#eff6ff26}.border-blue-50/20{border-color:#eff6ff33}.border-blue-50/25{border-color:#eff6ff40}.border-blue-50/30{border-color:#eff6ff4d}.border-blue-50/35{border-color:#eff6ff59}.border-blue-50/40{border-color:#eff6ff66}.border-blue-50/45{border-color:#eff6ff73}.border-blue-50/5{border-color:#eff6ff0d}.border-blue-50/50{border-color:#eff6ff80}.border-blue-50/55{border-color:#eff6ff8c}.border-blue-50/60{border-color:#eff6ff99}.border-blue-50/65{border-color:#eff6ffa6}.border-blue-50/70{border-color:#eff6ffb3}.border-blue-50/75{border-color:#eff6ffbf}.border-blue-50/80{border-color:#eff6ffcc}.border-blue-50/85{border-color:#eff6ffd9}.border-blue-50/90{border-color:#eff6ffe6}.border-blue-50/95{border-color:#eff6fff2}.border-blue-500{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.border-blue-500/0{border-color:#3b82f600}.border-blue-500/10{border-color:#3b82f61a}.border-blue-500/100{border-color:#3b82f6}.border-blue-500/15{border-color:#3b82f626}.border-blue-500/20{border-color:#3b82f633}.border-blue-500/25{border-color:#3b82f640}.border-blue-500/30{border-color:#3b82f64d}.border-blue-500/35{border-color:#3b82f659}.border-blue-500/40{border-color:#3b82f666}.border-blue-500/45{border-color:#3b82f673}.border-blue-500/5{border-color:#3b82f60d}.border-blue-500/50{border-color:#3b82f680}.border-blue-500/55{border-color:#3b82f68c}.border-blue-500/60{border-color:#3b82f699}.border-blue-500/65{border-color:#3b82f6a6}.border-blue-500/70{border-color:#3b82f6b3}.border-blue-500/75{border-color:#3b82f6bf}.border-blue-500/80{border-color:#3b82f6cc}.border-blue-500/85{border-color:#3b82f6d9}.border-blue-500/90{border-color:#3b82f6e6}.border-blue-500/95{border-color:#3b82f6f2}.border-blue-600{--tw-border-opacity: 1;border-color:rgb(37 99 235 / var(--tw-border-opacity, 1))}.border-blue-600/0{border-color:#2563eb00}.border-blue-600/10{border-color:#2563eb1a}.border-blue-600/100{border-color:#2563eb}.border-blue-600/15{border-color:#2563eb26}.border-blue-600/20{border-color:#2563eb33}.border-blue-600/25{border-color:#2563eb40}.border-blue-600/30{border-color:#2563eb4d}.border-blue-600/35{border-color:#2563eb59}.border-blue-600/40{border-color:#2563eb66}.border-blue-600/45{border-color:#2563eb73}.border-blue-600/5{border-color:#2563eb0d}.border-blue-600/50{border-color:#2563eb80}.border-blue-600/55{border-color:#2563eb8c}.border-blue-600/60{border-color:#2563eb99}.border-blue-600/65{border-color:#2563eba6}.border-blue-600/70{border-color:#2563ebb3}.border-blue-600/75{border-color:#2563ebbf}.border-blue-600/80{border-color:#2563ebcc}.border-blue-600/85{border-color:#2563ebd9}.border-blue-600/90{border-color:#2563ebe6}.border-blue-600/95{border-color:#2563ebf2}.border-blue-700{--tw-border-opacity: 1;border-color:rgb(29 78 216 / var(--tw-border-opacity, 1))}.border-blue-700/0{border-color:#1d4ed800}.border-blue-700/10{border-color:#1d4ed81a}.border-blue-700/100{border-color:#1d4ed8}.border-blue-700/15{border-color:#1d4ed826}.border-blue-700/20{border-color:#1d4ed833}.border-blue-700/25{border-color:#1d4ed840}.border-blue-700/30{border-color:#1d4ed84d}.border-blue-700/35{border-color:#1d4ed859}.border-blue-700/40{border-color:#1d4ed866}.border-blue-700/45{border-color:#1d4ed873}.border-blue-700/5{border-color:#1d4ed80d}.border-blue-700/50{border-color:#1d4ed880}.border-blue-700/55{border-color:#1d4ed88c}.border-blue-700/60{border-color:#1d4ed899}.border-blue-700/65{border-color:#1d4ed8a6}.border-blue-700/70{border-color:#1d4ed8b3}.border-blue-700/75{border-color:#1d4ed8bf}.border-blue-700/80{border-color:#1d4ed8cc}.border-blue-700/85{border-color:#1d4ed8d9}.border-blue-700/90{border-color:#1d4ed8e6}.border-blue-700/95{border-color:#1d4ed8f2}.border-blue-800{--tw-border-opacity: 1;border-color:rgb(30 64 175 / var(--tw-border-opacity, 1))}.border-blue-800/0{border-color:#1e40af00}.border-blue-800/10{border-color:#1e40af1a}.border-blue-800/100{border-color:#1e40af}.border-blue-800/15{border-color:#1e40af26}.border-blue-800/20{border-color:#1e40af33}.border-blue-800/25{border-color:#1e40af40}.border-blue-800/30{border-color:#1e40af4d}.border-blue-800/35{border-color:#1e40af59}.border-blue-800/40{border-color:#1e40af66}.border-blue-800/45{border-color:#1e40af73}.border-blue-800/5{border-color:#1e40af0d}.border-blue-800/50{border-color:#1e40af80}.border-blue-800/55{border-color:#1e40af8c}.border-blue-800/60{border-color:#1e40af99}.border-blue-800/65{border-color:#1e40afa6}.border-blue-800/70{border-color:#1e40afb3}.border-blue-800/75{border-color:#1e40afbf}.border-blue-800/80{border-color:#1e40afcc}.border-blue-800/85{border-color:#1e40afd9}.border-blue-800/90{border-color:#1e40afe6}.border-blue-800/95{border-color:#1e40aff2}.border-blue-900{--tw-border-opacity: 1;border-color:rgb(30 58 138 / var(--tw-border-opacity, 1))}.border-blue-900/0{border-color:#1e3a8a00}.border-blue-900/10{border-color:#1e3a8a1a}.border-blue-900/100{border-color:#1e3a8a}.border-blue-900/15{border-color:#1e3a8a26}.border-blue-900/20{border-color:#1e3a8a33}.border-blue-900/25{border-color:#1e3a8a40}.border-blue-900/30{border-color:#1e3a8a4d}.border-blue-900/35{border-color:#1e3a8a59}.border-blue-900/40{border-color:#1e3a8a66}.border-blue-900/45{border-color:#1e3a8a73}.border-blue-900/5{border-color:#1e3a8a0d}.border-blue-900/50{border-color:#1e3a8a80}.border-blue-900/55{border-color:#1e3a8a8c}.border-blue-900/60{border-color:#1e3a8a99}.border-blue-900/65{border-color:#1e3a8aa6}.border-blue-900/70{border-color:#1e3a8ab3}.border-blue-900/75{border-color:#1e3a8abf}.border-blue-900/80{border-color:#1e3a8acc}.border-blue-900/85{border-color:#1e3a8ad9}.border-blue-900/90{border-color:#1e3a8ae6}.border-blue-900/95{border-color:#1e3a8af2}.border-destructive{border-color:hsl(var(--destructive))}.border-destructive/50{border-color:hsl(var(--destructive) / .5)}.border-gray-100{--tw-border-opacity: 1;border-color:rgb(243 244 246 / var(--tw-border-opacity, 1))}.border-gray-100/0{border-color:#f3f4f600}.border-gray-100/10{border-color:#f3f4f61a}.border-gray-100/100{border-color:#f3f4f6}.border-gray-100/15{border-color:#f3f4f626}.border-gray-100/20{border-color:#f3f4f633}.border-gray-100/25{border-color:#f3f4f640}.border-gray-100/30{border-color:#f3f4f64d}.border-gray-100/35{border-color:#f3f4f659}.border-gray-100/40{border-color:#f3f4f666}.border-gray-100/45{border-color:#f3f4f673}.border-gray-100/5{border-color:#f3f4f60d}.border-gray-100/50{border-color:#f3f4f680}.border-gray-100/55{border-color:#f3f4f68c}.border-gray-100/60{border-color:#f3f4f699}.border-gray-100/65{border-color:#f3f4f6a6}.border-gray-100/70{border-color:#f3f4f6b3}.border-gray-100/75{border-color:#f3f4f6bf}.border-gray-100/80{border-color:#f3f4f6cc}.border-gray-100/85{border-color:#f3f4f6d9}.border-gray-100/90{border-color:#f3f4f6e6}.border-gray-100/95{border-color:#f3f4f6f2}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.border-gray-200/0{border-color:#e5e7eb00}.border-gray-200/10{border-color:#e5e7eb1a}.border-gray-200/100{border-color:#e5e7eb}.border-gray-200/15{border-color:#e5e7eb26}.border-gray-200/20{border-color:#e5e7eb33}.border-gray-200/25{border-color:#e5e7eb40}.border-gray-200/30{border-color:#e5e7eb4d}.border-gray-200/35{border-color:#e5e7eb59}.border-gray-200/40{border-color:#e5e7eb66}.border-gray-200/45{border-color:#e5e7eb73}.border-gray-200/5{border-color:#e5e7eb0d}.border-gray-200/50{border-color:#e5e7eb80}.border-gray-200/55{border-color:#e5e7eb8c}.border-gray-200/60{border-color:#e5e7eb99}.border-gray-200/65{border-color:#e5e7eba6}.border-gray-200/70{border-color:#e5e7ebb3}.border-gray-200/75{border-color:#e5e7ebbf}.border-gray-200/80{border-color:#e5e7ebcc}.border-gray-200/85{border-color:#e5e7ebd9}.border-gray-200/90{border-color:#e5e7ebe6}.border-gray-200/95{border-color:#e5e7ebf2}.border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.border-gray-300/0{border-color:#d1d5db00}.border-gray-300/10{border-color:#d1d5db1a}.border-gray-300/100{border-color:#d1d5db}.border-gray-300/15{border-color:#d1d5db26}.border-gray-300/20{border-color:#d1d5db33}.border-gray-300/25{border-color:#d1d5db40}.border-gray-300/30{border-color:#d1d5db4d}.border-gray-300/35{border-color:#d1d5db59}.border-gray-300/40{border-color:#d1d5db66}.border-gray-300/45{border-color:#d1d5db73}.border-gray-300/5{border-color:#d1d5db0d}.border-gray-300/50{border-color:#d1d5db80}.border-gray-300/55{border-color:#d1d5db8c}.border-gray-300/60{border-color:#d1d5db99}.border-gray-300/65{border-color:#d1d5dba6}.border-gray-300/70{border-color:#d1d5dbb3}.border-gray-300/75{border-color:#d1d5dbbf}.border-gray-300/80{border-color:#d1d5dbcc}.border-gray-300/85{border-color:#d1d5dbd9}.border-gray-300/90{border-color:#d1d5dbe6}.border-gray-300/95{border-color:#d1d5dbf2}.border-gray-400{--tw-border-opacity: 1;border-color:rgb(156 163 175 / var(--tw-border-opacity, 1))}.border-gray-400/0{border-color:#9ca3af00}.border-gray-400/10{border-color:#9ca3af1a}.border-gray-400/100{border-color:#9ca3af}.border-gray-400/15{border-color:#9ca3af26}.border-gray-400/20{border-color:#9ca3af33}.border-gray-400/25{border-color:#9ca3af40}.border-gray-400/30{border-color:#9ca3af4d}.border-gray-400/35{border-color:#9ca3af59}.border-gray-400/40{border-color:#9ca3af66}.border-gray-400/45{border-color:#9ca3af73}.border-gray-400/5{border-color:#9ca3af0d}.border-gray-400/50{border-color:#9ca3af80}.border-gray-400/55{border-color:#9ca3af8c}.border-gray-400/60{border-color:#9ca3af99}.border-gray-400/65{border-color:#9ca3afa6}.border-gray-400/70{border-color:#9ca3afb3}.border-gray-400/75{border-color:#9ca3afbf}.border-gray-400/80{border-color:#9ca3afcc}.border-gray-400/85{border-color:#9ca3afd9}.border-gray-400/90{border-color:#9ca3afe6}.border-gray-400/95{border-color:#9ca3aff2}.border-gray-50{--tw-border-opacity: 1;border-color:rgb(249 250 251 / var(--tw-border-opacity, 1))}.border-gray-50/0{border-color:#f9fafb00}.border-gray-50/10{border-color:#f9fafb1a}.border-gray-50/100{border-color:#f9fafb}.border-gray-50/15{border-color:#f9fafb26}.border-gray-50/20{border-color:#f9fafb33}.border-gray-50/25{border-color:#f9fafb40}.border-gray-50/30{border-color:#f9fafb4d}.border-gray-50/35{border-color:#f9fafb59}.border-gray-50/40{border-color:#f9fafb66}.border-gray-50/45{border-color:#f9fafb73}.border-gray-50/5{border-color:#f9fafb0d}.border-gray-50/50{border-color:#f9fafb80}.border-gray-50/55{border-color:#f9fafb8c}.border-gray-50/60{border-color:#f9fafb99}.border-gray-50/65{border-color:#f9fafba6}.border-gray-50/70{border-color:#f9fafbb3}.border-gray-50/75{border-color:#f9fafbbf}.border-gray-50/80{border-color:#f9fafbcc}.border-gray-50/85{border-color:#f9fafbd9}.border-gray-50/90{border-color:#f9fafbe6}.border-gray-50/95{border-color:#f9fafbf2}.border-gray-500{--tw-border-opacity: 1;border-color:rgb(107 114 128 / var(--tw-border-opacity, 1))}.border-gray-500/0{border-color:#6b728000}.border-gray-500/10{border-color:#6b72801a}.border-gray-500/100{border-color:#6b7280}.border-gray-500/15{border-color:#6b728026}.border-gray-500/20{border-color:#6b728033}.border-gray-500/25{border-color:#6b728040}.border-gray-500/30{border-color:#6b72804d}.border-gray-500/35{border-color:#6b728059}.border-gray-500/40{border-color:#6b728066}.border-gray-500/45{border-color:#6b728073}.border-gray-500/5{border-color:#6b72800d}.border-gray-500/50{border-color:#6b728080}.border-gray-500/55{border-color:#6b72808c}.border-gray-500/60{border-color:#6b728099}.border-gray-500/65{border-color:#6b7280a6}.border-gray-500/70{border-color:#6b7280b3}.border-gray-500/75{border-color:#6b7280bf}.border-gray-500/80{border-color:#6b7280cc}.border-gray-500/85{border-color:#6b7280d9}.border-gray-500/90{border-color:#6b7280e6}.border-gray-500/95{border-color:#6b7280f2}.border-gray-600{--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1))}.border-gray-600/0{border-color:#4b556300}.border-gray-600/10{border-color:#4b55631a}.border-gray-600/100{border-color:#4b5563}.border-gray-600/15{border-color:#4b556326}.border-gray-600/20{border-color:#4b556333}.border-gray-600/25{border-color:#4b556340}.border-gray-600/30{border-color:#4b55634d}.border-gray-600/35{border-color:#4b556359}.border-gray-600/40{border-color:#4b556366}.border-gray-600/45{border-color:#4b556373}.border-gray-600/5{border-color:#4b55630d}.border-gray-600/50{border-color:#4b556380}.border-gray-600/55{border-color:#4b55638c}.border-gray-600/60{border-color:#4b556399}.border-gray-600/65{border-color:#4b5563a6}.border-gray-600/70{border-color:#4b5563b3}.border-gray-600/75{border-color:#4b5563bf}.border-gray-600/80{border-color:#4b5563cc}.border-gray-600/85{border-color:#4b5563d9}.border-gray-600/90{border-color:#4b5563e6}.border-gray-600/95{border-color:#4b5563f2}.border-gray-700{--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity, 1))}.border-gray-700/0{border-color:#37415100}.border-gray-700/10{border-color:#3741511a}.border-gray-700/100{border-color:#374151}.border-gray-700/15{border-color:#37415126}.border-gray-700/20{border-color:#37415133}.border-gray-700/25{border-color:#37415140}.border-gray-700/30{border-color:#3741514d}.border-gray-700/35{border-color:#37415159}.border-gray-700/40{border-color:#37415166}.border-gray-700/45{border-color:#37415173}.border-gray-700/5{border-color:#3741510d}.border-gray-700/50{border-color:#37415180}.border-gray-700/55{border-color:#3741518c}.border-gray-700/60{border-color:#37415199}.border-gray-700/65{border-color:#374151a6}.border-gray-700/70{border-color:#374151b3}.border-gray-700/75{border-color:#374151bf}.border-gray-700/80{border-color:#374151cc}.border-gray-700/85{border-color:#374151d9}.border-gray-700/90{border-color:#374151e6}.border-gray-700/95{border-color:#374151f2}.border-gray-800{--tw-border-opacity: 1;border-color:rgb(31 41 55 / var(--tw-border-opacity, 1))}.border-gray-800/0{border-color:#1f293700}.border-gray-800/10{border-color:#1f29371a}.border-gray-800/100{border-color:#1f2937}.border-gray-800/15{border-color:#1f293726}.border-gray-800/20{border-color:#1f293733}.border-gray-800/25{border-color:#1f293740}.border-gray-800/30{border-color:#1f29374d}.border-gray-800/35{border-color:#1f293759}.border-gray-800/40{border-color:#1f293766}.border-gray-800/45{border-color:#1f293773}.border-gray-800/5{border-color:#1f29370d}.border-gray-800/50{border-color:#1f293780}.border-gray-800/55{border-color:#1f29378c}.border-gray-800/60{border-color:#1f293799}.border-gray-800/65{border-color:#1f2937a6}.border-gray-800/70{border-color:#1f2937b3}.border-gray-800/75{border-color:#1f2937bf}.border-gray-800/80{border-color:#1f2937cc}.border-gray-800/85{border-color:#1f2937d9}.border-gray-800/90{border-color:#1f2937e6}.border-gray-800/95{border-color:#1f2937f2}.border-gray-900{--tw-border-opacity: 1;border-color:rgb(17 24 39 / var(--tw-border-opacity, 1))}.border-gray-900/0{border-color:#11182700}.border-gray-900/10{border-color:#1118271a}.border-gray-900/100{border-color:#111827}.border-gray-900/15{border-color:#11182726}.border-gray-900/20{border-color:#11182733}.border-gray-900/25{border-color:#11182740}.border-gray-900/30{border-color:#1118274d}.border-gray-900/35{border-color:#11182759}.border-gray-900/40{border-color:#11182766}.border-gray-900/45{border-color:#11182773}.border-gray-900/5{border-color:#1118270d}.border-gray-900/50{border-color:#11182780}.border-gray-900/55{border-color:#1118278c}.border-gray-900/60{border-color:#11182799}.border-gray-900/65{border-color:#111827a6}.border-gray-900/70{border-color:#111827b3}.border-gray-900/75{border-color:#111827bf}.border-gray-900/80{border-color:#111827cc}.border-gray-900/85{border-color:#111827d9}.border-gray-900/90{border-color:#111827e6}.border-gray-900/95{border-color:#111827f2}.border-green-100{--tw-border-opacity: 1;border-color:rgb(220 252 231 / var(--tw-border-opacity, 1))}.border-green-100/0{border-color:#dcfce700}.border-green-100/10{border-color:#dcfce71a}.border-green-100/100{border-color:#dcfce7}.border-green-100/15{border-color:#dcfce726}.border-green-100/20{border-color:#dcfce733}.border-green-100/25{border-color:#dcfce740}.border-green-100/30{border-color:#dcfce74d}.border-green-100/35{border-color:#dcfce759}.border-green-100/40{border-color:#dcfce766}.border-green-100/45{border-color:#dcfce773}.border-green-100/5{border-color:#dcfce70d}.border-green-100/50{border-color:#dcfce780}.border-green-100/55{border-color:#dcfce78c}.border-green-100/60{border-color:#dcfce799}.border-green-100/65{border-color:#dcfce7a6}.border-green-100/70{border-color:#dcfce7b3}.border-green-100/75{border-color:#dcfce7bf}.border-green-100/80{border-color:#dcfce7cc}.border-green-100/85{border-color:#dcfce7d9}.border-green-100/90{border-color:#dcfce7e6}.border-green-100/95{border-color:#dcfce7f2}.border-green-200{--tw-border-opacity: 1;border-color:rgb(187 247 208 / var(--tw-border-opacity, 1))}.border-green-200/0{border-color:#bbf7d000}.border-green-200/10{border-color:#bbf7d01a}.border-green-200/100{border-color:#bbf7d0}.border-green-200/15{border-color:#bbf7d026}.border-green-200/20{border-color:#bbf7d033}.border-green-200/25{border-color:#bbf7d040}.border-green-200/30{border-color:#bbf7d04d}.border-green-200/35{border-color:#bbf7d059}.border-green-200/40{border-color:#bbf7d066}.border-green-200/45{border-color:#bbf7d073}.border-green-200/5{border-color:#bbf7d00d}.border-green-200/50{border-color:#bbf7d080}.border-green-200/55{border-color:#bbf7d08c}.border-green-200/60{border-color:#bbf7d099}.border-green-200/65{border-color:#bbf7d0a6}.border-green-200/70{border-color:#bbf7d0b3}.border-green-200/75{border-color:#bbf7d0bf}.border-green-200/80{border-color:#bbf7d0cc}.border-green-200/85{border-color:#bbf7d0d9}.border-green-200/90{border-color:#bbf7d0e6}.border-green-200/95{border-color:#bbf7d0f2}.border-green-300{--tw-border-opacity: 1;border-color:rgb(134 239 172 / var(--tw-border-opacity, 1))}.border-green-300/0{border-color:#86efac00}.border-green-300/10{border-color:#86efac1a}.border-green-300/100{border-color:#86efac}.border-green-300/15{border-color:#86efac26}.border-green-300/20{border-color:#86efac33}.border-green-300/25{border-color:#86efac40}.border-green-300/30{border-color:#86efac4d}.border-green-300/35{border-color:#86efac59}.border-green-300/40{border-color:#86efac66}.border-green-300/45{border-color:#86efac73}.border-green-300/5{border-color:#86efac0d}.border-green-300/50{border-color:#86efac80}.border-green-300/55{border-color:#86efac8c}.border-green-300/60{border-color:#86efac99}.border-green-300/65{border-color:#86efaca6}.border-green-300/70{border-color:#86efacb3}.border-green-300/75{border-color:#86efacbf}.border-green-300/80{border-color:#86efaccc}.border-green-300/85{border-color:#86efacd9}.border-green-300/90{border-color:#86eface6}.border-green-300/95{border-color:#86efacf2}.border-green-400{--tw-border-opacity: 1;border-color:rgb(74 222 128 / var(--tw-border-opacity, 1))}.border-green-400/0{border-color:#4ade8000}.border-green-400/10{border-color:#4ade801a}.border-green-400/100{border-color:#4ade80}.border-green-400/15{border-color:#4ade8026}.border-green-400/20{border-color:#4ade8033}.border-green-400/25{border-color:#4ade8040}.border-green-400/30{border-color:#4ade804d}.border-green-400/35{border-color:#4ade8059}.border-green-400/40{border-color:#4ade8066}.border-green-400/45{border-color:#4ade8073}.border-green-400/5{border-color:#4ade800d}.border-green-400/50{border-color:#4ade8080}.border-green-400/55{border-color:#4ade808c}.border-green-400/60{border-color:#4ade8099}.border-green-400/65{border-color:#4ade80a6}.border-green-400/70{border-color:#4ade80b3}.border-green-400/75{border-color:#4ade80bf}.border-green-400/80{border-color:#4ade80cc}.border-green-400/85{border-color:#4ade80d9}.border-green-400/90{border-color:#4ade80e6}.border-green-400/95{border-color:#4ade80f2}.border-green-50{--tw-border-opacity: 1;border-color:rgb(240 253 244 / var(--tw-border-opacity, 1))}.border-green-50/0{border-color:#f0fdf400}.border-green-50/10{border-color:#f0fdf41a}.border-green-50/100{border-color:#f0fdf4}.border-green-50/15{border-color:#f0fdf426}.border-green-50/20{border-color:#f0fdf433}.border-green-50/25{border-color:#f0fdf440}.border-green-50/30{border-color:#f0fdf44d}.border-green-50/35{border-color:#f0fdf459}.border-green-50/40{border-color:#f0fdf466}.border-green-50/45{border-color:#f0fdf473}.border-green-50/5{border-color:#f0fdf40d}.border-green-50/50{border-color:#f0fdf480}.border-green-50/55{border-color:#f0fdf48c}.border-green-50/60{border-color:#f0fdf499}.border-green-50/65{border-color:#f0fdf4a6}.border-green-50/70{border-color:#f0fdf4b3}.border-green-50/75{border-color:#f0fdf4bf}.border-green-50/80{border-color:#f0fdf4cc}.border-green-50/85{border-color:#f0fdf4d9}.border-green-50/90{border-color:#f0fdf4e6}.border-green-50/95{border-color:#f0fdf4f2}.border-green-500{--tw-border-opacity: 1;border-color:rgb(34 197 94 / var(--tw-border-opacity, 1))}.border-green-500/0{border-color:#22c55e00}.border-green-500/10{border-color:#22c55e1a}.border-green-500/100{border-color:#22c55e}.border-green-500/15{border-color:#22c55e26}.border-green-500/20{border-color:#22c55e33}.border-green-500/25{border-color:#22c55e40}.border-green-500/30{border-color:#22c55e4d}.border-green-500/35{border-color:#22c55e59}.border-green-500/40{border-color:#22c55e66}.border-green-500/45{border-color:#22c55e73}.border-green-500/5{border-color:#22c55e0d}.border-green-500/50{border-color:#22c55e80}.border-green-500/55{border-color:#22c55e8c}.border-green-500/60{border-color:#22c55e99}.border-green-500/65{border-color:#22c55ea6}.border-green-500/70{border-color:#22c55eb3}.border-green-500/75{border-color:#22c55ebf}.border-green-500/80{border-color:#22c55ecc}.border-green-500/85{border-color:#22c55ed9}.border-green-500/90{border-color:#22c55ee6}.border-green-500/95{border-color:#22c55ef2}.border-green-600{--tw-border-opacity: 1;border-color:rgb(22 163 74 / var(--tw-border-opacity, 1))}.border-green-600/0{border-color:#16a34a00}.border-green-600/10{border-color:#16a34a1a}.border-green-600/100{border-color:#16a34a}.border-green-600/15{border-color:#16a34a26}.border-green-600/20{border-color:#16a34a33}.border-green-600/25{border-color:#16a34a40}.border-green-600/30{border-color:#16a34a4d}.border-green-600/35{border-color:#16a34a59}.border-green-600/40{border-color:#16a34a66}.border-green-600/45{border-color:#16a34a73}.border-green-600/5{border-color:#16a34a0d}.border-green-600/50{border-color:#16a34a80}.border-green-600/55{border-color:#16a34a8c}.border-green-600/60{border-color:#16a34a99}.border-green-600/65{border-color:#16a34aa6}.border-green-600/70{border-color:#16a34ab3}.border-green-600/75{border-color:#16a34abf}.border-green-600/80{border-color:#16a34acc}.border-green-600/85{border-color:#16a34ad9}.border-green-600/90{border-color:#16a34ae6}.border-green-600/95{border-color:#16a34af2}.border-green-700{--tw-border-opacity: 1;border-color:rgb(21 128 61 / var(--tw-border-opacity, 1))}.border-green-700/0{border-color:#15803d00}.border-green-700/10{border-color:#15803d1a}.border-green-700/100{border-color:#15803d}.border-green-700/15{border-color:#15803d26}.border-green-700/20{border-color:#15803d33}.border-green-700/25{border-color:#15803d40}.border-green-700/30{border-color:#15803d4d}.border-green-700/35{border-color:#15803d59}.border-green-700/40{border-color:#15803d66}.border-green-700/45{border-color:#15803d73}.border-green-700/5{border-color:#15803d0d}.border-green-700/50{border-color:#15803d80}.border-green-700/55{border-color:#15803d8c}.border-green-700/60{border-color:#15803d99}.border-green-700/65{border-color:#15803da6}.border-green-700/70{border-color:#15803db3}.border-green-700/75{border-color:#15803dbf}.border-green-700/80{border-color:#15803dcc}.border-green-700/85{border-color:#15803dd9}.border-green-700/90{border-color:#15803de6}.border-green-700/95{border-color:#15803df2}.border-green-800{--tw-border-opacity: 1;border-color:rgb(22 101 52 / var(--tw-border-opacity, 1))}.border-green-800/0{border-color:#16653400}.border-green-800/10{border-color:#1665341a}.border-green-800/100{border-color:#166534}.border-green-800/15{border-color:#16653426}.border-green-800/20{border-color:#16653433}.border-green-800/25{border-color:#16653440}.border-green-800/30{border-color:#1665344d}.border-green-800/35{border-color:#16653459}.border-green-800/40{border-color:#16653466}.border-green-800/45{border-color:#16653473}.border-green-800/5{border-color:#1665340d}.border-green-800/50{border-color:#16653480}.border-green-800/55{border-color:#1665348c}.border-green-800/60{border-color:#16653499}.border-green-800/65{border-color:#166534a6}.border-green-800/70{border-color:#166534b3}.border-green-800/75{border-color:#166534bf}.border-green-800/80{border-color:#166534cc}.border-green-800/85{border-color:#166534d9}.border-green-800/90{border-color:#166534e6}.border-green-800/95{border-color:#166534f2}.border-green-900{--tw-border-opacity: 1;border-color:rgb(20 83 45 / var(--tw-border-opacity, 1))}.border-green-900/0{border-color:#14532d00}.border-green-900/10{border-color:#14532d1a}.border-green-900/100{border-color:#14532d}.border-green-900/15{border-color:#14532d26}.border-green-900/20{border-color:#14532d33}.border-green-900/25{border-color:#14532d40}.border-green-900/30{border-color:#14532d4d}.border-green-900/35{border-color:#14532d59}.border-green-900/40{border-color:#14532d66}.border-green-900/45{border-color:#14532d73}.border-green-900/5{border-color:#14532d0d}.border-green-900/50{border-color:#14532d80}.border-green-900/55{border-color:#14532d8c}.border-green-900/60{border-color:#14532d99}.border-green-900/65{border-color:#14532da6}.border-green-900/70{border-color:#14532db3}.border-green-900/75{border-color:#14532dbf}.border-green-900/80{border-color:#14532dcc}.border-green-900/85{border-color:#14532dd9}.border-green-900/90{border-color:#14532de6}.border-green-900/95{border-color:#14532df2}.border-input{border-color:hsl(var(--input))}.border-muted{border-color:hsl(var(--muted))}.border-orange-500{--tw-border-opacity: 1;border-color:rgb(249 115 22 / var(--tw-border-opacity, 1))}.border-primary{border-color:hsl(var(--primary))}.border-red-100{--tw-border-opacity: 1;border-color:rgb(254 226 226 / var(--tw-border-opacity, 1))}.border-red-100/0{border-color:#fee2e200}.border-red-100/10{border-color:#fee2e21a}.border-red-100/100{border-color:#fee2e2}.border-red-100/15{border-color:#fee2e226}.border-red-100/20{border-color:#fee2e233}.border-red-100/25{border-color:#fee2e240}.border-red-100/30{border-color:#fee2e24d}.border-red-100/35{border-color:#fee2e259}.border-red-100/40{border-color:#fee2e266}.border-red-100/45{border-color:#fee2e273}.border-red-100/5{border-color:#fee2e20d}.border-red-100/50{border-color:#fee2e280}.border-red-100/55{border-color:#fee2e28c}.border-red-100/60{border-color:#fee2e299}.border-red-100/65{border-color:#fee2e2a6}.border-red-100/70{border-color:#fee2e2b3}.border-red-100/75{border-color:#fee2e2bf}.border-red-100/80{border-color:#fee2e2cc}.border-red-100/85{border-color:#fee2e2d9}.border-red-100/90{border-color:#fee2e2e6}.border-red-100/95{border-color:#fee2e2f2}.border-red-200{--tw-border-opacity: 1;border-color:rgb(254 202 202 / var(--tw-border-opacity, 1))}.border-red-200/0{border-color:#fecaca00}.border-red-200/10{border-color:#fecaca1a}.border-red-200/100{border-color:#fecaca}.border-red-200/15{border-color:#fecaca26}.border-red-200/20{border-color:#fecaca33}.border-red-200/25{border-color:#fecaca40}.border-red-200/30{border-color:#fecaca4d}.border-red-200/35{border-color:#fecaca59}.border-red-200/40{border-color:#fecaca66}.border-red-200/45{border-color:#fecaca73}.border-red-200/5{border-color:#fecaca0d}.border-red-200/50{border-color:#fecaca80}.border-red-200/55{border-color:#fecaca8c}.border-red-200/60{border-color:#fecaca99}.border-red-200/65{border-color:#fecacaa6}.border-red-200/70{border-color:#fecacab3}.border-red-200/75{border-color:#fecacabf}.border-red-200/80{border-color:#fecacacc}.border-red-200/85{border-color:#fecacad9}.border-red-200/90{border-color:#fecacae6}.border-red-200/95{border-color:#fecacaf2}.border-red-300{--tw-border-opacity: 1;border-color:rgb(252 165 165 / var(--tw-border-opacity, 1))}.border-red-300/0{border-color:#fca5a500}.border-red-300/10{border-color:#fca5a51a}.border-red-300/100{border-color:#fca5a5}.border-red-300/15{border-color:#fca5a526}.border-red-300/20{border-color:#fca5a533}.border-red-300/25{border-color:#fca5a540}.border-red-300/30{border-color:#fca5a54d}.border-red-300/35{border-color:#fca5a559}.border-red-300/40{border-color:#fca5a566}.border-red-300/45{border-color:#fca5a573}.border-red-300/5{border-color:#fca5a50d}.border-red-300/50{border-color:#fca5a580}.border-red-300/55{border-color:#fca5a58c}.border-red-300/60{border-color:#fca5a599}.border-red-300/65{border-color:#fca5a5a6}.border-red-300/70{border-color:#fca5a5b3}.border-red-300/75{border-color:#fca5a5bf}.border-red-300/80{border-color:#fca5a5cc}.border-red-300/85{border-color:#fca5a5d9}.border-red-300/90{border-color:#fca5a5e6}.border-red-300/95{border-color:#fca5a5f2}.border-red-400{--tw-border-opacity: 1;border-color:rgb(248 113 113 / var(--tw-border-opacity, 1))}.border-red-400/0{border-color:#f8717100}.border-red-400/10{border-color:#f871711a}.border-red-400/100{border-color:#f87171}.border-red-400/15{border-color:#f8717126}.border-red-400/20{border-color:#f8717133}.border-red-400/25{border-color:#f8717140}.border-red-400/30{border-color:#f871714d}.border-red-400/35{border-color:#f8717159}.border-red-400/40{border-color:#f8717166}.border-red-400/45{border-color:#f8717173}.border-red-400/5{border-color:#f871710d}.border-red-400/50{border-color:#f8717180}.border-red-400/55{border-color:#f871718c}.border-red-400/60{border-color:#f8717199}.border-red-400/65{border-color:#f87171a6}.border-red-400/70{border-color:#f87171b3}.border-red-400/75{border-color:#f87171bf}.border-red-400/80{border-color:#f87171cc}.border-red-400/85{border-color:#f87171d9}.border-red-400/90{border-color:#f87171e6}.border-red-400/95{border-color:#f87171f2}.border-red-50{--tw-border-opacity: 1;border-color:rgb(254 242 242 / var(--tw-border-opacity, 1))}.border-red-50/0{border-color:#fef2f200}.border-red-50/10{border-color:#fef2f21a}.border-red-50/100{border-color:#fef2f2}.border-red-50/15{border-color:#fef2f226}.border-red-50/20{border-color:#fef2f233}.border-red-50/25{border-color:#fef2f240}.border-red-50/30{border-color:#fef2f24d}.border-red-50/35{border-color:#fef2f259}.border-red-50/40{border-color:#fef2f266}.border-red-50/45{border-color:#fef2f273}.border-red-50/5{border-color:#fef2f20d}.border-red-50/50{border-color:#fef2f280}.border-red-50/55{border-color:#fef2f28c}.border-red-50/60{border-color:#fef2f299}.border-red-50/65{border-color:#fef2f2a6}.border-red-50/70{border-color:#fef2f2b3}.border-red-50/75{border-color:#fef2f2bf}.border-red-50/80{border-color:#fef2f2cc}.border-red-50/85{border-color:#fef2f2d9}.border-red-50/90{border-color:#fef2f2e6}.border-red-50/95{border-color:#fef2f2f2}.border-red-500{--tw-border-opacity: 1;border-color:rgb(239 68 68 / var(--tw-border-opacity, 1))}.border-red-500/0{border-color:#ef444400}.border-red-500/10{border-color:#ef44441a}.border-red-500/100{border-color:#ef4444}.border-red-500/15{border-color:#ef444426}.border-red-500/20{border-color:#ef444433}.border-red-500/25{border-color:#ef444440}.border-red-500/30{border-color:#ef44444d}.border-red-500/35{border-color:#ef444459}.border-red-500/40{border-color:#ef444466}.border-red-500/45{border-color:#ef444473}.border-red-500/5{border-color:#ef44440d}.border-red-500/50{border-color:#ef444480}.border-red-500/55{border-color:#ef44448c}.border-red-500/60{border-color:#ef444499}.border-red-500/65{border-color:#ef4444a6}.border-red-500/70{border-color:#ef4444b3}.border-red-500/75{border-color:#ef4444bf}.border-red-500/80{border-color:#ef4444cc}.border-red-500/85{border-color:#ef4444d9}.border-red-500/90{border-color:#ef4444e6}.border-red-500/95{border-color:#ef4444f2}.border-red-600{--tw-border-opacity: 1;border-color:rgb(220 38 38 / var(--tw-border-opacity, 1))}.border-red-600/0{border-color:#dc262600}.border-red-600/10{border-color:#dc26261a}.border-red-600/100{border-color:#dc2626}.border-red-600/15{border-color:#dc262626}.border-red-600/20{border-color:#dc262633}.border-red-600/25{border-color:#dc262640}.border-red-600/30{border-color:#dc26264d}.border-red-600/35{border-color:#dc262659}.border-red-600/40{border-color:#dc262666}.border-red-600/45{border-color:#dc262673}.border-red-600/5{border-color:#dc26260d}.border-red-600/50{border-color:#dc262680}.border-red-600/55{border-color:#dc26268c}.border-red-600/60{border-color:#dc262699}.border-red-600/65{border-color:#dc2626a6}.border-red-600/70{border-color:#dc2626b3}.border-red-600/75{border-color:#dc2626bf}.border-red-600/80{border-color:#dc2626cc}.border-red-600/85{border-color:#dc2626d9}.border-red-600/90{border-color:#dc2626e6}.border-red-600/95{border-color:#dc2626f2}.border-red-700{--tw-border-opacity: 1;border-color:rgb(185 28 28 / var(--tw-border-opacity, 1))}.border-red-700/0{border-color:#b91c1c00}.border-red-700/10{border-color:#b91c1c1a}.border-red-700/100{border-color:#b91c1c}.border-red-700/15{border-color:#b91c1c26}.border-red-700/20{border-color:#b91c1c33}.border-red-700/25{border-color:#b91c1c40}.border-red-700/30{border-color:#b91c1c4d}.border-red-700/35{border-color:#b91c1c59}.border-red-700/40{border-color:#b91c1c66}.border-red-700/45{border-color:#b91c1c73}.border-red-700/5{border-color:#b91c1c0d}.border-red-700/50{border-color:#b91c1c80}.border-red-700/55{border-color:#b91c1c8c}.border-red-700/60{border-color:#b91c1c99}.border-red-700/65{border-color:#b91c1ca6}.border-red-700/70{border-color:#b91c1cb3}.border-red-700/75{border-color:#b91c1cbf}.border-red-700/80{border-color:#b91c1ccc}.border-red-700/85{border-color:#b91c1cd9}.border-red-700/90{border-color:#b91c1ce6}.border-red-700/95{border-color:#b91c1cf2}.border-red-800{--tw-border-opacity: 1;border-color:rgb(153 27 27 / var(--tw-border-opacity, 1))}.border-red-800/0{border-color:#991b1b00}.border-red-800/10{border-color:#991b1b1a}.border-red-800/100{border-color:#991b1b}.border-red-800/15{border-color:#991b1b26}.border-red-800/20{border-color:#991b1b33}.border-red-800/25{border-color:#991b1b40}.border-red-800/30{border-color:#991b1b4d}.border-red-800/35{border-color:#991b1b59}.border-red-800/40{border-color:#991b1b66}.border-red-800/45{border-color:#991b1b73}.border-red-800/5{border-color:#991b1b0d}.border-red-800/50{border-color:#991b1b80}.border-red-800/55{border-color:#991b1b8c}.border-red-800/60{border-color:#991b1b99}.border-red-800/65{border-color:#991b1ba6}.border-red-800/70{border-color:#991b1bb3}.border-red-800/75{border-color:#991b1bbf}.border-red-800/80{border-color:#991b1bcc}.border-red-800/85{border-color:#991b1bd9}.border-red-800/90{border-color:#991b1be6}.border-red-800/95{border-color:#991b1bf2}.border-red-900{--tw-border-opacity: 1;border-color:rgb(127 29 29 / var(--tw-border-opacity, 1))}.border-red-900/0{border-color:#7f1d1d00}.border-red-900/10{border-color:#7f1d1d1a}.border-red-900/100{border-color:#7f1d1d}.border-red-900/15{border-color:#7f1d1d26}.border-red-900/20{border-color:#7f1d1d33}.border-red-900/25{border-color:#7f1d1d40}.border-red-900/30{border-color:#7f1d1d4d}.border-red-900/35{border-color:#7f1d1d59}.border-red-900/40{border-color:#7f1d1d66}.border-red-900/45{border-color:#7f1d1d73}.border-red-900/5{border-color:#7f1d1d0d}.border-red-900/50{border-color:#7f1d1d80}.border-red-900/55{border-color:#7f1d1d8c}.border-red-900/60{border-color:#7f1d1d99}.border-red-900/65{border-color:#7f1d1da6}.border-red-900/70{border-color:#7f1d1db3}.border-red-900/75{border-color:#7f1d1dbf}.border-red-900/80{border-color:#7f1d1dcc}.border-red-900/85{border-color:#7f1d1dd9}.border-red-900/90{border-color:#7f1d1de6}.border-red-900/95{border-color:#7f1d1df2}.border-transparent{border-color:transparent}.bg-background{background-color:hsl(var(--background))}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.bg-black/80{background-color:#000c}.bg-blue-100{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.bg-blue-100/0{background-color:#dbeafe00}.bg-blue-100/10{background-color:#dbeafe1a}.bg-blue-100/100{background-color:#dbeafe}.bg-blue-100/15{background-color:#dbeafe26}.bg-blue-100/20{background-color:#dbeafe33}.bg-blue-100/25{background-color:#dbeafe40}.bg-blue-100/30{background-color:#dbeafe4d}.bg-blue-100/35{background-color:#dbeafe59}.bg-blue-100/40{background-color:#dbeafe66}.bg-blue-100/45{background-color:#dbeafe73}.bg-blue-100/5{background-color:#dbeafe0d}.bg-blue-100/50{background-color:#dbeafe80}.bg-blue-100/55{background-color:#dbeafe8c}.bg-blue-100/60{background-color:#dbeafe99}.bg-blue-100/65{background-color:#dbeafea6}.bg-blue-100/70{background-color:#dbeafeb3}.bg-blue-100/75{background-color:#dbeafebf}.bg-blue-100/80{background-color:#dbeafecc}.bg-blue-100/85{background-color:#dbeafed9}.bg-blue-100/90{background-color:#dbeafee6}.bg-blue-100/95{background-color:#dbeafef2}.bg-blue-200{--tw-bg-opacity: 1;background-color:rgb(191 219 254 / var(--tw-bg-opacity, 1))}.bg-blue-200/0{background-color:#bfdbfe00}.bg-blue-200/10{background-color:#bfdbfe1a}.bg-blue-200/100{background-color:#bfdbfe}.bg-blue-200/15{background-color:#bfdbfe26}.bg-blue-200/20{background-color:#bfdbfe33}.bg-blue-200/25{background-color:#bfdbfe40}.bg-blue-200/30{background-color:#bfdbfe4d}.bg-blue-200/35{background-color:#bfdbfe59}.bg-blue-200/40{background-color:#bfdbfe66}.bg-blue-200/45{background-color:#bfdbfe73}.bg-blue-200/5{background-color:#bfdbfe0d}.bg-blue-200/50{background-color:#bfdbfe80}.bg-blue-200/55{background-color:#bfdbfe8c}.bg-blue-200/60{background-color:#bfdbfe99}.bg-blue-200/65{background-color:#bfdbfea6}.bg-blue-200/70{background-color:#bfdbfeb3}.bg-blue-200/75{background-color:#bfdbfebf}.bg-blue-200/80{background-color:#bfdbfecc}.bg-blue-200/85{background-color:#bfdbfed9}.bg-blue-200/90{background-color:#bfdbfee6}.bg-blue-200/95{background-color:#bfdbfef2}.bg-blue-300{--tw-bg-opacity: 1;background-color:rgb(147 197 253 / var(--tw-bg-opacity, 1))}.bg-blue-300/0{background-color:#93c5fd00}.bg-blue-300/10{background-color:#93c5fd1a}.bg-blue-300/100{background-color:#93c5fd}.bg-blue-300/15{background-color:#93c5fd26}.bg-blue-300/20{background-color:#93c5fd33}.bg-blue-300/25{background-color:#93c5fd40}.bg-blue-300/30{background-color:#93c5fd4d}.bg-blue-300/35{background-color:#93c5fd59}.bg-blue-300/40{background-color:#93c5fd66}.bg-blue-300/45{background-color:#93c5fd73}.bg-blue-300/5{background-color:#93c5fd0d}.bg-blue-300/50{background-color:#93c5fd80}.bg-blue-300/55{background-color:#93c5fd8c}.bg-blue-300/60{background-color:#93c5fd99}.bg-blue-300/65{background-color:#93c5fda6}.bg-blue-300/70{background-color:#93c5fdb3}.bg-blue-300/75{background-color:#93c5fdbf}.bg-blue-300/80{background-color:#93c5fdcc}.bg-blue-300/85{background-color:#93c5fdd9}.bg-blue-300/90{background-color:#93c5fde6}.bg-blue-300/95{background-color:#93c5fdf2}.bg-blue-400{--tw-bg-opacity: 1;background-color:rgb(96 165 250 / var(--tw-bg-opacity, 1))}.bg-blue-400/0{background-color:#60a5fa00}.bg-blue-400/10{background-color:#60a5fa1a}.bg-blue-400/100{background-color:#60a5fa}.bg-blue-400/15{background-color:#60a5fa26}.bg-blue-400/20{background-color:#60a5fa33}.bg-blue-400/25{background-color:#60a5fa40}.bg-blue-400/30{background-color:#60a5fa4d}.bg-blue-400/35{background-color:#60a5fa59}.bg-blue-400/40{background-color:#60a5fa66}.bg-blue-400/45{background-color:#60a5fa73}.bg-blue-400/5{background-color:#60a5fa0d}.bg-blue-400/50{background-color:#60a5fa80}.bg-blue-400/55{background-color:#60a5fa8c}.bg-blue-400/60{background-color:#60a5fa99}.bg-blue-400/65{background-color:#60a5faa6}.bg-blue-400/70{background-color:#60a5fab3}.bg-blue-400/75{background-color:#60a5fabf}.bg-blue-400/80{background-color:#60a5facc}.bg-blue-400/85{background-color:#60a5fad9}.bg-blue-400/90{background-color:#60a5fae6}.bg-blue-400/95{background-color:#60a5faf2}.bg-blue-50{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.bg-blue-50/0{background-color:#eff6ff00}.bg-blue-50/10{background-color:#eff6ff1a}.bg-blue-50/100{background-color:#eff6ff}.bg-blue-50/15{background-color:#eff6ff26}.bg-blue-50/20{background-color:#eff6ff33}.bg-blue-50/25{background-color:#eff6ff40}.bg-blue-50/30{background-color:#eff6ff4d}.bg-blue-50/35{background-color:#eff6ff59}.bg-blue-50/40{background-color:#eff6ff66}.bg-blue-50/45{background-color:#eff6ff73}.bg-blue-50/5{background-color:#eff6ff0d}.bg-blue-50/50{background-color:#eff6ff80}.bg-blue-50/55{background-color:#eff6ff8c}.bg-blue-50/60{background-color:#eff6ff99}.bg-blue-50/65{background-color:#eff6ffa6}.bg-blue-50/70{background-color:#eff6ffb3}.bg-blue-50/75{background-color:#eff6ffbf}.bg-blue-50/80{background-color:#eff6ffcc}.bg-blue-50/85{background-color:#eff6ffd9}.bg-blue-50/90{background-color:#eff6ffe6}.bg-blue-50/95{background-color:#eff6fff2}.bg-blue-500{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.bg-blue-500/0{background-color:#3b82f600}.bg-blue-500/10{background-color:#3b82f61a}.bg-blue-500/100{background-color:#3b82f6}.bg-blue-500/15{background-color:#3b82f626}.bg-blue-500/20{background-color:#3b82f633}.bg-blue-500/25{background-color:#3b82f640}.bg-blue-500/30{background-color:#3b82f64d}.bg-blue-500/35{background-color:#3b82f659}.bg-blue-500/40{background-color:#3b82f666}.bg-blue-500/45{background-color:#3b82f673}.bg-blue-500/5{background-color:#3b82f60d}.bg-blue-500/50{background-color:#3b82f680}.bg-blue-500/55{background-color:#3b82f68c}.bg-blue-500/60{background-color:#3b82f699}.bg-blue-500/65{background-color:#3b82f6a6}.bg-blue-500/70{background-color:#3b82f6b3}.bg-blue-500/75{background-color:#3b82f6bf}.bg-blue-500/80{background-color:#3b82f6cc}.bg-blue-500/85{background-color:#3b82f6d9}.bg-blue-500/90{background-color:#3b82f6e6}.bg-blue-500/95{background-color:#3b82f6f2}.bg-blue-600{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.bg-blue-600/0{background-color:#2563eb00}.bg-blue-600/10{background-color:#2563eb1a}.bg-blue-600/100{background-color:#2563eb}.bg-blue-600/15{background-color:#2563eb26}.bg-blue-600/20{background-color:#2563eb33}.bg-blue-600/25{background-color:#2563eb40}.bg-blue-600/30{background-color:#2563eb4d}.bg-blue-600/35{background-color:#2563eb59}.bg-blue-600/40{background-color:#2563eb66}.bg-blue-600/45{background-color:#2563eb73}.bg-blue-600/5{background-color:#2563eb0d}.bg-blue-600/50{background-color:#2563eb80}.bg-blue-600/55{background-color:#2563eb8c}.bg-blue-600/60{background-color:#2563eb99}.bg-blue-600/65{background-color:#2563eba6}.bg-blue-600/70{background-color:#2563ebb3}.bg-blue-600/75{background-color:#2563ebbf}.bg-blue-600/80{background-color:#2563ebcc}.bg-blue-600/85{background-color:#2563ebd9}.bg-blue-600/90{background-color:#2563ebe6}.bg-blue-600/95{background-color:#2563ebf2}.bg-blue-700{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1))}.bg-blue-700/0{background-color:#1d4ed800}.bg-blue-700/10{background-color:#1d4ed81a}.bg-blue-700/100{background-color:#1d4ed8}.bg-blue-700/15{background-color:#1d4ed826}.bg-blue-700/20{background-color:#1d4ed833}.bg-blue-700/25{background-color:#1d4ed840}.bg-blue-700/30{background-color:#1d4ed84d}.bg-blue-700/35{background-color:#1d4ed859}.bg-blue-700/40{background-color:#1d4ed866}.bg-blue-700/45{background-color:#1d4ed873}.bg-blue-700/5{background-color:#1d4ed80d}.bg-blue-700/50{background-color:#1d4ed880}.bg-blue-700/55{background-color:#1d4ed88c}.bg-blue-700/60{background-color:#1d4ed899}.bg-blue-700/65{background-color:#1d4ed8a6}.bg-blue-700/70{background-color:#1d4ed8b3}.bg-blue-700/75{background-color:#1d4ed8bf}.bg-blue-700/80{background-color:#1d4ed8cc}.bg-blue-700/85{background-color:#1d4ed8d9}.bg-blue-700/90{background-color:#1d4ed8e6}.bg-blue-700/95{background-color:#1d4ed8f2}.bg-blue-800{--tw-bg-opacity: 1;background-color:rgb(30 64 175 / var(--tw-bg-opacity, 1))}.bg-blue-800/0{background-color:#1e40af00}.bg-blue-800/10{background-color:#1e40af1a}.bg-blue-800/100{background-color:#1e40af}.bg-blue-800/15{background-color:#1e40af26}.bg-blue-800/20{background-color:#1e40af33}.bg-blue-800/25{background-color:#1e40af40}.bg-blue-800/30{background-color:#1e40af4d}.bg-blue-800/35{background-color:#1e40af59}.bg-blue-800/40{background-color:#1e40af66}.bg-blue-800/45{background-color:#1e40af73}.bg-blue-800/5{background-color:#1e40af0d}.bg-blue-800/50{background-color:#1e40af80}.bg-blue-800/55{background-color:#1e40af8c}.bg-blue-800/60{background-color:#1e40af99}.bg-blue-800/65{background-color:#1e40afa6}.bg-blue-800/70{background-color:#1e40afb3}.bg-blue-800/75{background-color:#1e40afbf}.bg-blue-800/80{background-color:#1e40afcc}.bg-blue-800/85{background-color:#1e40afd9}.bg-blue-800/90{background-color:#1e40afe6}.bg-blue-800/95{background-color:#1e40aff2}.bg-blue-900{--tw-bg-opacity: 1;background-color:rgb(30 58 138 / var(--tw-bg-opacity, 1))}.bg-blue-900/0{background-color:#1e3a8a00}.bg-blue-900/10{background-color:#1e3a8a1a}.bg-blue-900/100{background-color:#1e3a8a}.bg-blue-900/15{background-color:#1e3a8a26}.bg-blue-900/20{background-color:#1e3a8a33}.bg-blue-900/25{background-color:#1e3a8a40}.bg-blue-900/30{background-color:#1e3a8a4d}.bg-blue-900/35{background-color:#1e3a8a59}.bg-blue-900/40{background-color:#1e3a8a66}.bg-blue-900/45{background-color:#1e3a8a73}.bg-blue-900/5{background-color:#1e3a8a0d}.bg-blue-900/50{background-color:#1e3a8a80}.bg-blue-900/55{background-color:#1e3a8a8c}.bg-blue-900/60{background-color:#1e3a8a99}.bg-blue-900/65{background-color:#1e3a8aa6}.bg-blue-900/70{background-color:#1e3a8ab3}.bg-blue-900/75{background-color:#1e3a8abf}.bg-blue-900/80{background-color:#1e3a8acc}.bg-blue-900/85{background-color:#1e3a8ad9}.bg-blue-900/90{background-color:#1e3a8ae6}.bg-blue-900/95{background-color:#1e3a8af2}.bg-card{background-color:hsl(var(--card))}.bg-destructive{background-color:hsl(var(--destructive))}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-gray-100/0{background-color:#f3f4f600}.bg-gray-100/10{background-color:#f3f4f61a}.bg-gray-100/100{background-color:#f3f4f6}.bg-gray-100/15{background-color:#f3f4f626}.bg-gray-100/20{background-color:#f3f4f633}.bg-gray-100/25{background-color:#f3f4f640}.bg-gray-100/30{background-color:#f3f4f64d}.bg-gray-100/35{background-color:#f3f4f659}.bg-gray-100/40{background-color:#f3f4f666}.bg-gray-100/45{background-color:#f3f4f673}.bg-gray-100/5{background-color:#f3f4f60d}.bg-gray-100/50{background-color:#f3f4f680}.bg-gray-100/55{background-color:#f3f4f68c}.bg-gray-100/60{background-color:#f3f4f699}.bg-gray-100/65{background-color:#f3f4f6a6}.bg-gray-100/70{background-color:#f3f4f6b3}.bg-gray-100/75{background-color:#f3f4f6bf}.bg-gray-100/80{background-color:#f3f4f6cc}.bg-gray-100/85{background-color:#f3f4f6d9}.bg-gray-100/90{background-color:#f3f4f6e6}.bg-gray-100/95{background-color:#f3f4f6f2}.bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.bg-gray-200/0{background-color:#e5e7eb00}.bg-gray-200/10{background-color:#e5e7eb1a}.bg-gray-200/100{background-color:#e5e7eb}.bg-gray-200/15{background-color:#e5e7eb26}.bg-gray-200/20{background-color:#e5e7eb33}.bg-gray-200/25{background-color:#e5e7eb40}.bg-gray-200/30{background-color:#e5e7eb4d}.bg-gray-200/35{background-color:#e5e7eb59}.bg-gray-200/40{background-color:#e5e7eb66}.bg-gray-200/45{background-color:#e5e7eb73}.bg-gray-200/5{background-color:#e5e7eb0d}.bg-gray-200/50{background-color:#e5e7eb80}.bg-gray-200/55{background-color:#e5e7eb8c}.bg-gray-200/60{background-color:#e5e7eb99}.bg-gray-200/65{background-color:#e5e7eba6}.bg-gray-200/70{background-color:#e5e7ebb3}.bg-gray-200/75{background-color:#e5e7ebbf}.bg-gray-200/80{background-color:#e5e7ebcc}.bg-gray-200/85{background-color:#e5e7ebd9}.bg-gray-200/90{background-color:#e5e7ebe6}.bg-gray-200/95{background-color:#e5e7ebf2}.bg-gray-300{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity, 1))}.bg-gray-300/0{background-color:#d1d5db00}.bg-gray-300/10{background-color:#d1d5db1a}.bg-gray-300/100{background-color:#d1d5db}.bg-gray-300/15{background-color:#d1d5db26}.bg-gray-300/20{background-color:#d1d5db33}.bg-gray-300/25{background-color:#d1d5db40}.bg-gray-300/30{background-color:#d1d5db4d}.bg-gray-300/35{background-color:#d1d5db59}.bg-gray-300/40{background-color:#d1d5db66}.bg-gray-300/45{background-color:#d1d5db73}.bg-gray-300/5{background-color:#d1d5db0d}.bg-gray-300/50{background-color:#d1d5db80}.bg-gray-300/55{background-color:#d1d5db8c}.bg-gray-300/60{background-color:#d1d5db99}.bg-gray-300/65{background-color:#d1d5dba6}.bg-gray-300/70{background-color:#d1d5dbb3}.bg-gray-300/75{background-color:#d1d5dbbf}.bg-gray-300/80{background-color:#d1d5dbcc}.bg-gray-300/85{background-color:#d1d5dbd9}.bg-gray-300/90{background-color:#d1d5dbe6}.bg-gray-300/95{background-color:#d1d5dbf2}.bg-gray-400{--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity, 1))}.bg-gray-400/0{background-color:#9ca3af00}.bg-gray-400/10{background-color:#9ca3af1a}.bg-gray-400/100{background-color:#9ca3af}.bg-gray-400/15{background-color:#9ca3af26}.bg-gray-400/20{background-color:#9ca3af33}.bg-gray-400/25{background-color:#9ca3af40}.bg-gray-400/30{background-color:#9ca3af4d}.bg-gray-400/35{background-color:#9ca3af59}.bg-gray-400/40{background-color:#9ca3af66}.bg-gray-400/45{background-color:#9ca3af73}.bg-gray-400/5{background-color:#9ca3af0d}.bg-gray-400/50{background-color:#9ca3af80}.bg-gray-400/55{background-color:#9ca3af8c}.bg-gray-400/60{background-color:#9ca3af99}.bg-gray-400/65{background-color:#9ca3afa6}.bg-gray-400/70{background-color:#9ca3afb3}.bg-gray-400/75{background-color:#9ca3afbf}.bg-gray-400/80{background-color:#9ca3afcc}.bg-gray-400/85{background-color:#9ca3afd9}.bg-gray-400/90{background-color:#9ca3afe6}.bg-gray-400/95{background-color:#9ca3aff2}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.bg-gray-50/0{background-color:#f9fafb00}.bg-gray-50/10{background-color:#f9fafb1a}.bg-gray-50/100{background-color:#f9fafb}.bg-gray-50/15{background-color:#f9fafb26}.bg-gray-50/20{background-color:#f9fafb33}.bg-gray-50/25{background-color:#f9fafb40}.bg-gray-50/30{background-color:#f9fafb4d}.bg-gray-50/35{background-color:#f9fafb59}.bg-gray-50/40{background-color:#f9fafb66}.bg-gray-50/45{background-color:#f9fafb73}.bg-gray-50/5{background-color:#f9fafb0d}.bg-gray-50/50{background-color:#f9fafb80}.bg-gray-50/55{background-color:#f9fafb8c}.bg-gray-50/60{background-color:#f9fafb99}.bg-gray-50/65{background-color:#f9fafba6}.bg-gray-50/70{background-color:#f9fafbb3}.bg-gray-50/75{background-color:#f9fafbbf}.bg-gray-50/80{background-color:#f9fafbcc}.bg-gray-50/85{background-color:#f9fafbd9}.bg-gray-50/90{background-color:#f9fafbe6}.bg-gray-50/95{background-color:#f9fafbf2}.bg-gray-500{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity, 1))}.bg-gray-500/0{background-color:#6b728000}.bg-gray-500/10{background-color:#6b72801a}.bg-gray-500/100{background-color:#6b7280}.bg-gray-500/15{background-color:#6b728026}.bg-gray-500/20{background-color:#6b728033}.bg-gray-500/25{background-color:#6b728040}.bg-gray-500/30{background-color:#6b72804d}.bg-gray-500/35{background-color:#6b728059}.bg-gray-500/40{background-color:#6b728066}.bg-gray-500/45{background-color:#6b728073}.bg-gray-500/5{background-color:#6b72800d}.bg-gray-500/50{background-color:#6b728080}.bg-gray-500/55{background-color:#6b72808c}.bg-gray-500/60{background-color:#6b728099}.bg-gray-500/65{background-color:#6b7280a6}.bg-gray-500/70{background-color:#6b7280b3}.bg-gray-500/75{background-color:#6b7280bf}.bg-gray-500/80{background-color:#6b7280cc}.bg-gray-500/85{background-color:#6b7280d9}.bg-gray-500/90{background-color:#6b7280e6}.bg-gray-500/95{background-color:#6b7280f2}.bg-gray-600{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.bg-gray-600/0{background-color:#4b556300}.bg-gray-600/10{background-color:#4b55631a}.bg-gray-600/100{background-color:#4b5563}.bg-gray-600/15{background-color:#4b556326}.bg-gray-600/20{background-color:#4b556333}.bg-gray-600/25{background-color:#4b556340}.bg-gray-600/30{background-color:#4b55634d}.bg-gray-600/35{background-color:#4b556359}.bg-gray-600/40{background-color:#4b556366}.bg-gray-600/45{background-color:#4b556373}.bg-gray-600/5{background-color:#4b55630d}.bg-gray-600/50{background-color:#4b556380}.bg-gray-600/55{background-color:#4b55638c}.bg-gray-600/60{background-color:#4b556399}.bg-gray-600/65{background-color:#4b5563a6}.bg-gray-600/70{background-color:#4b5563b3}.bg-gray-600/75{background-color:#4b5563bf}.bg-gray-600/80{background-color:#4b5563cc}.bg-gray-600/85{background-color:#4b5563d9}.bg-gray-600/90{background-color:#4b5563e6}.bg-gray-600/95{background-color:#4b5563f2}.bg-gray-700{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.bg-gray-700/0{background-color:#37415100}.bg-gray-700/10{background-color:#3741511a}.bg-gray-700/100{background-color:#374151}.bg-gray-700/15{background-color:#37415126}.bg-gray-700/20{background-color:#37415133}.bg-gray-700/25{background-color:#37415140}.bg-gray-700/30{background-color:#3741514d}.bg-gray-700/35{background-color:#37415159}.bg-gray-700/40{background-color:#37415166}.bg-gray-700/45{background-color:#37415173}.bg-gray-700/5{background-color:#3741510d}.bg-gray-700/50{background-color:#37415180}.bg-gray-700/55{background-color:#3741518c}.bg-gray-700/60{background-color:#37415199}.bg-gray-700/65{background-color:#374151a6}.bg-gray-700/70{background-color:#374151b3}.bg-gray-700/75{background-color:#374151bf}.bg-gray-700/80{background-color:#374151cc}.bg-gray-700/85{background-color:#374151d9}.bg-gray-700/90{background-color:#374151e6}.bg-gray-700/95{background-color:#374151f2}.bg-gray-800{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.bg-gray-800/0{background-color:#1f293700}.bg-gray-800/10{background-color:#1f29371a}.bg-gray-800/100{background-color:#1f2937}.bg-gray-800/15{background-color:#1f293726}.bg-gray-800/20{background-color:#1f293733}.bg-gray-800/25{background-color:#1f293740}.bg-gray-800/30{background-color:#1f29374d}.bg-gray-800/35{background-color:#1f293759}.bg-gray-800/40{background-color:#1f293766}.bg-gray-800/45{background-color:#1f293773}.bg-gray-800/5{background-color:#1f29370d}.bg-gray-800/50{background-color:#1f293780}.bg-gray-800/55{background-color:#1f29378c}.bg-gray-800/60{background-color:#1f293799}.bg-gray-800/65{background-color:#1f2937a6}.bg-gray-800/70{background-color:#1f2937b3}.bg-gray-800/75{background-color:#1f2937bf}.bg-gray-800/80{background-color:#1f2937cc}.bg-gray-800/85{background-color:#1f2937d9}.bg-gray-800/90{background-color:#1f2937e6}.bg-gray-800/95{background-color:#1f2937f2}.bg-gray-900{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity, 1))}.bg-gray-900/0{background-color:#11182700}.bg-gray-900/10{background-color:#1118271a}.bg-gray-900/100{background-color:#111827}.bg-gray-900/15{background-color:#11182726}.bg-gray-900/20{background-color:#11182733}.bg-gray-900/25{background-color:#11182740}.bg-gray-900/30{background-color:#1118274d}.bg-gray-900/35{background-color:#11182759}.bg-gray-900/40{background-color:#11182766}.bg-gray-900/45{background-color:#11182773}.bg-gray-900/5{background-color:#1118270d}.bg-gray-900/50{background-color:#11182780}.bg-gray-900/55{background-color:#1118278c}.bg-gray-900/60{background-color:#11182799}.bg-gray-900/65{background-color:#111827a6}.bg-gray-900/70{background-color:#111827b3}.bg-gray-900/75{background-color:#111827bf}.bg-gray-900/80{background-color:#111827cc}.bg-gray-900/85{background-color:#111827d9}.bg-gray-900/90{background-color:#111827e6}.bg-gray-900/95{background-color:#111827f2}.bg-green-100{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1))}.bg-green-100/0{background-color:#dcfce700}.bg-green-100/10{background-color:#dcfce71a}.bg-green-100/100{background-color:#dcfce7}.bg-green-100/15{background-color:#dcfce726}.bg-green-100/20{background-color:#dcfce733}.bg-green-100/25{background-color:#dcfce740}.bg-green-100/30{background-color:#dcfce74d}.bg-green-100/35{background-color:#dcfce759}.bg-green-100/40{background-color:#dcfce766}.bg-green-100/45{background-color:#dcfce773}.bg-green-100/5{background-color:#dcfce70d}.bg-green-100/50{background-color:#dcfce780}.bg-green-100/55{background-color:#dcfce78c}.bg-green-100/60{background-color:#dcfce799}.bg-green-100/65{background-color:#dcfce7a6}.bg-green-100/70{background-color:#dcfce7b3}.bg-green-100/75{background-color:#dcfce7bf}.bg-green-100/80{background-color:#dcfce7cc}.bg-green-100/85{background-color:#dcfce7d9}.bg-green-100/90{background-color:#dcfce7e6}.bg-green-100/95{background-color:#dcfce7f2}.bg-green-200{--tw-bg-opacity: 1;background-color:rgb(187 247 208 / var(--tw-bg-opacity, 1))}.bg-green-200/0{background-color:#bbf7d000}.bg-green-200/10{background-color:#bbf7d01a}.bg-green-200/100{background-color:#bbf7d0}.bg-green-200/15{background-color:#bbf7d026}.bg-green-200/20{background-color:#bbf7d033}.bg-green-200/25{background-color:#bbf7d040}.bg-green-200/30{background-color:#bbf7d04d}.bg-green-200/35{background-color:#bbf7d059}.bg-green-200/40{background-color:#bbf7d066}.bg-green-200/45{background-color:#bbf7d073}.bg-green-200/5{background-color:#bbf7d00d}.bg-green-200/50{background-color:#bbf7d080}.bg-green-200/55{background-color:#bbf7d08c}.bg-green-200/60{background-color:#bbf7d099}.bg-green-200/65{background-color:#bbf7d0a6}.bg-green-200/70{background-color:#bbf7d0b3}.bg-green-200/75{background-color:#bbf7d0bf}.bg-green-200/80{background-color:#bbf7d0cc}.bg-green-200/85{background-color:#bbf7d0d9}.bg-green-200/90{background-color:#bbf7d0e6}.bg-green-200/95{background-color:#bbf7d0f2}.bg-green-300{--tw-bg-opacity: 1;background-color:rgb(134 239 172 / var(--tw-bg-opacity, 1))}.bg-green-300/0{background-color:#86efac00}.bg-green-300/10{background-color:#86efac1a}.bg-green-300/100{background-color:#86efac}.bg-green-300/15{background-color:#86efac26}.bg-green-300/20{background-color:#86efac33}.bg-green-300/25{background-color:#86efac40}.bg-green-300/30{background-color:#86efac4d}.bg-green-300/35{background-color:#86efac59}.bg-green-300/40{background-color:#86efac66}.bg-green-300/45{background-color:#86efac73}.bg-green-300/5{background-color:#86efac0d}.bg-green-300/50{background-color:#86efac80}.bg-green-300/55{background-color:#86efac8c}.bg-green-300/60{background-color:#86efac99}.bg-green-300/65{background-color:#86efaca6}.bg-green-300/70{background-color:#86efacb3}.bg-green-300/75{background-color:#86efacbf}.bg-green-300/80{background-color:#86efaccc}.bg-green-300/85{background-color:#86efacd9}.bg-green-300/90{background-color:#86eface6}.bg-green-300/95{background-color:#86efacf2}.bg-green-400{--tw-bg-opacity: 1;background-color:rgb(74 222 128 / var(--tw-bg-opacity, 1))}.bg-green-400/0{background-color:#4ade8000}.bg-green-400/10{background-color:#4ade801a}.bg-green-400/100{background-color:#4ade80}.bg-green-400/15{background-color:#4ade8026}.bg-green-400/20{background-color:#4ade8033}.bg-green-400/25{background-color:#4ade8040}.bg-green-400/30{background-color:#4ade804d}.bg-green-400/35{background-color:#4ade8059}.bg-green-400/40{background-color:#4ade8066}.bg-green-400/45{background-color:#4ade8073}.bg-green-400/5{background-color:#4ade800d}.bg-green-400/50{background-color:#4ade8080}.bg-green-400/55{background-color:#4ade808c}.bg-green-400/60{background-color:#4ade8099}.bg-green-400/65{background-color:#4ade80a6}.bg-green-400/70{background-color:#4ade80b3}.bg-green-400/75{background-color:#4ade80bf}.bg-green-400/80{background-color:#4ade80cc}.bg-green-400/85{background-color:#4ade80d9}.bg-green-400/90{background-color:#4ade80e6}.bg-green-400/95{background-color:#4ade80f2}.bg-green-50{--tw-bg-opacity: 1;background-color:rgb(240 253 244 / var(--tw-bg-opacity, 1))}.bg-green-50/0{background-color:#f0fdf400}.bg-green-50/10{background-color:#f0fdf41a}.bg-green-50/100{background-color:#f0fdf4}.bg-green-50/15{background-color:#f0fdf426}.bg-green-50/20{background-color:#f0fdf433}.bg-green-50/25{background-color:#f0fdf440}.bg-green-50/30{background-color:#f0fdf44d}.bg-green-50/35{background-color:#f0fdf459}.bg-green-50/40{background-color:#f0fdf466}.bg-green-50/45{background-color:#f0fdf473}.bg-green-50/5{background-color:#f0fdf40d}.bg-green-50/50{background-color:#f0fdf480}.bg-green-50/55{background-color:#f0fdf48c}.bg-green-50/60{background-color:#f0fdf499}.bg-green-50/65{background-color:#f0fdf4a6}.bg-green-50/70{background-color:#f0fdf4b3}.bg-green-50/75{background-color:#f0fdf4bf}.bg-green-50/80{background-color:#f0fdf4cc}.bg-green-50/85{background-color:#f0fdf4d9}.bg-green-50/90{background-color:#f0fdf4e6}.bg-green-50/95{background-color:#f0fdf4f2}.bg-green-500{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.bg-green-500/0{background-color:#22c55e00}.bg-green-500/10{background-color:#22c55e1a}.bg-green-500/100{background-color:#22c55e}.bg-green-500/15{background-color:#22c55e26}.bg-green-500/20{background-color:#22c55e33}.bg-green-500/25{background-color:#22c55e40}.bg-green-500/30{background-color:#22c55e4d}.bg-green-500/35{background-color:#22c55e59}.bg-green-500/40{background-color:#22c55e66}.bg-green-500/45{background-color:#22c55e73}.bg-green-500/5{background-color:#22c55e0d}.bg-green-500/50{background-color:#22c55e80}.bg-green-500/55{background-color:#22c55e8c}.bg-green-500/60{background-color:#22c55e99}.bg-green-500/65{background-color:#22c55ea6}.bg-green-500/70{background-color:#22c55eb3}.bg-green-500/75{background-color:#22c55ebf}.bg-green-500/80{background-color:#22c55ecc}.bg-green-500/85{background-color:#22c55ed9}.bg-green-500/90{background-color:#22c55ee6}.bg-green-500/95{background-color:#22c55ef2}.bg-green-600{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity, 1))}.bg-green-600/0{background-color:#16a34a00}.bg-green-600/10{background-color:#16a34a1a}.bg-green-600/100{background-color:#16a34a}.bg-green-600/15{background-color:#16a34a26}.bg-green-600/20{background-color:#16a34a33}.bg-green-600/25{background-color:#16a34a40}.bg-green-600/30{background-color:#16a34a4d}.bg-green-600/35{background-color:#16a34a59}.bg-green-600/40{background-color:#16a34a66}.bg-green-600/45{background-color:#16a34a73}.bg-green-600/5{background-color:#16a34a0d}.bg-green-600/50{background-color:#16a34a80}.bg-green-600/55{background-color:#16a34a8c}.bg-green-600/60{background-color:#16a34a99}.bg-green-600/65{background-color:#16a34aa6}.bg-green-600/70{background-color:#16a34ab3}.bg-green-600/75{background-color:#16a34abf}.bg-green-600/80{background-color:#16a34acc}.bg-green-600/85{background-color:#16a34ad9}.bg-green-600/90{background-color:#16a34ae6}.bg-green-600/95{background-color:#16a34af2}.bg-green-700{--tw-bg-opacity: 1;background-color:rgb(21 128 61 / var(--tw-bg-opacity, 1))}.bg-green-700/0{background-color:#15803d00}.bg-green-700/10{background-color:#15803d1a}.bg-green-700/100{background-color:#15803d}.bg-green-700/15{background-color:#15803d26}.bg-green-700/20{background-color:#15803d33}.bg-green-700/25{background-color:#15803d40}.bg-green-700/30{background-color:#15803d4d}.bg-green-700/35{background-color:#15803d59}.bg-green-700/40{background-color:#15803d66}.bg-green-700/45{background-color:#15803d73}.bg-green-700/5{background-color:#15803d0d}.bg-green-700/50{background-color:#15803d80}.bg-green-700/55{background-color:#15803d8c}.bg-green-700/60{background-color:#15803d99}.bg-green-700/65{background-color:#15803da6}.bg-green-700/70{background-color:#15803db3}.bg-green-700/75{background-color:#15803dbf}.bg-green-700/80{background-color:#15803dcc}.bg-green-700/85{background-color:#15803dd9}.bg-green-700/90{background-color:#15803de6}.bg-green-700/95{background-color:#15803df2}.bg-green-800{--tw-bg-opacity: 1;background-color:rgb(22 101 52 / var(--tw-bg-opacity, 1))}.bg-green-800/0{background-color:#16653400}.bg-green-800/10{background-color:#1665341a}.bg-green-800/100{background-color:#166534}.bg-green-800/15{background-color:#16653426}.bg-green-800/20{background-color:#16653433}.bg-green-800/25{background-color:#16653440}.bg-green-800/30{background-color:#1665344d}.bg-green-800/35{background-color:#16653459}.bg-green-800/40{background-color:#16653466}.bg-green-800/45{background-color:#16653473}.bg-green-800/5{background-color:#1665340d}.bg-green-800/50{background-color:#16653480}.bg-green-800/55{background-color:#1665348c}.bg-green-800/60{background-color:#16653499}.bg-green-800/65{background-color:#166534a6}.bg-green-800/70{background-color:#166534b3}.bg-green-800/75{background-color:#166534bf}.bg-green-800/80{background-color:#166534cc}.bg-green-800/85{background-color:#166534d9}.bg-green-800/90{background-color:#166534e6}.bg-green-800/95{background-color:#166534f2}.bg-green-900{--tw-bg-opacity: 1;background-color:rgb(20 83 45 / var(--tw-bg-opacity, 1))}.bg-green-900/0{background-color:#14532d00}.bg-green-900/10{background-color:#14532d1a}.bg-green-900/100{background-color:#14532d}.bg-green-900/15{background-color:#14532d26}.bg-green-900/20{background-color:#14532d33}.bg-green-900/25{background-color:#14532d40}.bg-green-900/30{background-color:#14532d4d}.bg-green-900/35{background-color:#14532d59}.bg-green-900/40{background-color:#14532d66}.bg-green-900/45{background-color:#14532d73}.bg-green-900/5{background-color:#14532d0d}.bg-green-900/50{background-color:#14532d80}.bg-green-900/55{background-color:#14532d8c}.bg-green-900/60{background-color:#14532d99}.bg-green-900/65{background-color:#14532da6}.bg-green-900/70{background-color:#14532db3}.bg-green-900/75{background-color:#14532dbf}.bg-green-900/80{background-color:#14532dcc}.bg-green-900/85{background-color:#14532dd9}.bg-green-900/90{background-color:#14532de6}.bg-green-900/95{background-color:#14532df2}.bg-input{background-color:hsl(var(--input))}.bg-muted{background-color:hsl(var(--muted))}.bg-orange-50{--tw-bg-opacity: 1;background-color:rgb(255 247 237 / var(--tw-bg-opacity, 1))}.bg-popover{background-color:hsl(var(--popover))}.bg-primary{background-color:hsl(var(--primary))}.bg-purple-100{--tw-bg-opacity: 1;background-color:rgb(243 232 255 / var(--tw-bg-opacity, 1))}.bg-red-100{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.bg-red-100/0{background-color:#fee2e200}.bg-red-100/10{background-color:#fee2e21a}.bg-red-100/100{background-color:#fee2e2}.bg-red-100/15{background-color:#fee2e226}.bg-red-100/20{background-color:#fee2e233}.bg-red-100/25{background-color:#fee2e240}.bg-red-100/30{background-color:#fee2e24d}.bg-red-100/35{background-color:#fee2e259}.bg-red-100/40{background-color:#fee2e266}.bg-red-100/45{background-color:#fee2e273}.bg-red-100/5{background-color:#fee2e20d}.bg-red-100/50{background-color:#fee2e280}.bg-red-100/55{background-color:#fee2e28c}.bg-red-100/60{background-color:#fee2e299}.bg-red-100/65{background-color:#fee2e2a6}.bg-red-100/70{background-color:#fee2e2b3}.bg-red-100/75{background-color:#fee2e2bf}.bg-red-100/80{background-color:#fee2e2cc}.bg-red-100/85{background-color:#fee2e2d9}.bg-red-100/90{background-color:#fee2e2e6}.bg-red-100/95{background-color:#fee2e2f2}.bg-red-200{--tw-bg-opacity: 1;background-color:rgb(254 202 202 / var(--tw-bg-opacity, 1))}.bg-red-200/0{background-color:#fecaca00}.bg-red-200/10{background-color:#fecaca1a}.bg-red-200/100{background-color:#fecaca}.bg-red-200/15{background-color:#fecaca26}.bg-red-200/20{background-color:#fecaca33}.bg-red-200/25{background-color:#fecaca40}.bg-red-200/30{background-color:#fecaca4d}.bg-red-200/35{background-color:#fecaca59}.bg-red-200/40{background-color:#fecaca66}.bg-red-200/45{background-color:#fecaca73}.bg-red-200/5{background-color:#fecaca0d}.bg-red-200/50{background-color:#fecaca80}.bg-red-200/55{background-color:#fecaca8c}.bg-red-200/60{background-color:#fecaca99}.bg-red-200/65{background-color:#fecacaa6}.bg-red-200/70{background-color:#fecacab3}.bg-red-200/75{background-color:#fecacabf}.bg-red-200/80{background-color:#fecacacc}.bg-red-200/85{background-color:#fecacad9}.bg-red-200/90{background-color:#fecacae6}.bg-red-200/95{background-color:#fecacaf2}.bg-red-300{--tw-bg-opacity: 1;background-color:rgb(252 165 165 / var(--tw-bg-opacity, 1))}.bg-red-300/0{background-color:#fca5a500}.bg-red-300/10{background-color:#fca5a51a}.bg-red-300/100{background-color:#fca5a5}.bg-red-300/15{background-color:#fca5a526}.bg-red-300/20{background-color:#fca5a533}.bg-red-300/25{background-color:#fca5a540}.bg-red-300/30{background-color:#fca5a54d}.bg-red-300/35{background-color:#fca5a559}.bg-red-300/40{background-color:#fca5a566}.bg-red-300/45{background-color:#fca5a573}.bg-red-300/5{background-color:#fca5a50d}.bg-red-300/50{background-color:#fca5a580}.bg-red-300/55{background-color:#fca5a58c}.bg-red-300/60{background-color:#fca5a599}.bg-red-300/65{background-color:#fca5a5a6}.bg-red-300/70{background-color:#fca5a5b3}.bg-red-300/75{background-color:#fca5a5bf}.bg-red-300/80{background-color:#fca5a5cc}.bg-red-300/85{background-color:#fca5a5d9}.bg-red-300/90{background-color:#fca5a5e6}.bg-red-300/95{background-color:#fca5a5f2}.bg-red-400{--tw-bg-opacity: 1;background-color:rgb(248 113 113 / var(--tw-bg-opacity, 1))}.bg-red-400/0{background-color:#f8717100}.bg-red-400/10{background-color:#f871711a}.bg-red-400/100{background-color:#f87171}.bg-red-400/15{background-color:#f8717126}.bg-red-400/20{background-color:#f8717133}.bg-red-400/25{background-color:#f8717140}.bg-red-400/30{background-color:#f871714d}.bg-red-400/35{background-color:#f8717159}.bg-red-400/40{background-color:#f8717166}.bg-red-400/45{background-color:#f8717173}.bg-red-400/5{background-color:#f871710d}.bg-red-400/50{background-color:#f8717180}.bg-red-400/55{background-color:#f871718c}.bg-red-400/60{background-color:#f8717199}.bg-red-400/65{background-color:#f87171a6}.bg-red-400/70{background-color:#f87171b3}.bg-red-400/75{background-color:#f87171bf}.bg-red-400/80{background-color:#f87171cc}.bg-red-400/85{background-color:#f87171d9}.bg-red-400/90{background-color:#f87171e6}.bg-red-400/95{background-color:#f87171f2}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-red-50/0{background-color:#fef2f200}.bg-red-50/10{background-color:#fef2f21a}.bg-red-50/100{background-color:#fef2f2}.bg-red-50/15{background-color:#fef2f226}.bg-red-50/20{background-color:#fef2f233}.bg-red-50/25{background-color:#fef2f240}.bg-red-50/30{background-color:#fef2f24d}.bg-red-50/35{background-color:#fef2f259}.bg-red-50/40{background-color:#fef2f266}.bg-red-50/45{background-color:#fef2f273}.bg-red-50/5{background-color:#fef2f20d}.bg-red-50/50{background-color:#fef2f280}.bg-red-50/55{background-color:#fef2f28c}.bg-red-50/60{background-color:#fef2f299}.bg-red-50/65{background-color:#fef2f2a6}.bg-red-50/70{background-color:#fef2f2b3}.bg-red-50/75{background-color:#fef2f2bf}.bg-red-50/80{background-color:#fef2f2cc}.bg-red-50/85{background-color:#fef2f2d9}.bg-red-50/90{background-color:#fef2f2e6}.bg-red-50/95{background-color:#fef2f2f2}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.bg-red-500/0{background-color:#ef444400}.bg-red-500/10{background-color:#ef44441a}.bg-red-500/100{background-color:#ef4444}.bg-red-500/15{background-color:#ef444426}.bg-red-500/20{background-color:#ef444433}.bg-red-500/25{background-color:#ef444440}.bg-red-500/30{background-color:#ef44444d}.bg-red-500/35{background-color:#ef444459}.bg-red-500/40{background-color:#ef444466}.bg-red-500/45{background-color:#ef444473}.bg-red-500/5{background-color:#ef44440d}.bg-red-500/50{background-color:#ef444480}.bg-red-500/55{background-color:#ef44448c}.bg-red-500/60{background-color:#ef444499}.bg-red-500/65{background-color:#ef4444a6}.bg-red-500/70{background-color:#ef4444b3}.bg-red-500/75{background-color:#ef4444bf}.bg-red-500/80{background-color:#ef4444cc}.bg-red-500/85{background-color:#ef4444d9}.bg-red-500/90{background-color:#ef4444e6}.bg-red-500/95{background-color:#ef4444f2}.bg-red-600{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.bg-red-600/0{background-color:#dc262600}.bg-red-600/10{background-color:#dc26261a}.bg-red-600/100{background-color:#dc2626}.bg-red-600/15{background-color:#dc262626}.bg-red-600/20{background-color:#dc262633}.bg-red-600/25{background-color:#dc262640}.bg-red-600/30{background-color:#dc26264d}.bg-red-600/35{background-color:#dc262659}.bg-red-600/40{background-color:#dc262666}.bg-red-600/45{background-color:#dc262673}.bg-red-600/5{background-color:#dc26260d}.bg-red-600/50{background-color:#dc262680}.bg-red-600/55{background-color:#dc26268c}.bg-red-600/60{background-color:#dc262699}.bg-red-600/65{background-color:#dc2626a6}.bg-red-600/70{background-color:#dc2626b3}.bg-red-600/75{background-color:#dc2626bf}.bg-red-600/80{background-color:#dc2626cc}.bg-red-600/85{background-color:#dc2626d9}.bg-red-600/90{background-color:#dc2626e6}.bg-red-600/95{background-color:#dc2626f2}.bg-red-700{--tw-bg-opacity: 1;background-color:rgb(185 28 28 / var(--tw-bg-opacity, 1))}.bg-red-700/0{background-color:#b91c1c00}.bg-red-700/10{background-color:#b91c1c1a}.bg-red-700/100{background-color:#b91c1c}.bg-red-700/15{background-color:#b91c1c26}.bg-red-700/20{background-color:#b91c1c33}.bg-red-700/25{background-color:#b91c1c40}.bg-red-700/30{background-color:#b91c1c4d}.bg-red-700/35{background-color:#b91c1c59}.bg-red-700/40{background-color:#b91c1c66}.bg-red-700/45{background-color:#b91c1c73}.bg-red-700/5{background-color:#b91c1c0d}.bg-red-700/50{background-color:#b91c1c80}.bg-red-700/55{background-color:#b91c1c8c}.bg-red-700/60{background-color:#b91c1c99}.bg-red-700/65{background-color:#b91c1ca6}.bg-red-700/70{background-color:#b91c1cb3}.bg-red-700/75{background-color:#b91c1cbf}.bg-red-700/80{background-color:#b91c1ccc}.bg-red-700/85{background-color:#b91c1cd9}.bg-red-700/90{background-color:#b91c1ce6}.bg-red-700/95{background-color:#b91c1cf2}.bg-red-800{--tw-bg-opacity: 1;background-color:rgb(153 27 27 / var(--tw-bg-opacity, 1))}.bg-red-800/0{background-color:#991b1b00}.bg-red-800/10{background-color:#991b1b1a}.bg-red-800/100{background-color:#991b1b}.bg-red-800/15{background-color:#991b1b26}.bg-red-800/20{background-color:#991b1b33}.bg-red-800/25{background-color:#991b1b40}.bg-red-800/30{background-color:#991b1b4d}.bg-red-800/35{background-color:#991b1b59}.bg-red-800/40{background-color:#991b1b66}.bg-red-800/45{background-color:#991b1b73}.bg-red-800/5{background-color:#991b1b0d}.bg-red-800/50{background-color:#991b1b80}.bg-red-800/55{background-color:#991b1b8c}.bg-red-800/60{background-color:#991b1b99}.bg-red-800/65{background-color:#991b1ba6}.bg-red-800/70{background-color:#991b1bb3}.bg-red-800/75{background-color:#991b1bbf}.bg-red-800/80{background-color:#991b1bcc}.bg-red-800/85{background-color:#991b1bd9}.bg-red-800/90{background-color:#991b1be6}.bg-red-800/95{background-color:#991b1bf2}.bg-red-900{--tw-bg-opacity: 1;background-color:rgb(127 29 29 / var(--tw-bg-opacity, 1))}.bg-red-900/0{background-color:#7f1d1d00}.bg-red-900/10{background-color:#7f1d1d1a}.bg-red-900/100{background-color:#7f1d1d}.bg-red-900/15{background-color:#7f1d1d26}.bg-red-900/20{background-color:#7f1d1d33}.bg-red-900/25{background-color:#7f1d1d40}.bg-red-900/30{background-color:#7f1d1d4d}.bg-red-900/35{background-color:#7f1d1d59}.bg-red-900/40{background-color:#7f1d1d66}.bg-red-900/45{background-color:#7f1d1d73}.bg-red-900/5{background-color:#7f1d1d0d}.bg-red-900/50{background-color:#7f1d1d80}.bg-red-900/55{background-color:#7f1d1d8c}.bg-red-900/60{background-color:#7f1d1d99}.bg-red-900/65{background-color:#7f1d1da6}.bg-red-900/70{background-color:#7f1d1db3}.bg-red-900/75{background-color:#7f1d1dbf}.bg-red-900/80{background-color:#7f1d1dcc}.bg-red-900/85{background-color:#7f1d1dd9}.bg-red-900/90{background-color:#7f1d1de6}.bg-red-900/95{background-color:#7f1d1df2}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.stroke-2{stroke-width:2}.p-0{padding:0}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-0{padding-bottom:0}.pb-2{padding-bottom:.5rem}.pl-7{padding-left:1.75rem}.pl-8{padding-left:2rem}.pr-2{padding-right:.5rem}.pr-8{padding-right:2rem}.pt-0{padding-top:0}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-sans{font-family:Geist,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-[11px]{font-size:11px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.text-blue-100{--tw-text-opacity: 1;color:rgb(219 234 254 / var(--tw-text-opacity, 1))}.text-blue-100/0{color:#dbeafe00}.text-blue-100/10{color:#dbeafe1a}.text-blue-100/100{color:#dbeafe}.text-blue-100/15{color:#dbeafe26}.text-blue-100/20{color:#dbeafe33}.text-blue-100/25{color:#dbeafe40}.text-blue-100/30{color:#dbeafe4d}.text-blue-100/35{color:#dbeafe59}.text-blue-100/40{color:#dbeafe66}.text-blue-100/45{color:#dbeafe73}.text-blue-100/5{color:#dbeafe0d}.text-blue-100/50{color:#dbeafe80}.text-blue-100/55{color:#dbeafe8c}.text-blue-100/60{color:#dbeafe99}.text-blue-100/65{color:#dbeafea6}.text-blue-100/70{color:#dbeafeb3}.text-blue-100/75{color:#dbeafebf}.text-blue-100/80{color:#dbeafecc}.text-blue-100/85{color:#dbeafed9}.text-blue-100/90{color:#dbeafee6}.text-blue-100/95{color:#dbeafef2}.text-blue-200{--tw-text-opacity: 1;color:rgb(191 219 254 / var(--tw-text-opacity, 1))}.text-blue-200/0{color:#bfdbfe00}.text-blue-200/10{color:#bfdbfe1a}.text-blue-200/100{color:#bfdbfe}.text-blue-200/15{color:#bfdbfe26}.text-blue-200/20{color:#bfdbfe33}.text-blue-200/25{color:#bfdbfe40}.text-blue-200/30{color:#bfdbfe4d}.text-blue-200/35{color:#bfdbfe59}.text-blue-200/40{color:#bfdbfe66}.text-blue-200/45{color:#bfdbfe73}.text-blue-200/5{color:#bfdbfe0d}.text-blue-200/50{color:#bfdbfe80}.text-blue-200/55{color:#bfdbfe8c}.text-blue-200/60{color:#bfdbfe99}.text-blue-200/65{color:#bfdbfea6}.text-blue-200/70{color:#bfdbfeb3}.text-blue-200/75{color:#bfdbfebf}.text-blue-200/80{color:#bfdbfecc}.text-blue-200/85{color:#bfdbfed9}.text-blue-200/90{color:#bfdbfee6}.text-blue-200/95{color:#bfdbfef2}.text-blue-300{--tw-text-opacity: 1;color:rgb(147 197 253 / var(--tw-text-opacity, 1))}.text-blue-300/0{color:#93c5fd00}.text-blue-300/10{color:#93c5fd1a}.text-blue-300/100{color:#93c5fd}.text-blue-300/15{color:#93c5fd26}.text-blue-300/20{color:#93c5fd33}.text-blue-300/25{color:#93c5fd40}.text-blue-300/30{color:#93c5fd4d}.text-blue-300/35{color:#93c5fd59}.text-blue-300/40{color:#93c5fd66}.text-blue-300/45{color:#93c5fd73}.text-blue-300/5{color:#93c5fd0d}.text-blue-300/50{color:#93c5fd80}.text-blue-300/55{color:#93c5fd8c}.text-blue-300/60{color:#93c5fd99}.text-blue-300/65{color:#93c5fda6}.text-blue-300/70{color:#93c5fdb3}.text-blue-300/75{color:#93c5fdbf}.text-blue-300/80{color:#93c5fdcc}.text-blue-300/85{color:#93c5fdd9}.text-blue-300/90{color:#93c5fde6}.text-blue-300/95{color:#93c5fdf2}.text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.text-blue-400/0{color:#60a5fa00}.text-blue-400/10{color:#60a5fa1a}.text-blue-400/100{color:#60a5fa}.text-blue-400/15{color:#60a5fa26}.text-blue-400/20{color:#60a5fa33}.text-blue-400/25{color:#60a5fa40}.text-blue-400/30{color:#60a5fa4d}.text-blue-400/35{color:#60a5fa59}.text-blue-400/40{color:#60a5fa66}.text-blue-400/45{color:#60a5fa73}.text-blue-400/5{color:#60a5fa0d}.text-blue-400/50{color:#60a5fa80}.text-blue-400/55{color:#60a5fa8c}.text-blue-400/60{color:#60a5fa99}.text-blue-400/65{color:#60a5faa6}.text-blue-400/70{color:#60a5fab3}.text-blue-400/75{color:#60a5fabf}.text-blue-400/80{color:#60a5facc}.text-blue-400/85{color:#60a5fad9}.text-blue-400/90{color:#60a5fae6}.text-blue-400/95{color:#60a5faf2}.text-blue-50{--tw-text-opacity: 1;color:rgb(239 246 255 / var(--tw-text-opacity, 1))}.text-blue-50/0{color:#eff6ff00}.text-blue-50/10{color:#eff6ff1a}.text-blue-50/100{color:#eff6ff}.text-blue-50/15{color:#eff6ff26}.text-blue-50/20{color:#eff6ff33}.text-blue-50/25{color:#eff6ff40}.text-blue-50/30{color:#eff6ff4d}.text-blue-50/35{color:#eff6ff59}.text-blue-50/40{color:#eff6ff66}.text-blue-50/45{color:#eff6ff73}.text-blue-50/5{color:#eff6ff0d}.text-blue-50/50{color:#eff6ff80}.text-blue-50/55{color:#eff6ff8c}.text-blue-50/60{color:#eff6ff99}.text-blue-50/65{color:#eff6ffa6}.text-blue-50/70{color:#eff6ffb3}.text-blue-50/75{color:#eff6ffbf}.text-blue-50/80{color:#eff6ffcc}.text-blue-50/85{color:#eff6ffd9}.text-blue-50/90{color:#eff6ffe6}.text-blue-50/95{color:#eff6fff2}.text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.text-blue-500/0{color:#3b82f600}.text-blue-500/10{color:#3b82f61a}.text-blue-500/100{color:#3b82f6}.text-blue-500/15{color:#3b82f626}.text-blue-500/20{color:#3b82f633}.text-blue-500/25{color:#3b82f640}.text-blue-500/30{color:#3b82f64d}.text-blue-500/35{color:#3b82f659}.text-blue-500/40{color:#3b82f666}.text-blue-500/45{color:#3b82f673}.text-blue-500/5{color:#3b82f60d}.text-blue-500/50{color:#3b82f680}.text-blue-500/55{color:#3b82f68c}.text-blue-500/60{color:#3b82f699}.text-blue-500/65{color:#3b82f6a6}.text-blue-500/70{color:#3b82f6b3}.text-blue-500/75{color:#3b82f6bf}.text-blue-500/80{color:#3b82f6cc}.text-blue-500/85{color:#3b82f6d9}.text-blue-500/90{color:#3b82f6e6}.text-blue-500/95{color:#3b82f6f2}.text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-blue-600/0{color:#2563eb00}.text-blue-600/10{color:#2563eb1a}.text-blue-600/100{color:#2563eb}.text-blue-600/15{color:#2563eb26}.text-blue-600/20{color:#2563eb33}.text-blue-600/25{color:#2563eb40}.text-blue-600/30{color:#2563eb4d}.text-blue-600/35{color:#2563eb59}.text-blue-600/40{color:#2563eb66}.text-blue-600/45{color:#2563eb73}.text-blue-600/5{color:#2563eb0d}.text-blue-600/50{color:#2563eb80}.text-blue-600/55{color:#2563eb8c}.text-blue-600/60{color:#2563eb99}.text-blue-600/65{color:#2563eba6}.text-blue-600/70{color:#2563ebb3}.text-blue-600/75{color:#2563ebbf}.text-blue-600/80{color:#2563ebcc}.text-blue-600/85{color:#2563ebd9}.text-blue-600/90{color:#2563ebe6}.text-blue-600/95{color:#2563ebf2}.text-blue-700{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.text-blue-700/0{color:#1d4ed800}.text-blue-700/10{color:#1d4ed81a}.text-blue-700/100{color:#1d4ed8}.text-blue-700/15{color:#1d4ed826}.text-blue-700/20{color:#1d4ed833}.text-blue-700/25{color:#1d4ed840}.text-blue-700/30{color:#1d4ed84d}.text-blue-700/35{color:#1d4ed859}.text-blue-700/40{color:#1d4ed866}.text-blue-700/45{color:#1d4ed873}.text-blue-700/5{color:#1d4ed80d}.text-blue-700/50{color:#1d4ed880}.text-blue-700/55{color:#1d4ed88c}.text-blue-700/60{color:#1d4ed899}.text-blue-700/65{color:#1d4ed8a6}.text-blue-700/70{color:#1d4ed8b3}.text-blue-700/75{color:#1d4ed8bf}.text-blue-700/80{color:#1d4ed8cc}.text-blue-700/85{color:#1d4ed8d9}.text-blue-700/90{color:#1d4ed8e6}.text-blue-700/95{color:#1d4ed8f2}.text-blue-800{--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity, 1))}.text-blue-800/0{color:#1e40af00}.text-blue-800/10{color:#1e40af1a}.text-blue-800/100{color:#1e40af}.text-blue-800/15{color:#1e40af26}.text-blue-800/20{color:#1e40af33}.text-blue-800/25{color:#1e40af40}.text-blue-800/30{color:#1e40af4d}.text-blue-800/35{color:#1e40af59}.text-blue-800/40{color:#1e40af66}.text-blue-800/45{color:#1e40af73}.text-blue-800/5{color:#1e40af0d}.text-blue-800/50{color:#1e40af80}.text-blue-800/55{color:#1e40af8c}.text-blue-800/60{color:#1e40af99}.text-blue-800/65{color:#1e40afa6}.text-blue-800/70{color:#1e40afb3}.text-blue-800/75{color:#1e40afbf}.text-blue-800/80{color:#1e40afcc}.text-blue-800/85{color:#1e40afd9}.text-blue-800/90{color:#1e40afe6}.text-blue-800/95{color:#1e40aff2}.text-blue-900{--tw-text-opacity: 1;color:rgb(30 58 138 / var(--tw-text-opacity, 1))}.text-blue-900/0{color:#1e3a8a00}.text-blue-900/10{color:#1e3a8a1a}.text-blue-900/100{color:#1e3a8a}.text-blue-900/15{color:#1e3a8a26}.text-blue-900/20{color:#1e3a8a33}.text-blue-900/25{color:#1e3a8a40}.text-blue-900/30{color:#1e3a8a4d}.text-blue-900/35{color:#1e3a8a59}.text-blue-900/40{color:#1e3a8a66}.text-blue-900/45{color:#1e3a8a73}.text-blue-900/5{color:#1e3a8a0d}.text-blue-900/50{color:#1e3a8a80}.text-blue-900/55{color:#1e3a8a8c}.text-blue-900/60{color:#1e3a8a99}.text-blue-900/65{color:#1e3a8aa6}.text-blue-900/70{color:#1e3a8ab3}.text-blue-900/75{color:#1e3a8abf}.text-blue-900/80{color:#1e3a8acc}.text-blue-900/85{color:#1e3a8ad9}.text-blue-900/90{color:#1e3a8ae6}.text-blue-900/95{color:#1e3a8af2}.text-card-foreground{color:hsl(var(--card-foreground))}.text-current{color:currentColor}.text-destructive{color:hsl(var(--destructive))}.text-destructive-foreground{color:hsl(var(--destructive-foreground))}.text-foreground{color:hsl(var(--foreground))}.text-foreground/50{color:hsl(var(--foreground) / .5)}.text-gray-100{--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity, 1))}.text-gray-100/0{color:#f3f4f600}.text-gray-100/10{color:#f3f4f61a}.text-gray-100/100{color:#f3f4f6}.text-gray-100/15{color:#f3f4f626}.text-gray-100/20{color:#f3f4f633}.text-gray-100/25{color:#f3f4f640}.text-gray-100/30{color:#f3f4f64d}.text-gray-100/35{color:#f3f4f659}.text-gray-100/40{color:#f3f4f666}.text-gray-100/45{color:#f3f4f673}.text-gray-100/5{color:#f3f4f60d}.text-gray-100/50{color:#f3f4f680}.text-gray-100/55{color:#f3f4f68c}.text-gray-100/60{color:#f3f4f699}.text-gray-100/65{color:#f3f4f6a6}.text-gray-100/70{color:#f3f4f6b3}.text-gray-100/75{color:#f3f4f6bf}.text-gray-100/80{color:#f3f4f6cc}.text-gray-100/85{color:#f3f4f6d9}.text-gray-100/90{color:#f3f4f6e6}.text-gray-100/95{color:#f3f4f6f2}.text-gray-200{--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.text-gray-200/0{color:#e5e7eb00}.text-gray-200/10{color:#e5e7eb1a}.text-gray-200/100{color:#e5e7eb}.text-gray-200/15{color:#e5e7eb26}.text-gray-200/20{color:#e5e7eb33}.text-gray-200/25{color:#e5e7eb40}.text-gray-200/30{color:#e5e7eb4d}.text-gray-200/35{color:#e5e7eb59}.text-gray-200/40{color:#e5e7eb66}.text-gray-200/45{color:#e5e7eb73}.text-gray-200/5{color:#e5e7eb0d}.text-gray-200/50{color:#e5e7eb80}.text-gray-200/55{color:#e5e7eb8c}.text-gray-200/60{color:#e5e7eb99}.text-gray-200/65{color:#e5e7eba6}.text-gray-200/70{color:#e5e7ebb3}.text-gray-200/75{color:#e5e7ebbf}.text-gray-200/80{color:#e5e7ebcc}.text-gray-200/85{color:#e5e7ebd9}.text-gray-200/90{color:#e5e7ebe6}.text-gray-200/95{color:#e5e7ebf2}.text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.text-gray-300/0{color:#d1d5db00}.text-gray-300/10{color:#d1d5db1a}.text-gray-300/100{color:#d1d5db}.text-gray-300/15{color:#d1d5db26}.text-gray-300/20{color:#d1d5db33}.text-gray-300/25{color:#d1d5db40}.text-gray-300/30{color:#d1d5db4d}.text-gray-300/35{color:#d1d5db59}.text-gray-300/40{color:#d1d5db66}.text-gray-300/45{color:#d1d5db73}.text-gray-300/5{color:#d1d5db0d}.text-gray-300/50{color:#d1d5db80}.text-gray-300/55{color:#d1d5db8c}.text-gray-300/60{color:#d1d5db99}.text-gray-300/65{color:#d1d5dba6}.text-gray-300/70{color:#d1d5dbb3}.text-gray-300/75{color:#d1d5dbbf}.text-gray-300/80{color:#d1d5dbcc}.text-gray-300/85{color:#d1d5dbd9}.text-gray-300/90{color:#d1d5dbe6}.text-gray-300/95{color:#d1d5dbf2}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-400/0{color:#9ca3af00}.text-gray-400/10{color:#9ca3af1a}.text-gray-400/100{color:#9ca3af}.text-gray-400/15{color:#9ca3af26}.text-gray-400/20{color:#9ca3af33}.text-gray-400/25{color:#9ca3af40}.text-gray-400/30{color:#9ca3af4d}.text-gray-400/35{color:#9ca3af59}.text-gray-400/40{color:#9ca3af66}.text-gray-400/45{color:#9ca3af73}.text-gray-400/5{color:#9ca3af0d}.text-gray-400/50{color:#9ca3af80}.text-gray-400/55{color:#9ca3af8c}.text-gray-400/60{color:#9ca3af99}.text-gray-400/65{color:#9ca3afa6}.text-gray-400/70{color:#9ca3afb3}.text-gray-400/75{color:#9ca3afbf}.text-gray-400/80{color:#9ca3afcc}.text-gray-400/85{color:#9ca3afd9}.text-gray-400/90{color:#9ca3afe6}.text-gray-400/95{color:#9ca3aff2}.text-gray-50{--tw-text-opacity: 1;color:rgb(249 250 251 / var(--tw-text-opacity, 1))}.text-gray-50/0{color:#f9fafb00}.text-gray-50/10{color:#f9fafb1a}.text-gray-50/100{color:#f9fafb}.text-gray-50/15{color:#f9fafb26}.text-gray-50/20{color:#f9fafb33}.text-gray-50/25{color:#f9fafb40}.text-gray-50/30{color:#f9fafb4d}.text-gray-50/35{color:#f9fafb59}.text-gray-50/40{color:#f9fafb66}.text-gray-50/45{color:#f9fafb73}.text-gray-50/5{color:#f9fafb0d}.text-gray-50/50{color:#f9fafb80}.text-gray-50/55{color:#f9fafb8c}.text-gray-50/60{color:#f9fafb99}.text-gray-50/65{color:#f9fafba6}.text-gray-50/70{color:#f9fafbb3}.text-gray-50/75{color:#f9fafbbf}.text-gray-50/80{color:#f9fafbcc}.text-gray-50/85{color:#f9fafbd9}.text-gray-50/90{color:#f9fafbe6}.text-gray-50/95{color:#f9fafbf2}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-500/0{color:#6b728000}.text-gray-500/10{color:#6b72801a}.text-gray-500/100{color:#6b7280}.text-gray-500/15{color:#6b728026}.text-gray-500/20{color:#6b728033}.text-gray-500/25{color:#6b728040}.text-gray-500/30{color:#6b72804d}.text-gray-500/35{color:#6b728059}.text-gray-500/40{color:#6b728066}.text-gray-500/45{color:#6b728073}.text-gray-500/5{color:#6b72800d}.text-gray-500/50{color:#6b728080}.text-gray-500/55{color:#6b72808c}.text-gray-500/60{color:#6b728099}.text-gray-500/65{color:#6b7280a6}.text-gray-500/70{color:#6b7280b3}.text-gray-500/75{color:#6b7280bf}.text-gray-500/80{color:#6b7280cc}.text-gray-500/85{color:#6b7280d9}.text-gray-500/90{color:#6b7280e6}.text-gray-500/95{color:#6b7280f2}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.text-gray-600/0{color:#4b556300}.text-gray-600/10{color:#4b55631a}.text-gray-600/100{color:#4b5563}.text-gray-600/15{color:#4b556326}.text-gray-600/20{color:#4b556333}.text-gray-600/25{color:#4b556340}.text-gray-600/30{color:#4b55634d}.text-gray-600/35{color:#4b556359}.text-gray-600/40{color:#4b556366}.text-gray-600/45{color:#4b556373}.text-gray-600/5{color:#4b55630d}.text-gray-600/50{color:#4b556380}.text-gray-600/55{color:#4b55638c}.text-gray-600/60{color:#4b556399}.text-gray-600/65{color:#4b5563a6}.text-gray-600/70{color:#4b5563b3}.text-gray-600/75{color:#4b5563bf}.text-gray-600/80{color:#4b5563cc}.text-gray-600/85{color:#4b5563d9}.text-gray-600/90{color:#4b5563e6}.text-gray-600/95{color:#4b5563f2}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.text-gray-700/0{color:#37415100}.text-gray-700/10{color:#3741511a}.text-gray-700/100{color:#374151}.text-gray-700/15{color:#37415126}.text-gray-700/20{color:#37415133}.text-gray-700/25{color:#37415140}.text-gray-700/30{color:#3741514d}.text-gray-700/35{color:#37415159}.text-gray-700/40{color:#37415166}.text-gray-700/45{color:#37415173}.text-gray-700/5{color:#3741510d}.text-gray-700/50{color:#37415180}.text-gray-700/55{color:#3741518c}.text-gray-700/60{color:#37415199}.text-gray-700/65{color:#374151a6}.text-gray-700/70{color:#374151b3}.text-gray-700/75{color:#374151bf}.text-gray-700/80{color:#374151cc}.text-gray-700/85{color:#374151d9}.text-gray-700/90{color:#374151e6}.text-gray-700/95{color:#374151f2}.text-gray-800{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.text-gray-800/0{color:#1f293700}.text-gray-800/10{color:#1f29371a}.text-gray-800/100{color:#1f2937}.text-gray-800/15{color:#1f293726}.text-gray-800/20{color:#1f293733}.text-gray-800/25{color:#1f293740}.text-gray-800/30{color:#1f29374d}.text-gray-800/35{color:#1f293759}.text-gray-800/40{color:#1f293766}.text-gray-800/45{color:#1f293773}.text-gray-800/5{color:#1f29370d}.text-gray-800/50{color:#1f293780}.text-gray-800/55{color:#1f29378c}.text-gray-800/60{color:#1f293799}.text-gray-800/65{color:#1f2937a6}.text-gray-800/70{color:#1f2937b3}.text-gray-800/75{color:#1f2937bf}.text-gray-800/80{color:#1f2937cc}.text-gray-800/85{color:#1f2937d9}.text-gray-800/90{color:#1f2937e6}.text-gray-800/95{color:#1f2937f2}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.text-gray-900/0{color:#11182700}.text-gray-900/10{color:#1118271a}.text-gray-900/100{color:#111827}.text-gray-900/15{color:#11182726}.text-gray-900/20{color:#11182733}.text-gray-900/25{color:#11182740}.text-gray-900/30{color:#1118274d}.text-gray-900/35{color:#11182759}.text-gray-900/40{color:#11182766}.text-gray-900/45{color:#11182773}.text-gray-900/5{color:#1118270d}.text-gray-900/50{color:#11182780}.text-gray-900/55{color:#1118278c}.text-gray-900/60{color:#11182799}.text-gray-900/65{color:#111827a6}.text-gray-900/70{color:#111827b3}.text-gray-900/75{color:#111827bf}.text-gray-900/80{color:#111827cc}.text-gray-900/85{color:#111827d9}.text-gray-900/90{color:#111827e6}.text-gray-900/95{color:#111827f2}.text-green-100{--tw-text-opacity: 1;color:rgb(220 252 231 / var(--tw-text-opacity, 1))}.text-green-100/0{color:#dcfce700}.text-green-100/10{color:#dcfce71a}.text-green-100/100{color:#dcfce7}.text-green-100/15{color:#dcfce726}.text-green-100/20{color:#dcfce733}.text-green-100/25{color:#dcfce740}.text-green-100/30{color:#dcfce74d}.text-green-100/35{color:#dcfce759}.text-green-100/40{color:#dcfce766}.text-green-100/45{color:#dcfce773}.text-green-100/5{color:#dcfce70d}.text-green-100/50{color:#dcfce780}.text-green-100/55{color:#dcfce78c}.text-green-100/60{color:#dcfce799}.text-green-100/65{color:#dcfce7a6}.text-green-100/70{color:#dcfce7b3}.text-green-100/75{color:#dcfce7bf}.text-green-100/80{color:#dcfce7cc}.text-green-100/85{color:#dcfce7d9}.text-green-100/90{color:#dcfce7e6}.text-green-100/95{color:#dcfce7f2}.text-green-200{--tw-text-opacity: 1;color:rgb(187 247 208 / var(--tw-text-opacity, 1))}.text-green-200/0{color:#bbf7d000}.text-green-200/10{color:#bbf7d01a}.text-green-200/100{color:#bbf7d0}.text-green-200/15{color:#bbf7d026}.text-green-200/20{color:#bbf7d033}.text-green-200/25{color:#bbf7d040}.text-green-200/30{color:#bbf7d04d}.text-green-200/35{color:#bbf7d059}.text-green-200/40{color:#bbf7d066}.text-green-200/45{color:#bbf7d073}.text-green-200/5{color:#bbf7d00d}.text-green-200/50{color:#bbf7d080}.text-green-200/55{color:#bbf7d08c}.text-green-200/60{color:#bbf7d099}.text-green-200/65{color:#bbf7d0a6}.text-green-200/70{color:#bbf7d0b3}.text-green-200/75{color:#bbf7d0bf}.text-green-200/80{color:#bbf7d0cc}.text-green-200/85{color:#bbf7d0d9}.text-green-200/90{color:#bbf7d0e6}.text-green-200/95{color:#bbf7d0f2}.text-green-300{--tw-text-opacity: 1;color:rgb(134 239 172 / var(--tw-text-opacity, 1))}.text-green-300/0{color:#86efac00}.text-green-300/10{color:#86efac1a}.text-green-300/100{color:#86efac}.text-green-300/15{color:#86efac26}.text-green-300/20{color:#86efac33}.text-green-300/25{color:#86efac40}.text-green-300/30{color:#86efac4d}.text-green-300/35{color:#86efac59}.text-green-300/40{color:#86efac66}.text-green-300/45{color:#86efac73}.text-green-300/5{color:#86efac0d}.text-green-300/50{color:#86efac80}.text-green-300/55{color:#86efac8c}.text-green-300/60{color:#86efac99}.text-green-300/65{color:#86efaca6}.text-green-300/70{color:#86efacb3}.text-green-300/75{color:#86efacbf}.text-green-300/80{color:#86efaccc}.text-green-300/85{color:#86efacd9}.text-green-300/90{color:#86eface6}.text-green-300/95{color:#86efacf2}.text-green-400{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.text-green-400/0{color:#4ade8000}.text-green-400/10{color:#4ade801a}.text-green-400/100{color:#4ade80}.text-green-400/15{color:#4ade8026}.text-green-400/20{color:#4ade8033}.text-green-400/25{color:#4ade8040}.text-green-400/30{color:#4ade804d}.text-green-400/35{color:#4ade8059}.text-green-400/40{color:#4ade8066}.text-green-400/45{color:#4ade8073}.text-green-400/5{color:#4ade800d}.text-green-400/50{color:#4ade8080}.text-green-400/55{color:#4ade808c}.text-green-400/60{color:#4ade8099}.text-green-400/65{color:#4ade80a6}.text-green-400/70{color:#4ade80b3}.text-green-400/75{color:#4ade80bf}.text-green-400/80{color:#4ade80cc}.text-green-400/85{color:#4ade80d9}.text-green-400/90{color:#4ade80e6}.text-green-400/95{color:#4ade80f2}.text-green-50{--tw-text-opacity: 1;color:rgb(240 253 244 / var(--tw-text-opacity, 1))}.text-green-50/0{color:#f0fdf400}.text-green-50/10{color:#f0fdf41a}.text-green-50/100{color:#f0fdf4}.text-green-50/15{color:#f0fdf426}.text-green-50/20{color:#f0fdf433}.text-green-50/25{color:#f0fdf440}.text-green-50/30{color:#f0fdf44d}.text-green-50/35{color:#f0fdf459}.text-green-50/40{color:#f0fdf466}.text-green-50/45{color:#f0fdf473}.text-green-50/5{color:#f0fdf40d}.text-green-50/50{color:#f0fdf480}.text-green-50/55{color:#f0fdf48c}.text-green-50/60{color:#f0fdf499}.text-green-50/65{color:#f0fdf4a6}.text-green-50/70{color:#f0fdf4b3}.text-green-50/75{color:#f0fdf4bf}.text-green-50/80{color:#f0fdf4cc}.text-green-50/85{color:#f0fdf4d9}.text-green-50/90{color:#f0fdf4e6}.text-green-50/95{color:#f0fdf4f2}.text-green-500{--tw-text-opacity: 1;color:rgb(34 197 94 / var(--tw-text-opacity, 1))}.text-green-500/0{color:#22c55e00}.text-green-500/10{color:#22c55e1a}.text-green-500/100{color:#22c55e}.text-green-500/15{color:#22c55e26}.text-green-500/20{color:#22c55e33}.text-green-500/25{color:#22c55e40}.text-green-500/30{color:#22c55e4d}.text-green-500/35{color:#22c55e59}.text-green-500/40{color:#22c55e66}.text-green-500/45{color:#22c55e73}.text-green-500/5{color:#22c55e0d}.text-green-500/50{color:#22c55e80}.text-green-500/55{color:#22c55e8c}.text-green-500/60{color:#22c55e99}.text-green-500/65{color:#22c55ea6}.text-green-500/70{color:#22c55eb3}.text-green-500/75{color:#22c55ebf}.text-green-500/80{color:#22c55ecc}.text-green-500/85{color:#22c55ed9}.text-green-500/90{color:#22c55ee6}.text-green-500/95{color:#22c55ef2}.text-green-600{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.text-green-600/0{color:#16a34a00}.text-green-600/10{color:#16a34a1a}.text-green-600/100{color:#16a34a}.text-green-600/15{color:#16a34a26}.text-green-600/20{color:#16a34a33}.text-green-600/25{color:#16a34a40}.text-green-600/30{color:#16a34a4d}.text-green-600/35{color:#16a34a59}.text-green-600/40{color:#16a34a66}.text-green-600/45{color:#16a34a73}.text-green-600/5{color:#16a34a0d}.text-green-600/50{color:#16a34a80}.text-green-600/55{color:#16a34a8c}.text-green-600/60{color:#16a34a99}.text-green-600/65{color:#16a34aa6}.text-green-600/70{color:#16a34ab3}.text-green-600/75{color:#16a34abf}.text-green-600/80{color:#16a34acc}.text-green-600/85{color:#16a34ad9}.text-green-600/90{color:#16a34ae6}.text-green-600/95{color:#16a34af2}.text-green-700{--tw-text-opacity: 1;color:rgb(21 128 61 / var(--tw-text-opacity, 1))}.text-green-700/0{color:#15803d00}.text-green-700/10{color:#15803d1a}.text-green-700/100{color:#15803d}.text-green-700/15{color:#15803d26}.text-green-700/20{color:#15803d33}.text-green-700/25{color:#15803d40}.text-green-700/30{color:#15803d4d}.text-green-700/35{color:#15803d59}.text-green-700/40{color:#15803d66}.text-green-700/45{color:#15803d73}.text-green-700/5{color:#15803d0d}.text-green-700/50{color:#15803d80}.text-green-700/55{color:#15803d8c}.text-green-700/60{color:#15803d99}.text-green-700/65{color:#15803da6}.text-green-700/70{color:#15803db3}.text-green-700/75{color:#15803dbf}.text-green-700/80{color:#15803dcc}.text-green-700/85{color:#15803dd9}.text-green-700/90{color:#15803de6}.text-green-700/95{color:#15803df2}.text-green-800{--tw-text-opacity: 1;color:rgb(22 101 52 / var(--tw-text-opacity, 1))}.text-green-800/0{color:#16653400}.text-green-800/10{color:#1665341a}.text-green-800/100{color:#166534}.text-green-800/15{color:#16653426}.text-green-800/20{color:#16653433}.text-green-800/25{color:#16653440}.text-green-800/30{color:#1665344d}.text-green-800/35{color:#16653459}.text-green-800/40{color:#16653466}.text-green-800/45{color:#16653473}.text-green-800/5{color:#1665340d}.text-green-800/50{color:#16653480}.text-green-800/55{color:#1665348c}.text-green-800/60{color:#16653499}.text-green-800/65{color:#166534a6}.text-green-800/70{color:#166534b3}.text-green-800/75{color:#166534bf}.text-green-800/80{color:#166534cc}.text-green-800/85{color:#166534d9}.text-green-800/90{color:#166534e6}.text-green-800/95{color:#166534f2}.text-green-900{--tw-text-opacity: 1;color:rgb(20 83 45 / var(--tw-text-opacity, 1))}.text-green-900/0{color:#14532d00}.text-green-900/10{color:#14532d1a}.text-green-900/100{color:#14532d}.text-green-900/15{color:#14532d26}.text-green-900/20{color:#14532d33}.text-green-900/25{color:#14532d40}.text-green-900/30{color:#14532d4d}.text-green-900/35{color:#14532d59}.text-green-900/40{color:#14532d66}.text-green-900/45{color:#14532d73}.text-green-900/5{color:#14532d0d}.text-green-900/50{color:#14532d80}.text-green-900/55{color:#14532d8c}.text-green-900/60{color:#14532d99}.text-green-900/65{color:#14532da6}.text-green-900/70{color:#14532db3}.text-green-900/75{color:#14532dbf}.text-green-900/80{color:#14532dcc}.text-green-900/85{color:#14532dd9}.text-green-900/90{color:#14532de6}.text-green-900/95{color:#14532df2}.text-muted-foreground{color:hsl(var(--muted-foreground))}.text-popover-foreground{color:hsl(var(--popover-foreground))}.text-red-100{--tw-text-opacity: 1;color:rgb(254 226 226 / var(--tw-text-opacity, 1))}.text-red-100/0{color:#fee2e200}.text-red-100/10{color:#fee2e21a}.text-red-100/100{color:#fee2e2}.text-red-100/15{color:#fee2e226}.text-red-100/20{color:#fee2e233}.text-red-100/25{color:#fee2e240}.text-red-100/30{color:#fee2e24d}.text-red-100/35{color:#fee2e259}.text-red-100/40{color:#fee2e266}.text-red-100/45{color:#fee2e273}.text-red-100/5{color:#fee2e20d}.text-red-100/50{color:#fee2e280}.text-red-100/55{color:#fee2e28c}.text-red-100/60{color:#fee2e299}.text-red-100/65{color:#fee2e2a6}.text-red-100/70{color:#fee2e2b3}.text-red-100/75{color:#fee2e2bf}.text-red-100/80{color:#fee2e2cc}.text-red-100/85{color:#fee2e2d9}.text-red-100/90{color:#fee2e2e6}.text-red-100/95{color:#fee2e2f2}.text-red-200{--tw-text-opacity: 1;color:rgb(254 202 202 / var(--tw-text-opacity, 1))}.text-red-200/0{color:#fecaca00}.text-red-200/10{color:#fecaca1a}.text-red-200/100{color:#fecaca}.text-red-200/15{color:#fecaca26}.text-red-200/20{color:#fecaca33}.text-red-200/25{color:#fecaca40}.text-red-200/30{color:#fecaca4d}.text-red-200/35{color:#fecaca59}.text-red-200/40{color:#fecaca66}.text-red-200/45{color:#fecaca73}.text-red-200/5{color:#fecaca0d}.text-red-200/50{color:#fecaca80}.text-red-200/55{color:#fecaca8c}.text-red-200/60{color:#fecaca99}.text-red-200/65{color:#fecacaa6}.text-red-200/70{color:#fecacab3}.text-red-200/75{color:#fecacabf}.text-red-200/80{color:#fecacacc}.text-red-200/85{color:#fecacad9}.text-red-200/90{color:#fecacae6}.text-red-200/95{color:#fecacaf2}.text-red-300{--tw-text-opacity: 1;color:rgb(252 165 165 / var(--tw-text-opacity, 1))}.text-red-300/0{color:#fca5a500}.text-red-300/10{color:#fca5a51a}.text-red-300/100{color:#fca5a5}.text-red-300/15{color:#fca5a526}.text-red-300/20{color:#fca5a533}.text-red-300/25{color:#fca5a540}.text-red-300/30{color:#fca5a54d}.text-red-300/35{color:#fca5a559}.text-red-300/40{color:#fca5a566}.text-red-300/45{color:#fca5a573}.text-red-300/5{color:#fca5a50d}.text-red-300/50{color:#fca5a580}.text-red-300/55{color:#fca5a58c}.text-red-300/60{color:#fca5a599}.text-red-300/65{color:#fca5a5a6}.text-red-300/70{color:#fca5a5b3}.text-red-300/75{color:#fca5a5bf}.text-red-300/80{color:#fca5a5cc}.text-red-300/85{color:#fca5a5d9}.text-red-300/90{color:#fca5a5e6}.text-red-300/95{color:#fca5a5f2}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.text-red-400/0{color:#f8717100}.text-red-400/10{color:#f871711a}.text-red-400/100{color:#f87171}.text-red-400/15{color:#f8717126}.text-red-400/20{color:#f8717133}.text-red-400/25{color:#f8717140}.text-red-400/30{color:#f871714d}.text-red-400/35{color:#f8717159}.text-red-400/40{color:#f8717166}.text-red-400/45{color:#f8717173}.text-red-400/5{color:#f871710d}.text-red-400/50{color:#f8717180}.text-red-400/55{color:#f871718c}.text-red-400/60{color:#f8717199}.text-red-400/65{color:#f87171a6}.text-red-400/70{color:#f87171b3}.text-red-400/75{color:#f87171bf}.text-red-400/80{color:#f87171cc}.text-red-400/85{color:#f87171d9}.text-red-400/90{color:#f87171e6}.text-red-400/95{color:#f87171f2}.text-red-50{--tw-text-opacity: 1;color:rgb(254 242 242 / var(--tw-text-opacity, 1))}.text-red-50/0{color:#fef2f200}.text-red-50/10{color:#fef2f21a}.text-red-50/100{color:#fef2f2}.text-red-50/15{color:#fef2f226}.text-red-50/20{color:#fef2f233}.text-red-50/25{color:#fef2f240}.text-red-50/30{color:#fef2f24d}.text-red-50/35{color:#fef2f259}.text-red-50/40{color:#fef2f266}.text-red-50/45{color:#fef2f273}.text-red-50/5{color:#fef2f20d}.text-red-50/50{color:#fef2f280}.text-red-50/55{color:#fef2f28c}.text-red-50/60{color:#fef2f299}.text-red-50/65{color:#fef2f2a6}.text-red-50/70{color:#fef2f2b3}.text-red-50/75{color:#fef2f2bf}.text-red-50/80{color:#fef2f2cc}.text-red-50/85{color:#fef2f2d9}.text-red-50/90{color:#fef2f2e6}.text-red-50/95{color:#fef2f2f2}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.text-red-500/0{color:#ef444400}.text-red-500/10{color:#ef44441a}.text-red-500/100{color:#ef4444}.text-red-500/15{color:#ef444426}.text-red-500/20{color:#ef444433}.text-red-500/25{color:#ef444440}.text-red-500/30{color:#ef44444d}.text-red-500/35{color:#ef444459}.text-red-500/40{color:#ef444466}.text-red-500/45{color:#ef444473}.text-red-500/5{color:#ef44440d}.text-red-500/50{color:#ef444480}.text-red-500/55{color:#ef44448c}.text-red-500/60{color:#ef444499}.text-red-500/65{color:#ef4444a6}.text-red-500/70{color:#ef4444b3}.text-red-500/75{color:#ef4444bf}.text-red-500/80{color:#ef4444cc}.text-red-500/85{color:#ef4444d9}.text-red-500/90{color:#ef4444e6}.text-red-500/95{color:#ef4444f2}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-red-600/0{color:#dc262600}.text-red-600/10{color:#dc26261a}.text-red-600/100{color:#dc2626}.text-red-600/15{color:#dc262626}.text-red-600/20{color:#dc262633}.text-red-600/25{color:#dc262640}.text-red-600/30{color:#dc26264d}.text-red-600/35{color:#dc262659}.text-red-600/40{color:#dc262666}.text-red-600/45{color:#dc262673}.text-red-600/5{color:#dc26260d}.text-red-600/50{color:#dc262680}.text-red-600/55{color:#dc26268c}.text-red-600/60{color:#dc262699}.text-red-600/65{color:#dc2626a6}.text-red-600/70{color:#dc2626b3}.text-red-600/75{color:#dc2626bf}.text-red-600/80{color:#dc2626cc}.text-red-600/85{color:#dc2626d9}.text-red-600/90{color:#dc2626e6}.text-red-600/95{color:#dc2626f2}.text-red-700{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity, 1))}.text-red-700/0{color:#b91c1c00}.text-red-700/10{color:#b91c1c1a}.text-red-700/100{color:#b91c1c}.text-red-700/15{color:#b91c1c26}.text-red-700/20{color:#b91c1c33}.text-red-700/25{color:#b91c1c40}.text-red-700/30{color:#b91c1c4d}.text-red-700/35{color:#b91c1c59}.text-red-700/40{color:#b91c1c66}.text-red-700/45{color:#b91c1c73}.text-red-700/5{color:#b91c1c0d}.text-red-700/50{color:#b91c1c80}.text-red-700/55{color:#b91c1c8c}.text-red-700/60{color:#b91c1c99}.text-red-700/65{color:#b91c1ca6}.text-red-700/70{color:#b91c1cb3}.text-red-700/75{color:#b91c1cbf}.text-red-700/80{color:#b91c1ccc}.text-red-700/85{color:#b91c1cd9}.text-red-700/90{color:#b91c1ce6}.text-red-700/95{color:#b91c1cf2}.text-red-800{--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity, 1))}.text-red-800/0{color:#991b1b00}.text-red-800/10{color:#991b1b1a}.text-red-800/100{color:#991b1b}.text-red-800/15{color:#991b1b26}.text-red-800/20{color:#991b1b33}.text-red-800/25{color:#991b1b40}.text-red-800/30{color:#991b1b4d}.text-red-800/35{color:#991b1b59}.text-red-800/40{color:#991b1b66}.text-red-800/45{color:#991b1b73}.text-red-800/5{color:#991b1b0d}.text-red-800/50{color:#991b1b80}.text-red-800/55{color:#991b1b8c}.text-red-800/60{color:#991b1b99}.text-red-800/65{color:#991b1ba6}.text-red-800/70{color:#991b1bb3}.text-red-800/75{color:#991b1bbf}.text-red-800/80{color:#991b1bcc}.text-red-800/85{color:#991b1bd9}.text-red-800/90{color:#991b1be6}.text-red-800/95{color:#991b1bf2}.text-red-900{--tw-text-opacity: 1;color:rgb(127 29 29 / var(--tw-text-opacity, 1))}.text-red-900/0{color:#7f1d1d00}.text-red-900/10{color:#7f1d1d1a}.text-red-900/100{color:#7f1d1d}.text-red-900/15{color:#7f1d1d26}.text-red-900/20{color:#7f1d1d33}.text-red-900/25{color:#7f1d1d40}.text-red-900/30{color:#7f1d1d4d}.text-red-900/35{color:#7f1d1d59}.text-red-900/40{color:#7f1d1d66}.text-red-900/45{color:#7f1d1d73}.text-red-900/5{color:#7f1d1d0d}.text-red-900/50{color:#7f1d1d80}.text-red-900/55{color:#7f1d1d8c}.text-red-900/60{color:#7f1d1d99}.text-red-900/65{color:#7f1d1da6}.text-red-900/70{color:#7f1d1db3}.text-red-900/75{color:#7f1d1dbf}.text-red-900/80{color:#7f1d1dcc}.text-red-900/85{color:#7f1d1dd9}.text-red-900/90{color:#7f1d1de6}.text-red-900/95{color:#7f1d1df2}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.line-through{text-decoration-line:line-through}.underline-offset-4{text-underline-offset:4px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-25{opacity:.25}.opacity-30{opacity:.3}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.opacity-90{opacity:.9}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-none{--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring-0{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-ring{--tw-ring-color: hsl(var(--ring))}.ring-offset-background{--tw-ring-offset-color: hsl(var(--background))}.drop-shadow{--tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / .1)) drop-shadow(0 1px 1px rgb(0 0 0 / .06));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)}.grayscale{--tw-grayscale: grayscale(100%);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)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.animate-in{animation-duration:.3s;animation-fill-mode:both;animation-timing-function:cubic-bezier(.4,0,.2,1)}.fade-in-0{animation-name:fadeIn}.zoom-in-95{animation-name:zoomIn}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes zoomIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.app-container{max-width:1200px;margin:0 auto;padding:20px}@media (max-width: 768px){.app-container{padding:15px}}@media (max-width: 480px){.app-container{padding:10px}}.app-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:15px;border-bottom:1px solid #e0e0e0}@media (max-width: 768px){.app-header{flex-direction:column;align-items:flex-start;gap:10px}}.app-header h1{margin:0;color:#333}@media (max-width: 480px){.app-header h1{font-size:1.5rem}}.user-info{display:flex;align-items:center;gap:15px}@media (max-width: 480px){.user-info{gap:10px;flex-wrap:wrap}}.app-main{background-color:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a}@media (max-width: 768px){.app-main{padding:15px}}@media (max-width: 480px){.app-main{padding:10px;border-radius:6px}}.schema-selector{display:flex;align-items:center;gap:15px;margin-bottom:20px}@media (max-width: 768px){.schema-selector{flex-direction:column;align-items:flex-start;gap:10px}}.loading{text-align:center;padding:20px;color:#666}.error-message{background-color:#ffebee;color:#c62828;padding:10px 15px;border-radius:4px;margin-bottom:20px}@media (max-width: 480px){.error-message{padding:8px 12px;font-size:14px}}.import-job-status{margin-top:20px;padding:15px;background-color:#e8f5e9;border-radius:4px}@media (max-width: 480px){.import-job-status{padding:10px}}.login-container{max-width:400px;margin:100px auto;padding:30px;background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a}@media (max-width: 768px){.login-container{max-width:85%;margin:60px auto;padding:20px}}@media (max-width: 480px){.login-container{max-width:95%;margin:30px auto;padding:15px}}.login-container h2{margin-top:0;margin-bottom:20px;text-align:center;color:#333}@media (max-width: 480px){.login-container h2{font-size:1.5rem;margin-bottom:15px}}.form-group{margin-bottom:15px}.form-group label{display:block;margin-bottom:5px;font-weight:500}.form-group input{width:100%;padding:8px 12px;border-radius:4px;border:1px solid #ccc;box-sizing:border-box}.file:border-0::file-selector-button{border-width:0px}.file:bg-transparent::file-selector-button{background-color:transparent}.file:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file:font-medium::file-selector-button{font-weight:500}.placeholder:text-gray-500::-moz-placeholder{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.placeholder:text-gray-500::placeholder{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.placeholder:text-muted-foreground::-moz-placeholder{color:hsl(var(--muted-foreground))}.placeholder:text-muted-foreground::placeholder{color:hsl(var(--muted-foreground))}.before:absolute:before{content:var(--tw-content);position:absolute}.before:inset-0:before{content:var(--tw-content);inset:0}.before:-z-10:before{content:var(--tw-content);z-index:-10}.before:rounded-full:before{content:var(--tw-content);border-radius:9999px}.before:bg-green-500:before{content:var(--tw-content);--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.before:content-['']:before{--tw-content: "";content:var(--tw-content)}.hover:border-gray-400:hover{--tw-border-opacity: 1;border-color:rgb(156 163 175 / var(--tw-border-opacity, 1))}.hover:bg-blue-100:hover{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.hover:bg-blue-700:hover{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1))}.hover:bg-gray-100:hover{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.hover:bg-gray-200:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.hover:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.hover:bg-red-100:hover{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.hover:bg-red-700:hover{--tw-bg-opacity: 1;background-color:rgb(185 28 28 / var(--tw-bg-opacity, 1))}.hover:bg-secondary:hover{background-color:hsl(var(--secondary))}.hover:text-blue-700:hover{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.hover:text-blue-900:hover{--tw-text-opacity: 1;color:rgb(30 58 138 / var(--tw-text-opacity, 1))}.hover:text-foreground:hover{color:hsl(var(--foreground))}.hover:text-gray-900:hover{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.hover:underline:hover{text-decoration-line:underline}.hover:opacity-100:hover{opacity:1}.focus:border-blue-500:focus{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.focus:bg-blue-100:focus{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.focus:bg-white:focus{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.focus:text-blue-900:focus{--tw-text-opacity: 1;color:rgb(30 58 138 / var(--tw-text-opacity, 1))}.focus:opacity-100:focus{opacity:1}.focus:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus:ring-blue-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.focus:ring-ring:focus{--tw-ring-color: hsl(var(--ring))}.focus:ring-offset-2:focus{--tw-ring-offset-width: 2px}.focus-visible:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible:ring-blue-500:focus-visible{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.focus-visible:ring-gray-500:focus-visible{--tw-ring-opacity: 1;--tw-ring-color: rgb(107 114 128 / var(--tw-ring-opacity, 1))}.focus-visible:ring-red-500:focus-visible{--tw-ring-opacity: 1;--tw-ring-color: rgb(239 68 68 / var(--tw-ring-opacity, 1))}.focus-visible:ring-ring:focus-visible{--tw-ring-color: hsl(var(--ring))}.focus-visible:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.focus-visible:ring-offset-background:focus-visible{--tw-ring-offset-color: hsl(var(--background))}.disabled:pointer-events-none:disabled{pointer-events:none}.disabled:cursor-not-allowed:disabled{cursor:not-allowed}.disabled:bg-gray-50:disabled{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.disabled:opacity-50:disabled{opacity:.5}.group:hover .group-hover:opacity-100{opacity:1}.group.destructive .group-[.destructive]:border-muted/40{border-color:hsl(var(--muted) / .4)}.group.destructive .group-[.destructive]:text-red-300{--tw-text-opacity: 1;color:rgb(252 165 165 / var(--tw-text-opacity, 1))}.group.destructive .group-[.destructive]:hover:border-destructive/30:hover{border-color:hsl(var(--destructive) / .3)}.group.destructive .group-[.destructive]:hover:bg-destructive:hover{background-color:hsl(var(--destructive))}.group.destructive .group-[.destructive]:hover:text-destructive-foreground:hover{color:hsl(var(--destructive-foreground))}.group.destructive .group-[.destructive]:hover:text-red-50:hover{--tw-text-opacity: 1;color:rgb(254 242 242 / var(--tw-text-opacity, 1))}.group.destructive .group-[.destructive]:focus:ring-destructive:focus{--tw-ring-color: hsl(var(--destructive))}.group.destructive .group-[.destructive]:focus:ring-red-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(248 113 113 / var(--tw-ring-opacity, 1))}.group.destructive .group-[.destructive]:focus:ring-offset-red-600:focus{--tw-ring-offset-color: #dc2626}.data-[disabled]:pointer-events-none[data-disabled]{pointer-events:none}.data-[side=bottom]:translate-y-1[data-side=bottom]{--tw-translate-y: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-[side=left]:-translate-x-1[data-side=left]{--tw-translate-x: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-[side=right]:translate-x-1[data-side=right]{--tw-translate-x: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-[side=top]:-translate-y-1[data-side=top]{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-[state=checked]:translate-x-5[data-state=checked]{--tw-translate-x: 1.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-[state=unchecked]:translate-x-0[data-state=unchecked],.data-[swipe=cancel]:translate-x-0[data-swipe=cancel]{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-[swipe=end]:translate-x-[var(--radix-toast-swipe-end-x)][data-swipe=end]{--tw-translate-x: var(--radix-toast-swipe-end-x);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-[swipe=move]:translate-x-[var(--radix-toast-swipe-move-x)][data-swipe=move]{--tw-translate-x: var(--radix-toast-swipe-move-x);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-[disabled]:cursor-not-allowed[data-disabled]{cursor:not-allowed}.data-[state=checked]:bg-blue-50[data-state=checked]{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.data-[state=checked]:bg-primary[data-state=checked]{background-color:hsl(var(--primary))}.data-[state=open]:bg-accent[data-state=open]{background-color:hsl(var(--accent))}.data-[state=unchecked]:bg-input[data-state=unchecked]{background-color:hsl(var(--input))}.data-[state=checked]:font-medium[data-state=checked]{font-weight:500}.data-[state=checked]:text-blue-900[data-state=checked]{--tw-text-opacity: 1;color:rgb(30 58 138 / var(--tw-text-opacity, 1))}.data-[state=checked]:text-primary-foreground[data-state=checked]{color:hsl(var(--primary-foreground))}.data-[state=open]:text-muted-foreground[data-state=open]{color:hsl(var(--muted-foreground))}.data-[disabled]:opacity-40[data-disabled]{opacity:.4}.data-[swipe=move]:transition-none[data-swipe=move]{transition-property:none}.data-[state=open]:animate-in[data-state=open]{animation-duration:.3s;animation-fill-mode:both;animation-timing-function:cubic-bezier(.4,0,.2,1)}.data-[state=open]:fade-in-0[data-state=open]{animation-name:fadeIn}.data-[state=open]:zoom-in-95[data-state=open]{animation-name:zoomIn}.dark:border-destructive:is([data-theme=dark] *){border-color:hsl(var(--destructive))}.dark:border-gray-700:is([data-theme=dark] *){--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity, 1))}.dark:bg-gray-900:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity, 1))}.dark:text-gray-100:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity, 1))}@media (max-width: 480px){.max-[480px]:p-4{padding:1rem}}@media (min-width: 640px){.sm:bottom-0{bottom:0}.sm:right-0{right:0}.sm:top-auto{top:auto}.sm:flex-row{flex-direction:row}.sm:flex-col{flex-direction:column}.sm:justify-end{justify-content:flex-end}.sm:space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.sm:rounded-lg{border-radius:var(--radius)}.sm:px-4{padding-left:1rem;padding-right:1rem}.sm:py-6{padding-top:1.5rem;padding-bottom:1.5rem}.sm:text-left{text-align:left}}@media (min-width: 768px){.md:block{display:block}.md:max-w-[420px]{max-width:420px}}.[&>*]:min-w-[190px]>*{min-width:190px}.[&>*]:flex-1>*{flex:1 1 0%}.[&>span]:line-clamp-1>span{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.[&>svg+div]:translate-y-[-3px]>svg+div{--tw-translate-y: -3px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.[&>svg]:absolute>svg{position:absolute}.[&>svg]:left-4>svg{left:1rem}.[&>svg]:top-4>svg{top:1rem}.[&>svg]:text-destructive>svg{color:hsl(var(--destructive))}.[&>svg]:text-foreground>svg{color:hsl(var(--foreground))}.[&>svg~*]:pl-7>svg~*{padding-left:1.75rem}.[&_p]:leading-relaxed p{line-height:1.625}:root{--base-spacing: 24px;--m-xxxxs: calc(var(--base-spacing) / 5);--m-xxxs: calc(var(--base-spacing) / 4);--m-xxs: calc(var(--base-spacing) / 3);--m-xs: calc(var(--base-spacing) / 2);--m-s: calc(var(--base-spacing) * 2 / 3);--m: var(--base-spacing);--m-mm: calc(var(--base-spacing) * 3 / 2);--m-l: calc(var(--base-spacing) * 5 / 3);--m-xl: calc(var(--base-spacing) * 2);--m-xxl: calc(var(--base-spacing) * 5 / 2);--m-xxxl: calc(var(--base-spacing) * 3);--font-size-xs: calc(var(--font-size) * 16 / 17);--font-size-s: calc(var(--font-size) * 13 / 14);--font-size: .875rem;--font-size-l: calc(var(--font-size) * 8 / 7);--font-size-xl: calc(var(--font-size) * 9 / 7);--font-size-xxl: calc(var(--font-size) * 12 / 7);--font-size-xxxl: calc(var(--font-size) * 18 / 7);--font-size-h: calc(var(--font-size) * 24 / 7);--font-family: "Inter", sans-serif;--font-family-1: var(--font-family);--font-family-2: "Laxan", sans-serif;--border-radius: 4px;--border-radius-1: var(--border-radius);--border-radius-2: calc(var(--border-radius) * 2);--border-radius-3: calc(var(--border-radius) * 3);--border-radius-4: calc(var(--border-radius) * 4);--border-radius-5: calc(var(--border-radius) * 5);--border-radius-r: 50%;--fast: .3s;--speed: .4s;--slow: .9s;--ease: ease-out;--transition-ui: background-color var(--fast) var(--ease), border-color var(--fast) var(--ease), opacity var(--fast) var(--ease), transform var(--fast) var(--ease), color var(--fast) var(--ease);--blurred: 5px;--color-primary: #2563eb;--color-primary-hover: #1d4ed8;--color-primary-focus: #2563eb;--color-primary-disabled: #bfdbfe;--color-primary-button-disabled: #3f3b55;--color-secondary: #1d2939;--color-secondary-hover: #475467;--color-secondary-focus: #1d2939;--color-secondary-disabled: #344054;--color-text-on-primary: #ffffff;--color-text-on-primary-disabled: #667085;--color-text-on-primary-button-disabled: #ffffff;--color-text-on-secondary: #f2f4f7;--color-text-on-secondary-disabled: #475467;--color-progress-bar: #099250;--color-success: rgba(18, 183, 106, .88);--color-emphasis: #0ba5ec;--color-error: rgba(252, 93, 93, .88);--color-attention: rgba(248, 203, 44, .88);--color-importer-link: #2275d7;--blue-light-500: #0ba5ec;--color-green-ui: var(--color-progress-bar);--color-green: var(--color-success);--color-blue: #0ba5ec;--color-red: rgba(252, 93, 93, .88);--color-yellow: rgba(248, 203, 44, .88);--importer-link: var(--color-importer-link)}.CSVImporter-dark{color-scheme:dark;--color-background: #0e1116;--color-background-main: var(--color-background);--color-background-modal: #171a20;--color-background-modal-hover: #2e323c;--color-background-modal-veil: #0e1116;--color-background-modal-shadow: #0e1116;--color-background-modal-shade: #171a20;--color-tertiary: #101828;--color-tertiary-hover: #1d2939;--color-tertiary-focus: #1d2939;--color-tertiary-disabled: #eaecf0;--color-background-menu: #101828;--color-background-menu-hover: #1d2939;--color-text-strong: #f2f4f7;--color-text: #d0d5dd;--color-text-soft: #667085;--color-text-on-tertiary: #ffffff;--color-text-on-tertiary-disabled: #667085;--color-error: #912018;--color-text-error: #f04438;--color-background-error: #f04438;--color-background-error-hover: #d92d20;--color-background-error-soft: #fecdca;--color-input-background: #101828;--color-input-background-soft: #1d2939;--color-input-border: #344054;--color-input-placeholder: #344054;--color-input-text-disabled: #344054;--color-input-disabled: #171a20;--color-border: #1d2939;--color-background-small-button-selected: #344054;--color-background-small-button-hover: #101828;--color-text-small-button: $base-white;--color-button: #eff6ff;--color-button-hover: #dbeafe;--color-button-disabled: #dbeafe;--color-button-text: #171a20;--color-button-text-disabled: lighter(#171a20, 10);--color-button-border: transparent;--color-border: #344054;--color-border-soft: #1d2939;--color-icon: #d0d5dd;--color-bisel: rgba(255, 255, 255, .05);--color-csv-import-text: var(--color-text);--color-stepper: #30374f;--color-stepper-active: #6ce9a6}.CSVImporter-light{color-scheme:light;--color-background: #f2f4f7;--color-background-main: #ffffff;--color-background-modal: #ffffff;--color-background-modal-hover: #ffffff;--color-background-modal-veil: #0e1116;--color-background-modal-shadow: transparent;--color-background-modal-shade: #f2f4f7;--color-tertiary: #ffffff;--color-tertiary-hover: #f2f4f7;--color-tertiary-focus: #ffffff;--color-tertiary-disabled: #eaecf0;--color-background-menu: #ffffff;--color-background-menu-hover: #f2f4f7;--color-text-strong: #101828;--color-text: #1d2939;--color-text-soft: #667085;--color-text-on-tertiary: #344054;--color-text-on-tertiary-disabled: #667085;--color-error: #fecdca;--color-text-error: #f04438;--color-background-error: #f04438;--color-background-error-hover: #d92d20;--color-background-error-soft: #fecdca;--color-input-background: #ffffff;--color-input-background-soft: #d0d5dd;--color-input-border: #344054;--color-input-placeholder: #344054;--color-input-text-disabled: #344054;--color-input-disabled: #f9fafb;--color-border: #1d2939;--color-background-small-button-selected: #f2f4f7;--color-background-small-button-hover: #f9fafb;--color-text-small-button: var(--color-text);--color-button: #ffffff;--color-button-hover: #f2f4f7;--color-button-disabled: #fcfcfd;--color-button-text: var(--color-text-soft);--color-button-text-disabled: #d0d5dd;--color-button-border: #d0d5dd;--color-border: #d0d5dd;--color-border-soft: #eaecf0;--color-icon: #101323;--color-bisel: rgba(0, 0, 0, .05);--color-csv-import-text: #130638;--color-stepper: #b9c0d4;--color-stepper-active: #6ce9a6}.csv-importer{font-family:Geist,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--color-background);color:var(--color-text);font-size:var(--font-size);font-weight:500;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.csv-importer *{box-sizing:border-box}.csv-importer .container{max-width:1300px;margin:0 auto;padding:2rem}@media (max-width: 640px){.csv-importer .container{padding:1rem}}.csv-importer h1,.csv-importer h2,.csv-importer h3,.csv-importer h4,.csv-importer h5,.csv-importer h6{font-family:Geist,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-weight:600;line-height:1.2;color:#111827}.csv-importer h1{font-size:2rem}.csv-importer h2{font-size:1.5rem}.csv-importer h3{font-size:1.25rem}.csv-importer h4{font-size:1.125rem}.csv-importer h5{font-size:1rem}.csv-importer h6{font-size:.875rem}.csv-importer p{line-height:1.6;color:#4b5563}.csv-importer button{font-family:Geist,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-weight:500;transition:all .2s ease}.csv-importer button:hover:not(:disabled){transform:translateY(-1px)}.csv-importer input,.csv-importer textarea,.csv-importer select{font-family:Geist,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:.875rem}.csv-importer input:focus,.csv-importer textarea:focus,.csv-importer select:focus{outline:none;box-shadow:0 0 0 3px rgba(var(--color-primary-rgb, 122, 94, 248),.1)}.csv-importer a{color:var(--color-primary);text-decoration:none;transition:color .2s ease}.csv-importer a:hover{color:var(--color-primary-700);text-decoration:underline}.CSVImporter{border:none;background-color:transparent;padding:0 1rem;border-radius:1.2rem;color:inherit;cursor:pointer;font-weight:500;font-size:14px;display:inline-flex;gap:.5rem;align-items:center;transition:filter .2s ease-out}.CSVImporter svg{display:block}.CSVImporter svg path{stroke:currentColor!important}.CSVImporter:hover,.CSVImporter:active{filter:brightness(1.2)}.CSVImporter-dialog::backdrop{background-color:#000000d9}.CSVImporter-dialog{border-radius:1rem;width:80vw;max-height:80vh;min-width:800px;border:none;position:fixed;inset:0;padding:0;margin:auto}.CSVImporter-div{border:none;display:block;width:100%;height:auto;max-height:80vh;overflow-y:auto}@media (max-width: 768px){.CSVImporter-dialog{width:95vw;min-width:unset;max-width:100%}}
|
|
151
|
+
`,qd=Bd;exports.CSV=Wd;exports.CSVImporter=Wt;exports.ColumnMapper=Pd;exports.Uploader=Id;exports.default=Wt;exports.importcsvStyles=qd;
|
|
139
152
|
//# sourceMappingURL=index.js.map
|