@local-civics/hub-ui 0.1.210 → 0.1.212
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +141 -36
- package/dist/index.js +800 -407
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +797 -409
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import React__default, { useCallback } from 'react';
|
|
3
3
|
import 'external-svg-loader';
|
|
4
|
-
import { IconBrandInstagram, IconBrandLinkedin, IconBrandFacebook, IconRoute,
|
|
4
|
+
import { IconLayoutGrid, IconList, IconBrandInstagram, IconBrandLinkedin, IconBrandFacebook, IconRoute, IconAlbum, IconSwitchHorizontal, IconLogout, IconUser, IconClipboard, IconBriefcase, IconMessageCircle, IconBell } from '@tabler/icons';
|
|
5
5
|
import LinkifyIt from 'linkify-it';
|
|
6
6
|
import reactStringReplace from 'react-string-replace';
|
|
7
7
|
import { Link } from 'react-router-dom';
|
|
@@ -33,7 +33,7 @@ function styleInject(css, ref) {
|
|
|
33
33
|
}
|
|
34
34
|
}
|
|
35
35
|
|
|
36
|
-
var css_248z = "@font-face{font-family:ProximaNova;src:url(https://cdn.localcivics.io/fonts/ProximaNova.otf) format(\"opentype\")}@font-face{font-family:ProximaNova;font-weight:700;src:url(https://cdn.localcivics.io/fonts/ProximaNovaBold.otf) format(\"opentype\")}\n\n/*! tailwindcss v3.2.4 | MIT License | https://tailwindcss.com*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:\"\"}html{-webkit-text-size-adjust:100%;font-feature-settings:normal;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}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,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;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{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{color:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-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,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#9ca3af;opacity:1}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]{display:none}*,:after,:before{--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-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:rgba(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: }::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-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:rgba(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: }.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}}.sr-only{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.visible{visibility:visible}.invisible{visibility:hidden}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-y-0{bottom:0;top:0}.top-0{top:0}.bottom-0{bottom:0}.left-0{left:0}.right-0{right:0}.bottom-1\\/4{bottom:25%}.top-11{top:2.75rem}.top-4{top:1rem}.top-2{top:.5rem}.right-2{right:.5rem}.bottom-5{bottom:1.25rem}.right-5{right:1.25rem}.bottom-20{bottom:5rem}.right-14{right:3.5rem}.-right-0\\.5{right:-.125rem}.-top-0\\.5{top:-.125rem}.-right-0{right:0}.-top-0{top:0}.z-10{z-index:10}.z-30{z-index:30}.-z-30{z-index:-30}.-z-10{z-index:-10}.z-40{z-index:40}.col-span-2{grid-column:span 2/span 2}.col-span-1{grid-column:span 1/span 1}.col-span-3{grid-column:span 3/span 3}.m-auto{margin:auto}.m-3{margin:.75rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.my-auto{margin-bottom:auto;margin-top:auto}.my-5{margin-bottom:1.25rem;margin-top:1.25rem}.-ml-1{margin-left:-.25rem}.mt-2{margin-top:.5rem}.-mb-\\[3rem\\]{margin-bottom:-3rem}.mt-5{margin-top:1.25rem}.-mt-4{margin-top:-1rem}.mt-4{margin-top:1rem}.ml-3{margin-left:.75rem}.ml-2{margin-left:.5rem}.-mt-1\\.5{margin-top:-.375rem}.-mt-1{margin-top:-.25rem}.ml-1{margin-left:.25rem}.mt-1{margin-top:.25rem}.mb-2{margin-bottom:.5rem}.mb-5{margin-bottom:1.25rem}.-mt-6{margin-top:-1.5rem}.ml-auto{margin-left:auto}.mt-auto{margin-top:auto}.mb-3{margin-bottom:.75rem}.mt-1\\.5{margin-top:.375rem}.mt-0\\.5{margin-top:.125rem}.mt-0{margin-top:0}.mb-1\\.5{margin-bottom:.375rem}.mb-1{margin-bottom:.25rem}.-mb-7{margin-bottom:-1.75rem}.-ml-2{margin-left:-.5rem}.mb-4{margin-bottom:1rem}.ml-5{margin-left:1.25rem}.mr-1{margin-right:.25rem}.mt-3{margin-top:.75rem}.box-border{box-sizing:border-box}.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}.contents{display:contents}.\\!contents{display:contents!important}.hidden{display:none}.h-1{height:.25rem}.h-3{height:.75rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-screen{height:100vh}.h-24{height:6rem}.h-9{height:2.25rem}.h-full{height:100%}.h-8{height:2rem}.h-16{height:4rem}.h-60{height:15rem}.h-\\[22rem\\]{height:22rem}.h-28{height:7rem}.h-\\[16rem\\]{height:16rem}.h-14{height:3.5rem}.h-\\[18rem\\]{height:18rem}.h-3\\.5{height:.875rem}.h-\\[12rem\\]{height:12rem}.h-\\[6rem\\]{height:6rem}.h-96{height:24rem}.h-max{height:-moz-max-content;height:max-content}.h-2{height:.5rem}.h-12{height:3rem}.h-20{height:5rem}.h-10{height:2.5rem}.h-1\\.5{height:.375rem}.h-2\\.5{height:.625rem}.h-\\[18px\\]{height:18px}.h-\\[30px\\]{height:30px}.h-\\[5px\\]{height:5px}.max-h-\\[24rem\\]{max-height:24rem}.max-h-\\[12rem\\]{max-height:12rem}.max-h-\\[20rem\\]{max-height:20rem}.max-h-\\[30rem\\]{max-height:30rem}.max-h-\\[18rem\\]{max-height:18rem}.max-h-96{max-height:24rem}.max-h-\\[25rem\\]{max-height:25rem}.max-h-\\[14rem\\]{max-height:14rem}.min-h-16{min-height:4rem}.min-h-96{min-height:24rem}.min-h-\\[20rem\\]{min-height:20rem}.min-h-5{min-height:1.25rem}.min-h-48{min-height:12rem}.w-full{width:100%}.w-1{width:.25rem}.w-12{width:3rem}.w-3{width:.75rem}.w-4{width:1rem}.w-20{width:5rem}.w-5{width:1.25rem}.w-28{width:7rem}.w-6{width:1.5rem}.w-36{width:9rem}.w-7{width:1.75rem}.w-screen{width:100vw}.w-60{width:15rem}.w-9{width:2.25rem}.w-8{width:2rem}.w-11{width:2.75rem}.w-48{width:12rem}.w-\\[17\\.7rem\\]{width:17.7rem}.w-\\[16\\.7rem\\]{width:16.7rem}.w-max{width:-moz-max-content;width:max-content}.w-14{width:3.5rem}.w-\\[14rem\\]{width:14rem}.w-16{width:4rem}.w-3\\.5{width:.875rem}.w-96{width:24rem}.w-\\[18rem\\]{width:18rem}.w-44{width:11rem}.w-24{width:6rem}.w-40{width:10rem}.w-10{width:2.5rem}.w-\\[18px\\]{width:18px}.w-\\[230px\\]{width:230px}.w-2\\.5{width:.625rem}.w-2{width:.5rem}.w-\\[30px\\]{width:30px}.w-\\[5px\\]{width:5px}.min-w-6{min-width:1.5rem}.min-w-64{min-width:16rem}.min-w-3{min-width:.75rem}.min-w-0{min-width:0}.min-w-\\[35rem\\]{min-width:35rem}.max-w-\\[64rem\\]{max-width:64rem}.max-w-xs{max-width:20rem}.max-w-\\[62\\.5rem\\]{max-width:62.5rem}.max-w-\\[12rem\\]{max-width:12rem}.max-w-full{max-width:100%}.max-w-\\[16rem\\]{max-width:16rem}.max-w-\\[18rem\\]{max-width:18rem}.max-w-\\[20rem\\]{max-width:20rem}.max-w-\\[40rem\\]{max-width:40rem}.max-w-\\[7rem\\]{max-width:7rem}.max-w-\\[22rem\\]{max-width:22rem}.max-w-lg{max-width:32rem}.max-w-\\[25rem\\]{max-width:25rem}.max-w-md{max-width:28rem}.max-w-\\[50rem\\]{max-width:50rem}.max-w-3xl{max-width:48rem}.flex-1{flex:1 1 0%}.flex-auto{flex:1 1 auto}.flex-shrink-0,.shrink-0{flex-shrink:0}.grow{flex-grow:1}.grow-0{flex-grow:0}.-translate-y-3\\.5{--tw-translate-y:-0.875rem}.-translate-y-3,.-translate-y-3\\.5{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-3{--tw-translate-y:-0.75rem}.scale-\\[0\\.9\\]{--tw-scale-x:0.9;--tw-scale-y:0.9}.scale-\\[0\\.50\\],.scale-\\[0\\.9\\]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-\\[0\\.50\\]{--tw-scale-x:0.50;--tw-scale-y:0.50}.scale-\\[0\\.75\\]{--tw-scale-x:0.75;--tw-scale-y:0.75}.scale-\\[0\\.75\\],.scale-\\[1\\.25\\]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-\\[1\\.25\\]{--tw-scale-x:1.25;--tw-scale-y:1.25}.scale-\\[1\\.50\\]{--tw-scale-x:1.50;--tw-scale-y:1.50}.scale-\\[1\\.50\\],.scale-\\[1\\.75\\]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-\\[1\\.75\\]{--tw-scale-x:1.75;--tw-scale-y:1.75}.scale-\\[2\\.00\\]{--tw-scale-x:2.00;--tw-scale-y:2.00}.scale-\\[2\\.00\\],.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.resize-none{resize:none}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.auto-cols-max{grid-auto-columns:max-content}.grid-flow-col{grid-auto-flow:column}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.content-center{align-content:center}.content-start{align-content:flex-start}.items-start{align-items:flex-start}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-items-center{justify-items:center}.gap-2{gap:.5rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-1{gap:.25rem}.gap-8{gap:2rem}.gap-7{gap:1.75rem}.gap-3{gap:.75rem}.gap-5{gap:1.25rem}.gap-2\\.5{gap:.625rem}.gap-10{gap:2.5rem}.gap-3\\.5{gap:.875rem}.gap-0\\.5{gap:.125rem}.gap-0{gap:0}.gap-x-2{-moz-column-gap:.5rem;column-gap:.5rem}.gap-y-2{row-gap:.5rem}.gap-x-6{-moz-column-gap:1.5rem;column-gap:1.5rem}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-y-6{row-gap:1.5rem}.gap-x-8{-moz-column-gap:2rem;column-gap:2rem}.gap-y-4{row-gap:1rem}.gap-x-1{-moz-column-gap:.25rem;column-gap:.25rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-y-5{row-gap:1.25rem}.gap-y-12{row-gap:3rem}.gap-y-8{row-gap:2rem}.gap-y-3{row-gap:.75rem}.gap-y-1{row-gap:.25rem}.space-x-6>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(1.5rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(1.5rem*var(--tw-space-x-reverse))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(1rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(1rem*var(--tw-space-x-reverse))}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(.75rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(.75rem*var(--tw-space-x-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(2rem*var(--tw-space-y-reverse));margin-top:calc(2rem*(1 - var(--tw-space-y-reverse)))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1rem*var(--tw-space-y-reverse));margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.75rem*var(--tw-space-y-reverse));margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)))}.space-y-10>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(2.5rem*var(--tw-space-y-reverse));margin-top:calc(2.5rem*(1 - var(--tw-space-y-reverse)))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1.5rem*var(--tw-space-y-reverse));margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.5rem*var(--tw-space-y-reverse));margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)))}.space-y-12>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(3rem*var(--tw-space-y-reverse));margin-top:calc(3rem*(1 - var(--tw-space-y-reverse)))}.justify-self-end{justify-self:end}.justify-self-center{justify-self:center}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-scroll{overflow-y:scroll}.overscroll-contain{overscroll-behavior:contain}.overscroll-none{overscroll-behavior:none}.truncate{overflow:hidden;text-overflow:ellipsis}.truncate,.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.rounded{border-radius:.25rem}.rounded-sm{border-radius:.125rem}.rounded-md{border-radius:.375rem}.rounded-full{border-radius:9999px}.rounded-2xl{border-radius:1rem}.rounded-\\[10px\\]{border-radius:10px}.rounded-xl{border-radius:.75rem}.rounded-lg{border-radius:.5rem}.rounded-b-md{border-bottom-left-radius:.375rem;border-bottom-right-radius:.375rem}.rounded-b{border-bottom-left-radius:.25rem;border-bottom-right-radius:.25rem}.border{border-width:1px}.border-2{border-width:2px}.border-4{border-width:4px}.border-x{border-left-width:1px;border-right-width:1px}.border-t{border-top-width:1px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-r{border-right-width:1px}.border-red-300{--tw-border-opacity:1;border-color:rgb(252 165 165/var(--tw-border-opacity))}.border-violet-300{--tw-border-opacity:1;border-color:rgb(196 181 253/var(--tw-border-opacity))}.border-orange-300{--tw-border-opacity:1;border-color:rgb(253 186 116/var(--tw-border-opacity))}.border-amber-300{--tw-border-opacity:1;border-color:rgb(252 211 77/var(--tw-border-opacity))}.border-emerald-300{--tw-border-opacity:1;border-color:rgb(110 231 183/var(--tw-border-opacity))}.border-sky-300{--tw-border-opacity:1;border-color:rgb(125 211 252/var(--tw-border-opacity))}.border-gray-100{--tw-border-opacity:1;border-color:rgb(243 244 246/var(--tw-border-opacity))}.border-slate-500{--tw-border-opacity:1;border-color:rgb(100 116 139/var(--tw-border-opacity))}.border-slate-600{--tw-border-opacity:1;border-color:rgb(71 85 105/var(--tw-border-opacity))}.border-sky-400{--tw-border-opacity:1;border-color:rgb(56 189 248/var(--tw-border-opacity))}.border-sky-600{--tw-border-opacity:1;border-color:rgb(2 132 199/var(--tw-border-opacity))}.border-green-600{--tw-border-opacity:1;border-color:rgb(22 163 74/var(--tw-border-opacity))}.border-green-400{--tw-border-opacity:1;border-color:rgb(74 222 128/var(--tw-border-opacity))}.border-primary-600{--tw-border-opacity:1;border-color:rgb(58 209 242/var(--tw-border-opacity))}.border-primary-400{--tw-border-opacity:1;border-color:rgb(97 218 245/var(--tw-border-opacity))}.border-secondary-600{--tw-border-opacity:1;border-color:rgb(34 42 57/var(--tw-border-opacity))}.border-secondary-400{--tw-border-opacity:1;border-color:rgb(78 85 97/var(--tw-border-opacity))}.border-rose-600{--tw-border-opacity:1;border-color:rgb(225 29 72/var(--tw-border-opacity))}.border-rose-400{--tw-border-opacity:1;border-color:rgb(251 113 133/var(--tw-border-opacity))}.border-emerald-600{--tw-border-opacity:1;border-color:rgb(5 150 105/var(--tw-border-opacity))}.border-emerald-400{--tw-border-opacity:1;border-color:rgb(52 211 153/var(--tw-border-opacity))}.border-sky-400\\/95{border-color:rgba(56,189,248,.95)}.border-slate-100{--tw-border-opacity:1;border-color:rgb(241 245 249/var(--tw-border-opacity))}.border-blue-600{--tw-border-opacity:1;border-color:rgb(1 95 159/var(--tw-border-opacity))}.border-blue-400{--tw-border-opacity:1;border-color:rgb(1 112 187/var(--tw-border-opacity))}.border-dark-blue-600{--tw-border-opacity:1;border-color:rgb(10 15 46/var(--tw-border-opacity))}.border-dark-blue-400{--tw-border-opacity:1;border-color:rgb(35 42 58/var(--tw-border-opacity))}.border-slate-200{--tw-border-opacity:1;border-color:rgb(226 232 240/var(--tw-border-opacity))}.border-gray-200{--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity))}.border-slate-300{--tw-border-opacity:1;border-color:rgb(203 213 225/var(--tw-border-opacity))}.border-white{--tw-border-opacity:1;border-color:rgb(255 255 255/var(--tw-border-opacity))}.border-zinc-100{--tw-border-opacity:1;border-color:rgb(244 244 245/var(--tw-border-opacity))}.border-zinc-200{--tw-border-opacity:1;border-color:rgb(228 228 231/var(--tw-border-opacity))}.border-gold-400\\/20{border-color:rgba(255,212,77,.2)}.border-sky-blue-400\\/20{border-color:rgba(59,208,242,.2)}.border-sky-blue-400\\/30{border-color:rgba(59,208,242,.3)}.border-mint-400\\/30{border-color:rgba(30,226,175,.3)}.border-gold-400\\/30{border-color:rgba(255,212,77,.3)}.border-mint-400\\/20{border-color:rgba(30,226,175,.2)}.border-rose-300{--tw-border-opacity:1;border-color:rgb(253 164 175/var(--tw-border-opacity))}.border-transparent{border-color:transparent}.border-b-sky-400{--tw-border-opacity:1;border-bottom-color:rgb(56 189 248/var(--tw-border-opacity))}.bg-red-200{--tw-bg-opacity:1;background-color:rgb(254 202 202/var(--tw-bg-opacity))}.bg-red-300{--tw-bg-opacity:1;background-color:rgb(252 165 165/var(--tw-bg-opacity))}.bg-violet-200{--tw-bg-opacity:1;background-color:rgb(221 214 254/var(--tw-bg-opacity))}.bg-violet-300{--tw-bg-opacity:1;background-color:rgb(196 181 253/var(--tw-bg-opacity))}.bg-orange-200{--tw-bg-opacity:1;background-color:rgb(254 215 170/var(--tw-bg-opacity))}.bg-orange-300{--tw-bg-opacity:1;background-color:rgb(253 186 116/var(--tw-bg-opacity))}.bg-amber-200{--tw-bg-opacity:1;background-color:rgb(253 230 138/var(--tw-bg-opacity))}.bg-amber-300{--tw-bg-opacity:1;background-color:rgb(252 211 77/var(--tw-bg-opacity))}.bg-emerald-200{--tw-bg-opacity:1;background-color:rgb(167 243 208/var(--tw-bg-opacity))}.bg-emerald-300{--tw-bg-opacity:1;background-color:rgb(110 231 183/var(--tw-bg-opacity))}.bg-sky-200{--tw-bg-opacity:1;background-color:rgb(186 230 253/var(--tw-bg-opacity))}.bg-sky-300{--tw-bg-opacity:1;background-color:rgb(125 211 252/var(--tw-bg-opacity))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity))}.bg-slate-500{--tw-bg-opacity:1;background-color:rgb(100 116 139/var(--tw-bg-opacity))}.bg-slate-600{--tw-bg-opacity:1;background-color:rgb(71 85 105/var(--tw-bg-opacity))}.bg-sky-400{--tw-bg-opacity:1;background-color:rgb(56 189 248/var(--tw-bg-opacity))}.bg-sky-600{--tw-bg-opacity:1;background-color:rgb(2 132 199/var(--tw-bg-opacity))}.bg-green-600{--tw-bg-opacity:1;background-color:rgb(22 163 74/var(--tw-bg-opacity))}.bg-green-400{--tw-bg-opacity:1;background-color:rgb(74 222 128/var(--tw-bg-opacity))}.bg-primary-600{--tw-bg-opacity:1;background-color:rgb(58 209 242/var(--tw-bg-opacity))}.bg-primary-400{--tw-bg-opacity:1;background-color:rgb(97 218 245/var(--tw-bg-opacity))}.bg-secondary-600{--tw-bg-opacity:1;background-color:rgb(34 42 57/var(--tw-bg-opacity))}.bg-secondary-400{--tw-bg-opacity:1;background-color:rgb(78 85 97/var(--tw-bg-opacity))}.bg-rose-600{--tw-bg-opacity:1;background-color:rgb(225 29 72/var(--tw-bg-opacity))}.bg-rose-400{--tw-bg-opacity:1;background-color:rgb(251 113 133/var(--tw-bg-opacity))}.bg-emerald-600{--tw-bg-opacity:1;background-color:rgb(5 150 105/var(--tw-bg-opacity))}.bg-emerald-400{--tw-bg-opacity:1;background-color:rgb(52 211 153/var(--tw-bg-opacity))}.bg-sky-400\\/95{background-color:rgba(56,189,248,.95)}.bg-slate-50\\/95{background-color:rgba(248,250,252,.95)}.bg-blue-600{--tw-bg-opacity:1;background-color:rgb(1 95 159/var(--tw-bg-opacity))}.bg-blue-400{--tw-bg-opacity:1;background-color:rgb(1 112 187/var(--tw-bg-opacity))}.bg-dark-blue-600{--tw-bg-opacity:1;background-color:rgb(10 15 46/var(--tw-bg-opacity))}.bg-dark-blue-400{--tw-bg-opacity:1;background-color:rgb(35 42 58/var(--tw-bg-opacity))}.bg-slate-200{--tw-bg-opacity:1;background-color:rgb(226 232 240/var(--tw-bg-opacity))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.bg-gray-500\\/75{background-color:hsla(220,9%,46%,.75)}.bg-gray-300\\/75{background-color:rgba(209,213,219,.75)}.bg-sky-blue-200{--tw-bg-opacity:1;background-color:rgb(163 228 243/var(--tw-bg-opacity))}.bg-sky-blue-400{--tw-bg-opacity:1;background-color:rgb(59 208 242/var(--tw-bg-opacity))}.bg-sky-100{--tw-bg-opacity:1;background-color:rgb(224 242 254/var(--tw-bg-opacity))}.bg-gray-800\\/75{background-color:rgba(31,41,55,.75)}.bg-cyan-400{--tw-bg-opacity:1;background-color:rgb(34 211 238/var(--tw-bg-opacity))}.bg-sky-500{--tw-bg-opacity:1;background-color:rgb(14 165 233/var(--tw-bg-opacity))}.bg-slate-100{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity))}.bg-green-500{--tw-bg-opacity:1;background-color:rgb(34 197 94/var(--tw-bg-opacity))}.bg-zinc-100{--tw-bg-opacity:1;background-color:rgb(244 244 245/var(--tw-bg-opacity))}.bg-sky-50{--tw-bg-opacity:1;background-color:rgb(240 249 255/var(--tw-bg-opacity))}.bg-gray-600{--tw-bg-opacity:1;background-color:rgb(75 85 99/var(--tw-bg-opacity))}.bg-mint-400{--tw-bg-opacity:1;background-color:rgb(30 226 175/var(--tw-bg-opacity))}.bg-sky-blue-400\\/10{background-color:rgba(59,208,242,.1)}.bg-gray-200\\/75{background-color:rgba(229,231,235,.75)}.bg-gray-700{--tw-bg-opacity:1;background-color:rgb(55 65 81/var(--tw-bg-opacity))}.bg-zinc-50\\/30{background-color:hsla(0,0%,98%,.3)}.bg-transparent{background-color:transparent}.bg-slate-50{--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity))}.bg-sky-blue-400\\/25{background-color:rgba(59,208,242,.25)}.bg-mint-400\\/25{background-color:rgba(30,226,175,.25)}.bg-gold-400\\/25{background-color:rgba(255,212,77,.25)}.bg-gold-400{--tw-bg-opacity:1;background-color:rgb(255 212 77/var(--tw-bg-opacity))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.bg-\\[linear-gradient\\(150deg\\2c \\#EEF9FF_0\\%\\2c \\#F0FEFA_40\\%\\2c \\#FFFBEA_100\\%\\)\\]{background-image:linear-gradient(150deg,#eef9ff,#f0fefa 40%,#fffbea)}.from-gold-400{--tw-gradient-from:#ffd44d;--tw-gradient-to:rgba(255,212,77,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-sky-blue-400{--tw-gradient-from:#3bd0f2;--tw-gradient-to:rgba(59,208,242,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.via-mint-400{--tw-gradient-to:rgba(30,226,175,0);--tw-gradient-stops:var(--tw-gradient-from),#1ee2af,var(--tw-gradient-to)}.to-sky-blue-400{--tw-gradient-to:#3bd0f2}.to-gold-400{--tw-gradient-to:#ffd44d}.to-mint-400{--tw-gradient-to:#1ee2af}.fill-red-300{fill:#fca5a5}.fill-violet-300{fill:#c4b5fd}.fill-orange-300{fill:#fdba74}.fill-amber-300{fill:#fcd34d}.fill-emerald-300{fill:#6ee7b7}.fill-sky-300{fill:#7dd3fc}.fill-gray-300{fill:#d1d5db}.fill-white{fill:#fff}.fill-gray-600{fill:#4b5563}.fill-current{fill:currentColor}.fill-slate-600{fill:#475569}.stroke-red-300{stroke:#fca5a5}.stroke-violet-300{stroke:#c4b5fd}.stroke-orange-300{stroke:#fdba74}.stroke-amber-300{stroke:#fcd34d}.stroke-emerald-300{stroke:#6ee7b7}.stroke-sky-300{stroke:#7dd3fc}.stroke-gray-300{stroke:#d1d5db}.stroke-gray-600{stroke:#4b5563}.stroke-current{stroke:currentColor}.stroke-slate-600{stroke:#475569}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.p-2{padding:.5rem}.p-1{padding:.25rem}.p-8{padding:2rem}.p-5{padding:1.25rem}.p-4{padding:1rem}.p-3{padding:.75rem}.p-6{padding:1.5rem}.p-2\\.5{padding:.625rem}.px-2{padding-left:.5rem;padding-right:.5rem}.py-0\\.5{padding-bottom:.125rem;padding-top:.125rem}.px-3{padding-left:.75rem;padding-right:.75rem}.py-0{padding-bottom:0;padding-top:0}.py-1{padding-bottom:.25rem;padding-top:.25rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.py-3{padding-bottom:.75rem;padding-top:.75rem}.px-8{padding-left:2rem;padding-right:2rem}.py-2\\.5{padding-bottom:.625rem;padding-top:.625rem}.px-10{padding-left:2.5rem;padding-right:2.5rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.px-4{padding-left:1rem;padding-right:1rem}.py-8{padding-bottom:2rem;padding-top:2rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-5{padding-bottom:1.25rem;padding-top:1.25rem}.px-12{padding-left:3rem;padding-right:3rem}.py-4{padding-bottom:1rem;padding-top:1rem}.px-1{padding-left:.25rem;padding-right:.25rem}.py-3\\.5{padding-bottom:.875rem;padding-top:.875rem}.py-1\\.5{padding-bottom:.375rem;padding-top:.375rem}.px-16{padding-left:4rem;padding-right:4rem}.px-3\\.5{padding-left:.875rem;padding-right:.875rem}.pt-2{padding-top:.5rem}.pt-6{padding-top:1.5rem}.pr-7{padding-right:1.75rem}.pt-16{padding-top:4rem}.pl-2{padding-left:.5rem}.pb-2{padding-bottom:.5rem}.pb-4{padding-bottom:1rem}.pt-5{padding-top:1.25rem}.pb-5{padding-bottom:1.25rem}.pt-1{padding-top:.25rem}.pb-12{padding-bottom:3rem}.pt-4{padding-top:1rem}.pt-3{padding-top:.75rem}.pb-24{padding-bottom:6rem}.pb-3{padding-bottom:.75rem}.pb-8{padding-bottom:2rem}.text-left{text-align:left}.text-center{text-align:center}.text-start{text-align:start}.align-top{vertical-align:top}.align-middle{vertical-align:middle}.font-proxima{font-family:ProximaNova}.text-sm{font-size:.875rem;line-height:1.25rem}.text-\\[0\\.5rem\\]{font-size:.5rem}.text-xs{font-size:.75rem;line-height:1rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-\\[3rem\\]{font-size:3rem}.text-\\[2rem\\]{font-size:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-2xl{font-size:1.5rem;line-height:2rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-\\[10px\\]{font-size:10px}.text-base{font-size:1rem;line-height:1.5rem}.text-\\[9px\\]{font-size:9px}.text-\\[11px\\]{font-size:11px}.text-\\[11\\.5px\\]{font-size:11.5px}.font-semibold{font-weight:600}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-extrabold{font-weight:800}.font-black{font-weight:900}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.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)}.leading-6{line-height:1.5rem}.leading-none{line-height:1}.leading-tight{line-height:1.25}.leading-relaxed{line-height:1.625}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.text-red-300{--tw-text-opacity:1;color:rgb(252 165 165/var(--tw-text-opacity))}.text-violet-300{--tw-text-opacity:1;color:rgb(196 181 253/var(--tw-text-opacity))}.text-orange-300{--tw-text-opacity:1;color:rgb(253 186 116/var(--tw-text-opacity))}.text-amber-300{--tw-text-opacity:1;color:rgb(252 211 77/var(--tw-text-opacity))}.text-emerald-300{--tw-text-opacity:1;color:rgb(110 231 183/var(--tw-text-opacity))}.text-sky-300{--tw-text-opacity:1;color:rgb(125 211 252/var(--tw-text-opacity))}.text-gray-100{--tw-text-opacity:1;color:rgb(243 244 246/var(--tw-text-opacity))}.text-blue-500{--tw-text-opacity:1;color:rgb(59 130 246/var(--tw-text-opacity))}.text-slate-300{--tw-text-opacity:1;color:rgb(203 213 225/var(--tw-text-opacity))}.text-slate-500{--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity))}.text-slate-600{--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity))}.text-sky-400{--tw-text-opacity:1;color:rgb(56 189 248/var(--tw-text-opacity))}.text-sky-600{--tw-text-opacity:1;color:rgb(2 132 199/var(--tw-text-opacity))}.text-green-600{--tw-text-opacity:1;color:rgb(22 163 74/var(--tw-text-opacity))}.text-green-400{--tw-text-opacity:1;color:rgb(74 222 128/var(--tw-text-opacity))}.text-primary-600{--tw-text-opacity:1;color:rgb(58 209 242/var(--tw-text-opacity))}.text-primary-400{--tw-text-opacity:1;color:rgb(97 218 245/var(--tw-text-opacity))}.text-secondary-600{--tw-text-opacity:1;color:rgb(34 42 57/var(--tw-text-opacity))}.text-secondary-400{--tw-text-opacity:1;color:rgb(78 85 97/var(--tw-text-opacity))}.text-rose-600{--tw-text-opacity:1;color:rgb(225 29 72/var(--tw-text-opacity))}.text-rose-400{--tw-text-opacity:1;color:rgb(251 113 133/var(--tw-text-opacity))}.text-emerald-600{--tw-text-opacity:1;color:rgb(5 150 105/var(--tw-text-opacity))}.text-emerald-400{--tw-text-opacity:1;color:rgb(52 211 153/var(--tw-text-opacity))}.text-blue-600{--tw-text-opacity:1;color:rgb(1 95 159/var(--tw-text-opacity))}.text-blue-400{--tw-text-opacity:1;color:rgb(1 112 187/var(--tw-text-opacity))}.text-dark-blue-600{--tw-text-opacity:1;color:rgb(10 15 46/var(--tw-text-opacity))}.text-dark-blue-400{--tw-text-opacity:1;color:rgb(35 42 58/var(--tw-text-opacity))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.text-slate-400{--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity))}.text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity))}.text-green-500{--tw-text-opacity:1;color:rgb(34 197 94/var(--tw-text-opacity))}.text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity))}.text-sky-200{--tw-text-opacity:1;color:rgb(186 230 253/var(--tw-text-opacity))}.text-slate-200{--tw-text-opacity:1;color:rgb(226 232 240/var(--tw-text-opacity))}.text-sky-500{--tw-text-opacity:1;color:rgb(14 165 233/var(--tw-text-opacity))}.text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity))}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity))}.text-cyan-100{--tw-text-opacity:1;color:rgb(207 250 254/var(--tw-text-opacity))}.text-gray-300{--tw-text-opacity:1;color:rgb(209 213 219/var(--tw-text-opacity))}.text-zinc-600{--tw-text-opacity:1;color:rgb(82 82 91/var(--tw-text-opacity))}.text-zinc-400{--tw-text-opacity:1;color:rgb(161 161 170/var(--tw-text-opacity))}.text-zinc-500{--tw-text-opacity:1;color:rgb(113 113 122/var(--tw-text-opacity))}.text-zinc-300{--tw-text-opacity:1;color:rgb(212 212 216/var(--tw-text-opacity))}.text-gold-400{--tw-text-opacity:1;color:rgb(255 212 77/var(--tw-text-opacity))}.text-mint-400{--tw-text-opacity:1;color:rgb(30 226 175/var(--tw-text-opacity))}.text-sky-blue-400{--tw-text-opacity:1;color:rgb(59 208 242/var(--tw-text-opacity))}.text-rose-300{--tw-text-opacity:1;color:rgb(253 164 175/var(--tw-text-opacity))}.text-zinc-800{--tw-text-opacity:1;color:rgb(39 39 42/var(--tw-text-opacity))}.text-amber-500{--tw-text-opacity:1;color:rgb(245 158 11/var(--tw-text-opacity))}.text-zinc-900{--tw-text-opacity:1;color:rgb(24 24 27/var(--tw-text-opacity))}.text-emerald-500{--tw-text-opacity:1;color:rgb(16 185 129/var(--tw-text-opacity))}.text-slate-700{--tw-text-opacity:1;color:rgb(51 65 85/var(--tw-text-opacity))}.underline{text-decoration-line:underline}.placeholder-slate-400::-moz-placeholder{--tw-placeholder-opacity:1;color:rgb(148 163 184/var(--tw-placeholder-opacity))}.placeholder-slate-400::placeholder{--tw-placeholder-opacity:1;color:rgb(148 163 184/var(--tw-placeholder-opacity))}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-40{opacity:.4}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-md{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 rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.shadow-2xl,.shadow-sm{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color)}.shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-\\[0_4px_20px_rgba\\(255\\2c 212\\2c 77\\2c 0\\.12\\)\\]{--tw-shadow:0 4px 20px rgba(255,212,77,.12);--tw-shadow-colored:0 4px 20px 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-\\[0_4px_20px_rgba\\(59\\2c 208\\2c 242\\2c 0\\.10\\)\\]{--tw-shadow:0 4px 20px rgba(59,208,242,.1);--tw-shadow-colored:0 4px 20px 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-\\[0_4px_24px_rgba\\(59\\2c 208\\2c 242\\2c 0\\.10\\)\\]{--tw-shadow:0 4px 24px rgba(59,208,242,.1);--tw-shadow-colored:0 4px 24px var(--tw-shadow-color)}.shadow-\\[0_4px_24px_rgba\\(59\\2c 208\\2c 242\\2c 0\\.10\\)\\],.shadow-lg{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 rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-\\[0_0_8px_rgba\\(30\\2c 226\\2c 175\\2c 0\\.6\\)\\]{--tw-shadow:0 0 8px rgba(30,226,175,.6);--tw-shadow-colored:0 0 8px 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-\\[0_2px_12px_rgba\\(59\\2c 208\\2c 242\\2c 0\\.12\\)\\]{--tw-shadow:0 2px 12px rgba(59,208,242,.12);--tw-shadow-colored:0 2px 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)}.shadow-\\[0_2px_12px_rgba\\(30\\2c 226\\2c 175\\2c 0\\.12\\)\\]{--tw-shadow:0 2px 12px rgba(30,226,175,.12);--tw-shadow-colored:0 2px 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)}.shadow-\\[0_2px_12px_rgba\\(255\\2c 212\\2c 77\\2c 0\\.12\\)\\]{--tw-shadow:0 2px 12px rgba(255,212,77,.12);--tw-shadow-colored:0 2px 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)}.shadow-\\[0_2px_10px_rgba\\(30\\2c 226\\2c 175\\2c 0\\.15\\)\\]{--tw-shadow:0 2px 10px rgba(30,226,175,.15);--tw-shadow-colored:0 2px 10px 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-\\[0_0_8px_rgba\\(59\\2c 208\\2c 242\\2c 0\\.5\\)\\]{--tw-shadow:0 0 8px rgba(59,208,242,.5);--tw-shadow-colored:0 0 8px 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-\\[0_0_8px_rgba\\(30\\2c 226\\2c 175\\2c 0\\.5\\)\\]{--tw-shadow:0 0 8px rgba(30,226,175,.5);--tw-shadow-colored:0 0 8px 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-\\[0_0_8px_rgba\\(255\\2c 212\\2c 77\\2c 0\\.5\\)\\]{--tw-shadow:0 0 8px rgba(255,212,77,.5);--tw-shadow-colored:0 0 8px 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-\\[0_2px_10px_rgba\\(59\\2c 208\\2c 242\\2c 0\\.08\\)\\]{--tw-shadow:0 2px 10px rgba(59,208,242,.08);--tw-shadow-colored:0 2px 10px 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-gray-400{--tw-shadow-color:#9ca3af;--tw-shadow:var(--tw-shadow-colored)}.drop-shadow-\\[inherit\\]{--tw-drop-shadow:drop-shadow(inherit)}.drop-shadow-\\[inherit\\],.drop-shadow-md{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)}.drop-shadow-md{--tw-drop-shadow:drop-shadow(0 4px 3px rgba(0,0,0,.07)) drop-shadow(0 2px 2px rgba(0,0,0,.06))}.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-colors{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition{transition-duration:.15s;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)}.duration-500{transition-duration:.5s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.file\\:mr-4::file-selector-button{margin-right:1rem}.file\\:rounded-full::file-selector-button{border-radius:9999px}.file\\:border-0::file-selector-button{border-width:0}.file\\:bg-violet-50::file-selector-button{--tw-bg-opacity:1;background-color:rgb(245 243 255/var(--tw-bg-opacity))}.file\\:py-2::file-selector-button{padding-bottom:.5rem;padding-top:.5rem}.file\\:px-4::file-selector-button{padding-left:1rem;padding-right:1rem}.file\\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\\:font-semibold::file-selector-button{font-weight:600}.file\\:text-violet-700::file-selector-button{--tw-text-opacity:1;color:rgb(109 40 217/var(--tw-text-opacity))}.placeholder\\:text-slate-400::-moz-placeholder{--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity))}.placeholder\\:text-slate-400::placeholder{--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity))}.after\\:absolute:after{content:var(--tw-content);position:absolute}.after\\:top-0\\.5:after{content:var(--tw-content);top:.125rem}.after\\:left-\\[2px\\]:after{content:var(--tw-content);left:2px}.after\\:top-0:after{content:var(--tw-content);top:0}.after\\:h-5:after{content:var(--tw-content);height:1.25rem}.after\\:w-5:after{content:var(--tw-content);width:1.25rem}.after\\:rounded-full:after{border-radius:9999px;content:var(--tw-content)}.after\\:border:after{border-width:1px;content:var(--tw-content)}.after\\:border-gray-300:after{--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity));content:var(--tw-content)}.after\\:bg-white:after{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity));content:var(--tw-content)}.after\\:transition-all:after{content:var(--tw-content);transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.after\\:content-\\[\\'\\'\\]:after{--tw-content:\"\";content:var(--tw-content)}.invalid\\:border-pink-500:invalid{--tw-border-opacity:1;border-color:rgb(236 72 153/var(--tw-border-opacity))}.invalid\\:text-pink-600:invalid{--tw-text-opacity:1;color:rgb(219 39 119/var(--tw-text-opacity))}.hover\\:border-b-2:hover{border-bottom-width:2px}.hover\\:border-red-400:hover{--tw-border-opacity:1;border-color:rgb(248 113 113/var(--tw-border-opacity))}.hover\\:border-violet-400:hover{--tw-border-opacity:1;border-color:rgb(167 139 250/var(--tw-border-opacity))}.hover\\:border-orange-400:hover{--tw-border-opacity:1;border-color:rgb(251 146 60/var(--tw-border-opacity))}.hover\\:border-amber-400:hover{--tw-border-opacity:1;border-color:rgb(251 191 36/var(--tw-border-opacity))}.hover\\:border-emerald-400:hover{--tw-border-opacity:1;border-color:rgb(52 211 153/var(--tw-border-opacity))}.hover\\:border-sky-400:hover{--tw-border-opacity:1;border-color:rgb(56 189 248/var(--tw-border-opacity))}.hover\\:border-gray-200:hover{--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity))}.hover\\:border-slate-600:hover{--tw-border-opacity:1;border-color:rgb(71 85 105/var(--tw-border-opacity))}.hover\\:border-sky-600:hover{--tw-border-opacity:1;border-color:rgb(2 132 199/var(--tw-border-opacity))}.hover\\:border-green-600:hover{--tw-border-opacity:1;border-color:rgb(22 163 74/var(--tw-border-opacity))}.hover\\:border-primary-600:hover{--tw-border-opacity:1;border-color:rgb(58 209 242/var(--tw-border-opacity))}.hover\\:border-secondary-600:hover{--tw-border-opacity:1;border-color:rgb(34 42 57/var(--tw-border-opacity))}.hover\\:border-rose-600:hover{--tw-border-opacity:1;border-color:rgb(225 29 72/var(--tw-border-opacity))}.hover\\:border-emerald-600:hover{--tw-border-opacity:1;border-color:rgb(5 150 105/var(--tw-border-opacity))}.hover\\:border-sky-300\\/95:hover{border-color:rgba(125,211,252,.95)}.hover\\:border-blue-600:hover{--tw-border-opacity:1;border-color:rgb(1 95 159/var(--tw-border-opacity))}.hover\\:border-dark-blue-600:hover{--tw-border-opacity:1;border-color:rgb(10 15 46/var(--tw-border-opacity))}.hover\\:border-sky-100:hover{--tw-border-opacity:1;border-color:rgb(224 242 254/var(--tw-border-opacity))}.hover\\:border-b-sky-400:hover{--tw-border-opacity:1;border-bottom-color:rgb(56 189 248/var(--tw-border-opacity))}.hover\\:bg-red-200:hover{--tw-bg-opacity:1;background-color:rgb(254 202 202/var(--tw-bg-opacity))}.hover\\:bg-red-300:hover{--tw-bg-opacity:1;background-color:rgb(252 165 165/var(--tw-bg-opacity))}.hover\\:bg-violet-200:hover{--tw-bg-opacity:1;background-color:rgb(221 214 254/var(--tw-bg-opacity))}.hover\\:bg-violet-300:hover{--tw-bg-opacity:1;background-color:rgb(196 181 253/var(--tw-bg-opacity))}.hover\\:bg-orange-200:hover{--tw-bg-opacity:1;background-color:rgb(254 215 170/var(--tw-bg-opacity))}.hover\\:bg-orange-300:hover{--tw-bg-opacity:1;background-color:rgb(253 186 116/var(--tw-bg-opacity))}.hover\\:bg-amber-200:hover{--tw-bg-opacity:1;background-color:rgb(253 230 138/var(--tw-bg-opacity))}.hover\\:bg-amber-300:hover{--tw-bg-opacity:1;background-color:rgb(252 211 77/var(--tw-bg-opacity))}.hover\\:bg-emerald-200:hover{--tw-bg-opacity:1;background-color:rgb(167 243 208/var(--tw-bg-opacity))}.hover\\:bg-emerald-300:hover{--tw-bg-opacity:1;background-color:rgb(110 231 183/var(--tw-bg-opacity))}.hover\\:bg-sky-200:hover{--tw-bg-opacity:1;background-color:rgb(186 230 253/var(--tw-bg-opacity))}.hover\\:bg-sky-300:hover{--tw-bg-opacity:1;background-color:rgb(125 211 252/var(--tw-bg-opacity))}.hover\\:bg-gray-100:hover{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity))}.hover\\:bg-gray-200:hover{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity))}.hover\\:bg-slate-600:hover{--tw-bg-opacity:1;background-color:rgb(71 85 105/var(--tw-bg-opacity))}.hover\\:bg-sky-600:hover{--tw-bg-opacity:1;background-color:rgb(2 132 199/var(--tw-bg-opacity))}.hover\\:bg-green-600:hover{--tw-bg-opacity:1;background-color:rgb(22 163 74/var(--tw-bg-opacity))}.hover\\:bg-primary-600:hover{--tw-bg-opacity:1;background-color:rgb(58 209 242/var(--tw-bg-opacity))}.hover\\:bg-secondary-600:hover{--tw-bg-opacity:1;background-color:rgb(34 42 57/var(--tw-bg-opacity))}.hover\\:bg-rose-600:hover{--tw-bg-opacity:1;background-color:rgb(225 29 72/var(--tw-bg-opacity))}.hover\\:bg-emerald-600:hover{--tw-bg-opacity:1;background-color:rgb(5 150 105/var(--tw-bg-opacity))}.hover\\:bg-sky-400\\/95:hover{background-color:rgba(56,189,248,.95)}.hover\\:bg-blue-600:hover{--tw-bg-opacity:1;background-color:rgb(1 95 159/var(--tw-bg-opacity))}.hover\\:bg-dark-blue-600:hover{--tw-bg-opacity:1;background-color:rgb(10 15 46/var(--tw-bg-opacity))}.hover\\:bg-slate-100:hover{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity))}.hover\\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity))}.hover\\:bg-sky-50:hover{--tw-bg-opacity:1;background-color:rgb(240 249 255/var(--tw-bg-opacity))}.hover\\:bg-white:hover{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.hover\\:bg-sky-400:hover{--tw-bg-opacity:1;background-color:rgb(56 189 248/var(--tw-bg-opacity))}.hover\\:bg-slate-50:hover{--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity))}.hover\\:bg-gray-700:hover{--tw-bg-opacity:1;background-color:rgb(55 65 81/var(--tw-bg-opacity))}.hover\\:bg-gray-300:hover{--tw-bg-opacity:1;background-color:rgb(209 213 219/var(--tw-bg-opacity))}.hover\\:stroke-red-400:hover{stroke:#f87171}.hover\\:stroke-violet-400:hover{stroke:#a78bfa}.hover\\:stroke-orange-400:hover{stroke:#fb923c}.hover\\:stroke-amber-400:hover{stroke:#fbbf24}.hover\\:stroke-emerald-400:hover{stroke:#34d399}.hover\\:stroke-sky-400:hover{stroke:#38bdf8}.hover\\:stroke-gray-400:hover{stroke:#9ca3af}.hover\\:font-semibold:hover{font-weight:600}.hover\\:text-red-400:hover{--tw-text-opacity:1;color:rgb(248 113 113/var(--tw-text-opacity))}.hover\\:text-violet-400:hover{--tw-text-opacity:1;color:rgb(167 139 250/var(--tw-text-opacity))}.hover\\:text-orange-400:hover{--tw-text-opacity:1;color:rgb(251 146 60/var(--tw-text-opacity))}.hover\\:text-amber-400:hover{--tw-text-opacity:1;color:rgb(251 191 36/var(--tw-text-opacity))}.hover\\:text-emerald-400:hover{--tw-text-opacity:1;color:rgb(52 211 153/var(--tw-text-opacity))}.hover\\:text-sky-400:hover{--tw-text-opacity:1;color:rgb(56 189 248/var(--tw-text-opacity))}.hover\\:text-gray-200:hover{--tw-text-opacity:1;color:rgb(229 231 235/var(--tw-text-opacity))}.hover\\:text-slate-600:hover{--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity))}.hover\\:text-sky-600:hover{--tw-text-opacity:1;color:rgb(2 132 199/var(--tw-text-opacity))}.hover\\:text-green-600:hover{--tw-text-opacity:1;color:rgb(22 163 74/var(--tw-text-opacity))}.hover\\:text-primary-600:hover{--tw-text-opacity:1;color:rgb(58 209 242/var(--tw-text-opacity))}.hover\\:text-secondary-600:hover{--tw-text-opacity:1;color:rgb(34 42 57/var(--tw-text-opacity))}.hover\\:text-rose-600:hover{--tw-text-opacity:1;color:rgb(225 29 72/var(--tw-text-opacity))}.hover\\:text-emerald-600:hover{--tw-text-opacity:1;color:rgb(5 150 105/var(--tw-text-opacity))}.hover\\:text-blue-600:hover{--tw-text-opacity:1;color:rgb(1 95 159/var(--tw-text-opacity))}.hover\\:text-dark-blue-600:hover{--tw-text-opacity:1;color:rgb(10 15 46/var(--tw-text-opacity))}.hover\\:text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.hover\\:text-slate-400:hover{--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity))}.hover\\:text-slate-700:hover{--tw-text-opacity:1;color:rgb(51 65 85/var(--tw-text-opacity))}.hover\\:text-slate-500:hover{--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity))}.hover\\:text-gray-600:hover{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity))}.hover\\:text-sky-500:hover{--tw-text-opacity:1;color:rgb(14 165 233/var(--tw-text-opacity))}.hover\\:text-cyan-400:hover{--tw-text-opacity:1;color:rgb(34 211 238/var(--tw-text-opacity))}.hover\\:text-rose-400:hover{--tw-text-opacity:1;color:rgb(251 113 133/var(--tw-text-opacity))}.hover\\:text-green-500:hover{--tw-text-opacity:1;color:rgb(34 197 94/var(--tw-text-opacity))}.hover\\:text-zinc-500:hover{--tw-text-opacity:1;color:rgb(113 113 122/var(--tw-text-opacity))}.hover\\:underline:hover{text-decoration-line:underline}.hover\\:file\\:bg-violet-100::file-selector-button:hover{--tw-bg-opacity:1;background-color:rgb(237 233 254/var(--tw-bg-opacity))}.hover\\:placeholder\\:text-slate-600:hover::-moz-placeholder{--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity))}.hover\\:placeholder\\:text-slate-600:hover::placeholder{--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity))}.focus\\:border-slate-600:focus{--tw-border-opacity:1;border-color:rgb(71 85 105/var(--tw-border-opacity))}.focus\\:border-sky-600:focus{--tw-border-opacity:1;border-color:rgb(2 132 199/var(--tw-border-opacity))}.focus\\:border-green-600:focus{--tw-border-opacity:1;border-color:rgb(22 163 74/var(--tw-border-opacity))}.focus\\:border-primary-600:focus{--tw-border-opacity:1;border-color:rgb(58 209 242/var(--tw-border-opacity))}.focus\\:border-secondary-600:focus{--tw-border-opacity:1;border-color:rgb(34 42 57/var(--tw-border-opacity))}.focus\\:border-rose-600:focus{--tw-border-opacity:1;border-color:rgb(225 29 72/var(--tw-border-opacity))}.focus\\:border-emerald-600:focus{--tw-border-opacity:1;border-color:rgb(5 150 105/var(--tw-border-opacity))}.focus\\:border-sky-300\\/95:focus{border-color:rgba(125,211,252,.95)}.focus\\:border-blue-600:focus{--tw-border-opacity:1;border-color:rgb(1 95 159/var(--tw-border-opacity))}.focus\\:border-dark-blue-600:focus{--tw-border-opacity:1;border-color:rgb(10 15 46/var(--tw-border-opacity))}.focus\\:border-sky-500:focus{--tw-border-opacity:1;border-color:rgb(14 165 233/var(--tw-border-opacity))}.focus\\:border-sky-100:focus{--tw-border-opacity:1;border-color:rgb(224 242 254/var(--tw-border-opacity))}.focus\\:bg-slate-600:focus{--tw-bg-opacity:1;background-color:rgb(71 85 105/var(--tw-bg-opacity))}.focus\\:bg-sky-600:focus{--tw-bg-opacity:1;background-color:rgb(2 132 199/var(--tw-bg-opacity))}.focus\\:bg-green-600:focus{--tw-bg-opacity:1;background-color:rgb(22 163 74/var(--tw-bg-opacity))}.focus\\:bg-primary-600:focus{--tw-bg-opacity:1;background-color:rgb(58 209 242/var(--tw-bg-opacity))}.focus\\:bg-secondary-600:focus{--tw-bg-opacity:1;background-color:rgb(34 42 57/var(--tw-bg-opacity))}.focus\\:bg-rose-600:focus{--tw-bg-opacity:1;background-color:rgb(225 29 72/var(--tw-bg-opacity))}.focus\\:bg-emerald-600:focus{--tw-bg-opacity:1;background-color:rgb(5 150 105/var(--tw-bg-opacity))}.focus\\:bg-blue-600:focus{--tw-bg-opacity:1;background-color:rgb(1 95 159/var(--tw-bg-opacity))}.focus\\:bg-dark-blue-600:focus{--tw-bg-opacity:1;background-color:rgb(10 15 46/var(--tw-bg-opacity))}.focus\\:bg-gray-50:focus{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity))}.focus\\:text-slate-600:focus{--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity))}.focus\\:text-sky-600:focus{--tw-text-opacity:1;color:rgb(2 132 199/var(--tw-text-opacity))}.focus\\:text-green-600:focus{--tw-text-opacity:1;color:rgb(22 163 74/var(--tw-text-opacity))}.focus\\:text-primary-600:focus{--tw-text-opacity:1;color:rgb(58 209 242/var(--tw-text-opacity))}.focus\\:text-secondary-600:focus{--tw-text-opacity:1;color:rgb(34 42 57/var(--tw-text-opacity))}.focus\\:text-rose-600:focus{--tw-text-opacity:1;color:rgb(225 29 72/var(--tw-text-opacity))}.focus\\:text-emerald-600:focus{--tw-text-opacity:1;color:rgb(5 150 105/var(--tw-text-opacity))}.focus\\:text-blue-600:focus{--tw-text-opacity:1;color:rgb(1 95 159/var(--tw-text-opacity))}.focus\\:text-dark-blue-600:focus{--tw-text-opacity:1;color:rgb(10 15 46/var(--tw-text-opacity))}.focus\\:text-white:focus{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.focus\\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.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)}.focus\\:ring-sky-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(14 165 233/var(--tw-ring-opacity))}.focus\\:ring-sky-100:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(224 242 254/var(--tw-ring-opacity))}.focus\\:invalid\\:border-pink-500:invalid:focus{--tw-border-opacity:1;border-color:rgb(236 72 153/var(--tw-border-opacity))}.focus\\:invalid\\:ring-pink-500:invalid:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(236 72 153/var(--tw-ring-opacity))}.active\\:border-slate-600:active{--tw-border-opacity:1;border-color:rgb(71 85 105/var(--tw-border-opacity))}.active\\:border-sky-600:active{--tw-border-opacity:1;border-color:rgb(2 132 199/var(--tw-border-opacity))}.active\\:border-green-600:active{--tw-border-opacity:1;border-color:rgb(22 163 74/var(--tw-border-opacity))}.active\\:border-primary-600:active{--tw-border-opacity:1;border-color:rgb(58 209 242/var(--tw-border-opacity))}.active\\:border-secondary-600:active{--tw-border-opacity:1;border-color:rgb(34 42 57/var(--tw-border-opacity))}.active\\:border-rose-600:active{--tw-border-opacity:1;border-color:rgb(225 29 72/var(--tw-border-opacity))}.active\\:border-emerald-600:active{--tw-border-opacity:1;border-color:rgb(5 150 105/var(--tw-border-opacity))}.active\\:border-sky-300\\/95:active{border-color:rgba(125,211,252,.95)}.active\\:border-blue-600:active{--tw-border-opacity:1;border-color:rgb(1 95 159/var(--tw-border-opacity))}.active\\:border-dark-blue-600:active{--tw-border-opacity:1;border-color:rgb(10 15 46/var(--tw-border-opacity))}.active\\:bg-slate-600:active{--tw-bg-opacity:1;background-color:rgb(71 85 105/var(--tw-bg-opacity))}.active\\:bg-sky-600:active{--tw-bg-opacity:1;background-color:rgb(2 132 199/var(--tw-bg-opacity))}.active\\:bg-green-600:active{--tw-bg-opacity:1;background-color:rgb(22 163 74/var(--tw-bg-opacity))}.active\\:bg-primary-600:active{--tw-bg-opacity:1;background-color:rgb(58 209 242/var(--tw-bg-opacity))}.active\\:bg-secondary-600:active{--tw-bg-opacity:1;background-color:rgb(34 42 57/var(--tw-bg-opacity))}.active\\:bg-rose-600:active{--tw-bg-opacity:1;background-color:rgb(225 29 72/var(--tw-bg-opacity))}.active\\:bg-emerald-600:active{--tw-bg-opacity:1;background-color:rgb(5 150 105/var(--tw-bg-opacity))}.active\\:bg-blue-600:active{--tw-bg-opacity:1;background-color:rgb(1 95 159/var(--tw-bg-opacity))}.active\\:bg-dark-blue-600:active{--tw-bg-opacity:1;background-color:rgb(10 15 46/var(--tw-bg-opacity))}.active\\:bg-gray-50:active{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity))}.active\\:bg-white:active{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.active\\:text-slate-600:active{--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity))}.active\\:text-sky-600:active{--tw-text-opacity:1;color:rgb(2 132 199/var(--tw-text-opacity))}.active\\:text-green-600:active{--tw-text-opacity:1;color:rgb(22 163 74/var(--tw-text-opacity))}.active\\:text-primary-600:active{--tw-text-opacity:1;color:rgb(58 209 242/var(--tw-text-opacity))}.active\\:text-secondary-600:active{--tw-text-opacity:1;color:rgb(34 42 57/var(--tw-text-opacity))}.active\\:text-rose-600:active{--tw-text-opacity:1;color:rgb(225 29 72/var(--tw-text-opacity))}.active\\:text-emerald-600:active{--tw-text-opacity:1;color:rgb(5 150 105/var(--tw-text-opacity))}.active\\:text-blue-600:active{--tw-text-opacity:1;color:rgb(1 95 159/var(--tw-text-opacity))}.active\\:text-dark-blue-600:active{--tw-text-opacity:1;color:rgb(10 15 46/var(--tw-text-opacity))}.active\\:text-white:active{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.disabled\\:border-slate-200:disabled{--tw-border-opacity:1;border-color:rgb(226 232 240/var(--tw-border-opacity))}.disabled\\:bg-slate-50:disabled{--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity))}.disabled\\:text-slate-500:disabled{--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity))}.disabled\\:text-gray-600:disabled{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity))}.disabled\\:shadow-none:disabled{--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)}.peer:checked~.peer-checked\\:bg-blue-600{--tw-bg-opacity:1;background-color:rgb(1 95 159/var(--tw-bg-opacity))}.peer:checked~.peer-checked\\:after\\:translate-x-full:after{--tw-translate-x:100%;content:var(--tw-content);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.peer:checked~.peer-checked\\:after\\:border-white:after{--tw-border-opacity:1;border-color:rgb(255 255 255/var(--tw-border-opacity));content:var(--tw-content)}.peer:focus~.peer-focus\\:ring-4{--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(4px + 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)}.peer:focus~.peer-focus\\:ring-blue-300{--tw-ring-opacity:1;--tw-ring-color:rgb(147 197 253/var(--tw-ring-opacity))}@media (prefers-color-scheme:dark){.dark\\:border-gray-600{--tw-border-opacity:1;border-color:rgb(75 85 99/var(--tw-border-opacity))}.dark\\:bg-gray-700{--tw-bg-opacity:1;background-color:rgb(55 65 81/var(--tw-bg-opacity))}.peer:focus~.dark\\:peer-focus\\:ring-blue-800{--tw-ring-opacity:1;--tw-ring-color:rgb(30 64 175/var(--tw-ring-opacity))}}@media (min-width:640px){.sm\\:flex{display:flex}.sm\\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\\:place-content-between{place-content:space-between}}@media (min-width:768px){.md\\:invisible{visibility:hidden}.md\\:mr-6{margin-right:1.5rem}.md\\:flex{display:flex}.md\\:grid{display:grid}.md\\:hidden{display:none}.md\\:h-6{height:1.5rem}.md\\:h-\\[24rem\\]{height:24rem}.md\\:w-6{width:1.5rem}.md\\:w-\\[28rem\\]{width:28rem}.md\\:w-\\[40rem\\]{width:40rem}.md\\:w-\\[30rem\\]{width:30rem}.md\\:w-\\[20rem\\]{width:20rem}.md\\:w-\\[24rem\\]{width:24rem}.md\\:w-\\[16rem\\]{width:16rem}.md\\:w-\\[32rem\\]{width:32rem}.md\\:w-max{width:-moz-max-content;width:max-content}.md\\:w-\\[50rem\\]{width:50rem}.md\\:min-w-\\[30rem\\]{min-width:30rem}.md\\:max-w-\\[22rem\\]{max-width:22rem}.md\\:max-w-\\[30rem\\]{max-width:30rem}.md\\:max-w-\\[40rem\\]{max-width:40rem}.md\\:scale-\\[1\\.2\\]{--tw-scale-x:1.2;--tw-scale-y:1.2;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.md\\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\\:flex-row{flex-direction:row}.md\\:flex-col{flex-direction:column}.md\\:items-start{align-items:flex-start}.md\\:items-center{align-items:center}.md\\:justify-between{justify-content:space-between}.md\\:border-b{border-bottom-width:1px}.md\\:p-1\\.5{padding:.375rem}.md\\:p-1{padding:.25rem}.md\\:px-2{padding-left:.5rem;padding-right:.5rem}.md\\:text-sm{font-size:.875rem;line-height:1.25rem}.md\\:shadow-sm{--tw-shadow:0 1px 2px 0 rgba(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)}}@media (min-width:1024px){.lg\\:sticky{position:sticky}.lg\\:top-0{top:0}.lg\\:top-2{top:.5rem}.lg\\:right-3{right:.75rem}.lg\\:col-span-2{grid-column:span 2/span 2}.lg\\:mt-0{margin-top:0}.lg\\:inline-block{display:inline-block}.lg\\:flex{display:flex}.lg\\:h-screen{height:100vh}.lg\\:h-\\[22rem\\]{height:22rem}.lg\\:h-32{height:8rem}.lg\\:h-4{height:1rem}.lg\\:h-\\[18rem\\]{height:18rem}.lg\\:h-\\[5\\.5rem\\]{height:5.5rem}.lg\\:min-h-24{min-height:6rem}.lg\\:w-\\[230px\\]{width:230px}.lg\\:w-32{width:8rem}.lg\\:w-4{width:1rem}.lg\\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\\:gap-2{gap:.5rem}.lg\\:gap-1{gap:.25rem}.lg\\:gap-x-2{-moz-column-gap:.5rem;column-gap:.5rem}.lg\\:gap-y-3{row-gap:.75rem}.lg\\:self-start{align-self:flex-start}.lg\\:overflow-y-auto{overflow-y:auto}.lg\\:px-0{padding-left:0;padding-right:0}.lg\\:px-36{padding-left:9rem;padding-right:9rem}.lg\\:py-3{padding-bottom:.75rem;padding-top:.75rem}.lg\\:px-5{padding-left:1.25rem;padding-right:1.25rem}.lg\\:px-56{padding-left:14rem;padding-right:14rem}.lg\\:text-sm{font-size:.875rem;line-height:1.25rem}.lg\\:text-4xl{font-size:2.25rem;line-height:2.5rem}}";
|
|
36
|
+
var css_248z = "@font-face{font-family:ProximaNova;src:url(https://cdn.localcivics.io/fonts/ProximaNova.otf) format(\"opentype\")}@font-face{font-family:ProximaNova;font-weight:700;src:url(https://cdn.localcivics.io/fonts/ProximaNovaBold.otf) format(\"opentype\")}\n\n/*! tailwindcss v3.2.4 | MIT License | https://tailwindcss.com*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:\"\"}html{-webkit-text-size-adjust:100%;font-feature-settings:normal;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}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,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;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{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{color:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-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,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#9ca3af;opacity:1}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]{display:none}*,:after,:before{--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-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:rgba(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: }::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-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:rgba(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: }.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}}.sr-only{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.visible{visibility:visible}.invisible{visibility:hidden}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{left:0;right:0}.inset-0,.inset-y-0{bottom:0;top:0}.top-0{top:0}.bottom-0{bottom:0}.left-0{left:0}.right-0{right:0}.bottom-1\\/4{bottom:25%}.top-11{top:2.75rem}.top-4{top:1rem}.top-2{top:.5rem}.right-2{right:.5rem}.bottom-5{bottom:1.25rem}.right-5{right:1.25rem}.bottom-20{bottom:5rem}.right-14{right:3.5rem}.-right-0\\.5{right:-.125rem}.-top-0\\.5{top:-.125rem}.-right-0{right:0}.-top-0{top:0}.z-10{z-index:10}.z-30{z-index:30}.-z-30{z-index:-30}.-z-10{z-index:-10}.z-40{z-index:40}.col-span-2{grid-column:span 2/span 2}.col-span-1{grid-column:span 1/span 1}.col-span-3{grid-column:span 3/span 3}.m-auto{margin:auto}.m-3{margin:.75rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.my-auto{margin-bottom:auto;margin-top:auto}.my-5{margin-bottom:1.25rem;margin-top:1.25rem}.-ml-1{margin-left:-.25rem}.mt-2{margin-top:.5rem}.-mb-\\[3rem\\]{margin-bottom:-3rem}.mt-5{margin-top:1.25rem}.-mt-4{margin-top:-1rem}.mt-4{margin-top:1rem}.mt-2\\.5{margin-top:.625rem}.ml-2{margin-left:.5rem}.-mt-1\\.5{margin-top:-.375rem}.-mt-1{margin-top:-.25rem}.ml-1{margin-left:.25rem}.mt-1{margin-top:.25rem}.mb-2{margin-bottom:.5rem}.mb-5{margin-bottom:1.25rem}.-mt-6{margin-top:-1.5rem}.ml-auto{margin-left:auto}.ml-1\\.5{margin-left:.375rem}.mt-1\\.5{margin-top:.375rem}.mt-0\\.5{margin-top:.125rem}.mt-0{margin-top:0}.mt-auto{margin-top:auto}.ml-3{margin-left:.75rem}.mb-3{margin-bottom:.75rem}.mb-1\\.5{margin-bottom:.375rem}.mb-1{margin-bottom:.25rem}.-mb-7{margin-bottom:-1.75rem}.-ml-2{margin-left:-.5rem}.mb-4{margin-bottom:1rem}.ml-5{margin-left:1.25rem}.mr-1{margin-right:.25rem}.mt-3{margin-top:.75rem}.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}.contents{display:contents}.\\!contents{display:contents!important}.hidden{display:none}.h-1{height:.25rem}.h-3{height:.75rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-screen{height:100vh}.h-24{height:6rem}.h-9{height:2.25rem}.h-full{height:100%}.h-8{height:2rem}.h-16{height:4rem}.h-3\\.5{height:.875rem}.h-60{height:15rem}.h-\\[22rem\\]{height:22rem}.h-28{height:7rem}.h-\\[16rem\\]{height:16rem}.h-14{height:3.5rem}.h-\\[18rem\\]{height:18rem}.h-\\[12rem\\]{height:12rem}.h-\\[6rem\\]{height:6rem}.h-96{height:24rem}.h-max{height:-moz-max-content;height:max-content}.h-2{height:.5rem}.h-\\[18px\\]{height:18px}.h-12{height:3rem}.h-20{height:5rem}.h-10{height:2.5rem}.h-1\\.5{height:.375rem}.h-2\\.5{height:.625rem}.h-\\[30px\\]{height:30px}.h-\\[5px\\]{height:5px}.max-h-\\[24rem\\]{max-height:24rem}.max-h-\\[12rem\\]{max-height:12rem}.max-h-\\[20rem\\]{max-height:20rem}.max-h-\\[30rem\\]{max-height:30rem}.max-h-\\[18rem\\]{max-height:18rem}.max-h-96{max-height:24rem}.max-h-\\[25rem\\]{max-height:25rem}.max-h-\\[14rem\\]{max-height:14rem}.min-h-16{min-height:4rem}.min-h-96{min-height:24rem}.min-h-\\[20rem\\]{min-height:20rem}.min-h-5{min-height:1.25rem}.min-h-48{min-height:12rem}.min-h-\\[14rem\\]{min-height:14rem}.w-full{width:100%}.w-1{width:.25rem}.w-12{width:3rem}.w-3{width:.75rem}.w-4{width:1rem}.w-20{width:5rem}.w-5{width:1.25rem}.w-28{width:7rem}.w-6{width:1.5rem}.w-36{width:9rem}.w-7{width:1.75rem}.w-screen{width:100vw}.w-60{width:15rem}.w-9{width:2.25rem}.w-8{width:2rem}.w-\\[168px\\]{width:168px}.w-\\[17\\.7rem\\]{width:17.7rem}.w-\\[16\\.7rem\\]{width:16.7rem}.w-max{width:-moz-max-content;width:max-content}.w-14{width:3.5rem}.w-\\[14rem\\]{width:14rem}.w-16{width:4rem}.w-3\\.5{width:.875rem}.w-96{width:24rem}.w-\\[18rem\\]{width:18rem}.w-44{width:11rem}.w-\\[18px\\]{width:18px}.w-24{width:6rem}.w-40{width:10rem}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-\\[230px\\]{width:230px}.w-2\\.5{width:.625rem}.w-2{width:.5rem}.w-\\[30px\\]{width:30px}.w-\\[5px\\]{width:5px}.min-w-6{min-width:1.5rem}.min-w-64{min-width:16rem}.min-w-3{min-width:.75rem}.min-w-0{min-width:0}.min-w-\\[35rem\\]{min-width:35rem}.max-w-\\[64rem\\]{max-width:64rem}.max-w-xs{max-width:20rem}.max-w-\\[62\\.5rem\\]{max-width:62.5rem}.max-w-\\[12rem\\]{max-width:12rem}.max-w-full{max-width:100%}.max-w-\\[16rem\\]{max-width:16rem}.max-w-\\[18rem\\]{max-width:18rem}.max-w-\\[20rem\\]{max-width:20rem}.max-w-\\[40rem\\]{max-width:40rem}.max-w-\\[7rem\\]{max-width:7rem}.max-w-2xl{max-width:42rem}.max-w-\\[22rem\\]{max-width:22rem}.max-w-lg{max-width:32rem}.max-w-\\[25rem\\]{max-width:25rem}.max-w-md{max-width:28rem}.max-w-\\[50rem\\]{max-width:50rem}.max-w-3xl{max-width:48rem}.flex-1{flex:1 1 0%}.flex-auto{flex:1 1 auto}.flex-shrink-0,.shrink-0{flex-shrink:0}.grow{flex-grow:1}.grow-0{flex-grow:0}.-translate-y-3\\.5{--tw-translate-y:-0.875rem}.-translate-y-3,.-translate-y-3\\.5{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-3{--tw-translate-y:-0.75rem}.scale-\\[0\\.9\\]{--tw-scale-x:0.9;--tw-scale-y:0.9}.scale-\\[0\\.50\\],.scale-\\[0\\.9\\]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-\\[0\\.50\\]{--tw-scale-x:0.50;--tw-scale-y:0.50}.scale-\\[0\\.75\\]{--tw-scale-x:0.75;--tw-scale-y:0.75}.scale-\\[0\\.75\\],.scale-\\[1\\.25\\]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-\\[1\\.25\\]{--tw-scale-x:1.25;--tw-scale-y:1.25}.scale-\\[1\\.50\\]{--tw-scale-x:1.50;--tw-scale-y:1.50}.scale-\\[1\\.50\\],.scale-\\[1\\.75\\]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-\\[1\\.75\\]{--tw-scale-x:1.75;--tw-scale-y:1.75}.scale-\\[2\\.00\\]{--tw-scale-x:2.00;--tw-scale-y:2.00}.scale-\\[2\\.00\\],.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.resize-none{resize:none}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.auto-cols-max{grid-auto-columns:max-content}.grid-flow-col{grid-auto-flow:column}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.content-center{align-content:center}.content-start{align-content:flex-start}.items-start{align-items:flex-start}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-items-center{justify-items:center}.gap-2{gap:.5rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-1{gap:.25rem}.gap-2\\.5{gap:.625rem}.gap-1\\.5{gap:.375rem}.gap-8{gap:2rem}.gap-7{gap:1.75rem}.gap-3{gap:.75rem}.gap-5{gap:1.25rem}.gap-3\\.5{gap:.875rem}.gap-10{gap:2.5rem}.gap-0\\.5{gap:.125rem}.gap-0{gap:0}.gap-x-2{-moz-column-gap:.5rem;column-gap:.5rem}.gap-y-2{row-gap:.5rem}.gap-x-6{-moz-column-gap:1.5rem;column-gap:1.5rem}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-y-6{row-gap:1.5rem}.gap-x-8{-moz-column-gap:2rem;column-gap:2rem}.gap-y-4{row-gap:1rem}.gap-x-1{-moz-column-gap:.25rem;column-gap:.25rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-y-5{row-gap:1.25rem}.gap-y-12{row-gap:3rem}.gap-y-8{row-gap:2rem}.gap-y-3{row-gap:.75rem}.gap-y-1{row-gap:.25rem}.space-x-6>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(1.5rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(1.5rem*var(--tw-space-x-reverse))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(1rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(1rem*var(--tw-space-x-reverse))}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(.75rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(.75rem*var(--tw-space-x-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(2rem*var(--tw-space-y-reverse));margin-top:calc(2rem*(1 - var(--tw-space-y-reverse)))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.75rem*var(--tw-space-y-reverse));margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.5rem*var(--tw-space-y-reverse));margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1rem*var(--tw-space-y-reverse));margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)))}.space-y-1\\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.375rem*var(--tw-space-y-reverse));margin-top:calc(.375rem*(1 - var(--tw-space-y-reverse)))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.25rem*var(--tw-space-y-reverse));margin-top:calc(.25rem*(1 - var(--tw-space-y-reverse)))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1.5rem*var(--tw-space-y-reverse));margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)))}.justify-self-end{justify-self:end}.justify-self-center{justify-self:center}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-scroll{overflow-y:scroll}.overscroll-contain{overscroll-behavior:contain}.overscroll-none{overscroll-behavior:none}.truncate{overflow:hidden;text-overflow:ellipsis}.truncate,.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.rounded{border-radius:.25rem}.rounded-sm{border-radius:.125rem}.rounded-md{border-radius:.375rem}.rounded-full{border-radius:9999px}.rounded-2xl{border-radius:1rem}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.rounded-\\[10px\\]{border-radius:10px}.rounded-b-md{border-bottom-left-radius:.375rem;border-bottom-right-radius:.375rem}.border{border-width:1px}.border-2{border-width:2px}.border-4{border-width:4px}.border-x{border-left-width:1px;border-right-width:1px}.border-t{border-top-width:1px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-r{border-right-width:1px}.border-red-300{--tw-border-opacity:1;border-color:rgb(252 165 165/var(--tw-border-opacity))}.border-violet-300{--tw-border-opacity:1;border-color:rgb(196 181 253/var(--tw-border-opacity))}.border-orange-300{--tw-border-opacity:1;border-color:rgb(253 186 116/var(--tw-border-opacity))}.border-amber-300{--tw-border-opacity:1;border-color:rgb(252 211 77/var(--tw-border-opacity))}.border-emerald-300{--tw-border-opacity:1;border-color:rgb(110 231 183/var(--tw-border-opacity))}.border-sky-300{--tw-border-opacity:1;border-color:rgb(125 211 252/var(--tw-border-opacity))}.border-gray-100{--tw-border-opacity:1;border-color:rgb(243 244 246/var(--tw-border-opacity))}.border-slate-500{--tw-border-opacity:1;border-color:rgb(100 116 139/var(--tw-border-opacity))}.border-slate-600{--tw-border-opacity:1;border-color:rgb(71 85 105/var(--tw-border-opacity))}.border-sky-400{--tw-border-opacity:1;border-color:rgb(56 189 248/var(--tw-border-opacity))}.border-sky-600{--tw-border-opacity:1;border-color:rgb(2 132 199/var(--tw-border-opacity))}.border-green-600{--tw-border-opacity:1;border-color:rgb(22 163 74/var(--tw-border-opacity))}.border-green-400{--tw-border-opacity:1;border-color:rgb(74 222 128/var(--tw-border-opacity))}.border-primary-600{--tw-border-opacity:1;border-color:rgb(58 209 242/var(--tw-border-opacity))}.border-primary-400{--tw-border-opacity:1;border-color:rgb(97 218 245/var(--tw-border-opacity))}.border-secondary-600{--tw-border-opacity:1;border-color:rgb(34 42 57/var(--tw-border-opacity))}.border-secondary-400{--tw-border-opacity:1;border-color:rgb(78 85 97/var(--tw-border-opacity))}.border-rose-600{--tw-border-opacity:1;border-color:rgb(225 29 72/var(--tw-border-opacity))}.border-rose-400{--tw-border-opacity:1;border-color:rgb(251 113 133/var(--tw-border-opacity))}.border-emerald-600{--tw-border-opacity:1;border-color:rgb(5 150 105/var(--tw-border-opacity))}.border-emerald-400{--tw-border-opacity:1;border-color:rgb(52 211 153/var(--tw-border-opacity))}.border-sky-400\\/95{border-color:rgba(56,189,248,.95)}.border-slate-100{--tw-border-opacity:1;border-color:rgb(241 245 249/var(--tw-border-opacity))}.border-blue-600{--tw-border-opacity:1;border-color:rgb(1 95 159/var(--tw-border-opacity))}.border-blue-400{--tw-border-opacity:1;border-color:rgb(1 112 187/var(--tw-border-opacity))}.border-dark-blue-600{--tw-border-opacity:1;border-color:rgb(10 15 46/var(--tw-border-opacity))}.border-dark-blue-400{--tw-border-opacity:1;border-color:rgb(35 42 58/var(--tw-border-opacity))}.border-slate-200{--tw-border-opacity:1;border-color:rgb(226 232 240/var(--tw-border-opacity))}.border-sky-blue-400\\/30{border-color:rgba(59,208,242,.3)}.border-gray-200{--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity))}.border-slate-300{--tw-border-opacity:1;border-color:rgb(203 213 225/var(--tw-border-opacity))}.border-white{--tw-border-opacity:1;border-color:rgb(255 255 255/var(--tw-border-opacity))}.border-zinc-100{--tw-border-opacity:1;border-color:rgb(244 244 245/var(--tw-border-opacity))}.border-zinc-200{--tw-border-opacity:1;border-color:rgb(228 228 231/var(--tw-border-opacity))}.border-mint-400\\/30{border-color:rgba(30,226,175,.3)}.border-gold-400\\/30{border-color:rgba(255,212,77,.3)}.border-mint-400{--tw-border-opacity:1;border-color:rgb(30 226 175/var(--tw-border-opacity))}.border-gold-400\\/20{border-color:rgba(255,212,77,.2)}.border-sky-blue-400\\/20{border-color:rgba(59,208,242,.2)}.border-mint-400\\/20{border-color:rgba(30,226,175,.2)}.border-rose-300{--tw-border-opacity:1;border-color:rgb(253 164 175/var(--tw-border-opacity))}.border-transparent{border-color:transparent}.border-b-sky-400{--tw-border-opacity:1;border-bottom-color:rgb(56 189 248/var(--tw-border-opacity))}.bg-red-200{--tw-bg-opacity:1;background-color:rgb(254 202 202/var(--tw-bg-opacity))}.bg-red-300{--tw-bg-opacity:1;background-color:rgb(252 165 165/var(--tw-bg-opacity))}.bg-violet-200{--tw-bg-opacity:1;background-color:rgb(221 214 254/var(--tw-bg-opacity))}.bg-violet-300{--tw-bg-opacity:1;background-color:rgb(196 181 253/var(--tw-bg-opacity))}.bg-orange-200{--tw-bg-opacity:1;background-color:rgb(254 215 170/var(--tw-bg-opacity))}.bg-orange-300{--tw-bg-opacity:1;background-color:rgb(253 186 116/var(--tw-bg-opacity))}.bg-amber-200{--tw-bg-opacity:1;background-color:rgb(253 230 138/var(--tw-bg-opacity))}.bg-amber-300{--tw-bg-opacity:1;background-color:rgb(252 211 77/var(--tw-bg-opacity))}.bg-emerald-200{--tw-bg-opacity:1;background-color:rgb(167 243 208/var(--tw-bg-opacity))}.bg-emerald-300{--tw-bg-opacity:1;background-color:rgb(110 231 183/var(--tw-bg-opacity))}.bg-sky-200{--tw-bg-opacity:1;background-color:rgb(186 230 253/var(--tw-bg-opacity))}.bg-sky-300{--tw-bg-opacity:1;background-color:rgb(125 211 252/var(--tw-bg-opacity))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity))}.bg-slate-500{--tw-bg-opacity:1;background-color:rgb(100 116 139/var(--tw-bg-opacity))}.bg-slate-600{--tw-bg-opacity:1;background-color:rgb(71 85 105/var(--tw-bg-opacity))}.bg-sky-400{--tw-bg-opacity:1;background-color:rgb(56 189 248/var(--tw-bg-opacity))}.bg-sky-600{--tw-bg-opacity:1;background-color:rgb(2 132 199/var(--tw-bg-opacity))}.bg-green-600{--tw-bg-opacity:1;background-color:rgb(22 163 74/var(--tw-bg-opacity))}.bg-green-400{--tw-bg-opacity:1;background-color:rgb(74 222 128/var(--tw-bg-opacity))}.bg-primary-600{--tw-bg-opacity:1;background-color:rgb(58 209 242/var(--tw-bg-opacity))}.bg-primary-400{--tw-bg-opacity:1;background-color:rgb(97 218 245/var(--tw-bg-opacity))}.bg-secondary-600{--tw-bg-opacity:1;background-color:rgb(34 42 57/var(--tw-bg-opacity))}.bg-secondary-400{--tw-bg-opacity:1;background-color:rgb(78 85 97/var(--tw-bg-opacity))}.bg-rose-600{--tw-bg-opacity:1;background-color:rgb(225 29 72/var(--tw-bg-opacity))}.bg-rose-400{--tw-bg-opacity:1;background-color:rgb(251 113 133/var(--tw-bg-opacity))}.bg-emerald-600{--tw-bg-opacity:1;background-color:rgb(5 150 105/var(--tw-bg-opacity))}.bg-emerald-400{--tw-bg-opacity:1;background-color:rgb(52 211 153/var(--tw-bg-opacity))}.bg-sky-400\\/95{background-color:rgba(56,189,248,.95)}.bg-slate-50\\/95{background-color:rgba(248,250,252,.95)}.bg-blue-600{--tw-bg-opacity:1;background-color:rgb(1 95 159/var(--tw-bg-opacity))}.bg-blue-400{--tw-bg-opacity:1;background-color:rgb(1 112 187/var(--tw-bg-opacity))}.bg-dark-blue-600{--tw-bg-opacity:1;background-color:rgb(10 15 46/var(--tw-bg-opacity))}.bg-dark-blue-400{--tw-bg-opacity:1;background-color:rgb(35 42 58/var(--tw-bg-opacity))}.bg-slate-200{--tw-bg-opacity:1;background-color:rgb(226 232 240/var(--tw-bg-opacity))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.bg-gray-500\\/75{background-color:hsla(220,9%,46%,.75)}.bg-gray-300\\/75{background-color:rgba(209,213,219,.75)}.bg-sky-blue-200{--tw-bg-opacity:1;background-color:rgb(163 228 243/var(--tw-bg-opacity))}.bg-sky-blue-400{--tw-bg-opacity:1;background-color:rgb(59 208 242/var(--tw-bg-opacity))}.bg-mint-400\\/20{background-color:rgba(30,226,175,.2)}.bg-mint-400{--tw-bg-opacity:1;background-color:rgb(30 226 175/var(--tw-bg-opacity))}.bg-gold-400\\/20{background-color:rgba(255,212,77,.2)}.bg-gold-400{--tw-bg-opacity:1;background-color:rgb(255 212 77/var(--tw-bg-opacity))}.bg-sky-100{--tw-bg-opacity:1;background-color:rgb(224 242 254/var(--tw-bg-opacity))}.bg-gray-800\\/75{background-color:rgba(31,41,55,.75)}.bg-cyan-400{--tw-bg-opacity:1;background-color:rgb(34 211 238/var(--tw-bg-opacity))}.bg-sky-500{--tw-bg-opacity:1;background-color:rgb(14 165 233/var(--tw-bg-opacity))}.bg-slate-100{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity))}.bg-green-500{--tw-bg-opacity:1;background-color:rgb(34 197 94/var(--tw-bg-opacity))}.bg-zinc-100{--tw-bg-opacity:1;background-color:rgb(244 244 245/var(--tw-bg-opacity))}.bg-sky-50{--tw-bg-opacity:1;background-color:rgb(240 249 255/var(--tw-bg-opacity))}.bg-transparent{background-color:transparent}.bg-gray-600{--tw-bg-opacity:1;background-color:rgb(75 85 99/var(--tw-bg-opacity))}.bg-sky-blue-400\\/10{background-color:rgba(59,208,242,.1)}.bg-gray-200\\/75{background-color:rgba(229,231,235,.75)}.bg-gray-700{--tw-bg-opacity:1;background-color:rgb(55 65 81/var(--tw-bg-opacity))}.bg-slate-50{--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity))}.bg-sky-blue-400\\/25{background-color:rgba(59,208,242,.25)}.bg-mint-400\\/25{background-color:rgba(30,226,175,.25)}.bg-gold-400\\/25{background-color:rgba(255,212,77,.25)}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.bg-\\[linear-gradient\\(160deg\\2c \\#232A3A\\2c \\#3BD0F2\\)\\]{background-image:linear-gradient(160deg,#232a3a,#3bd0f2)}.bg-\\[linear-gradient\\(150deg\\2c \\#EEF9FF_0\\%\\2c \\#F0FEFA_40\\%\\2c \\#FFFBEA_100\\%\\)\\]{background-image:linear-gradient(150deg,#eef9ff,#f0fefa 40%,#fffbea)}.from-sky-blue-400{--tw-gradient-from:#3bd0f2;--tw-gradient-to:rgba(59,208,242,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-mint-400{--tw-gradient-from:#1ee2af;--tw-gradient-to:rgba(30,226,175,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-gold-400{--tw-gradient-from:#ffd44d;--tw-gradient-to:rgba(255,212,77,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-slate-200{--tw-gradient-from:#e2e8f0;--tw-gradient-to:rgba(226,232,240,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.via-mint-400{--tw-gradient-to:rgba(30,226,175,0);--tw-gradient-stops:var(--tw-gradient-from),#1ee2af,var(--tw-gradient-to)}.to-mint-400{--tw-gradient-to:#1ee2af}.to-gold-400{--tw-gradient-to:#ffd44d}.to-sky-blue-400{--tw-gradient-to:#3bd0f2}.to-slate-200{--tw-gradient-to:#e2e8f0}.fill-red-300{fill:#fca5a5}.fill-violet-300{fill:#c4b5fd}.fill-orange-300{fill:#fdba74}.fill-amber-300{fill:#fcd34d}.fill-emerald-300{fill:#6ee7b7}.fill-sky-300{fill:#7dd3fc}.fill-gray-300{fill:#d1d5db}.fill-white{fill:#fff}.fill-gray-600{fill:#4b5563}.fill-current{fill:currentColor}.fill-slate-600{fill:#475569}.stroke-red-300{stroke:#fca5a5}.stroke-violet-300{stroke:#c4b5fd}.stroke-orange-300{stroke:#fdba74}.stroke-amber-300{stroke:#fcd34d}.stroke-emerald-300{stroke:#6ee7b7}.stroke-sky-300{stroke:#7dd3fc}.stroke-gray-300{stroke:#d1d5db}.stroke-gray-600{stroke:#4b5563}.stroke-current{stroke:currentColor}.stroke-slate-600{stroke:#475569}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.p-2{padding:.5rem}.p-1{padding:.25rem}.p-8{padding:2rem}.p-5{padding:1.25rem}.p-3\\.5{padding:.875rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-2\\.5{padding:.625rem}.px-2{padding-left:.5rem;padding-right:.5rem}.py-0\\.5{padding-bottom:.125rem;padding-top:.125rem}.px-3{padding-left:.75rem;padding-right:.75rem}.py-0{padding-bottom:0;padding-top:0}.py-1{padding-bottom:.25rem;padding-top:.25rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.py-3{padding-bottom:.75rem;padding-top:.75rem}.px-8{padding-left:2rem;padding-right:2rem}.py-2\\.5{padding-bottom:.625rem;padding-top:.625rem}.px-10{padding-left:2.5rem;padding-right:2.5rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.px-4{padding-left:1rem;padding-right:1rem}.py-8{padding-bottom:2rem;padding-top:2rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-5{padding-bottom:1.25rem;padding-top:1.25rem}.px-12{padding-left:3rem;padding-right:3rem}.py-4{padding-bottom:1rem;padding-top:1rem}.py-1\\.5{padding-bottom:.375rem;padding-top:.375rem}.px-1{padding-left:.25rem;padding-right:.25rem}.py-3\\.5{padding-bottom:.875rem;padding-top:.875rem}.px-3\\.5{padding-left:.875rem;padding-right:.875rem}.px-7{padding-left:1.75rem;padding-right:1.75rem}.px-16{padding-left:4rem;padding-right:4rem}.pt-2{padding-top:.5rem}.pt-6{padding-top:1.5rem}.pr-7{padding-right:1.75rem}.pt-16{padding-top:4rem}.pl-2{padding-left:.5rem}.pb-2{padding-bottom:.5rem}.pb-4{padding-bottom:1rem}.pt-5{padding-top:1.25rem}.pb-5{padding-bottom:1.25rem}.pt-1{padding-top:.25rem}.pt-3\\.5{padding-top:.875rem}.pt-3{padding-top:.75rem}.pb-12{padding-bottom:3rem}.pt-4{padding-top:1rem}.pb-24{padding-bottom:6rem}.pb-3{padding-bottom:.75rem}.pb-8{padding-bottom:2rem}.text-left{text-align:left}.text-center{text-align:center}.text-start{text-align:start}.align-top{vertical-align:top}.align-middle{vertical-align:middle}.font-proxima{font-family:ProximaNova}.text-sm{font-size:.875rem;line-height:1.25rem}.text-\\[0\\.5rem\\]{font-size:.5rem}.text-xs{font-size:.75rem;line-height:1rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-\\[3rem\\]{font-size:3rem}.text-\\[2rem\\]{font-size:2rem}.text-\\[10\\.5px\\]{font-size:10.5px}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-\\[11px\\]{font-size:11px}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\\[11\\.5px\\]{font-size:11.5px}.text-base{font-size:1rem;line-height:1.5rem}.text-\\[10px\\]{font-size:10px}.text-\\[9px\\]{font-size:9px}.font-semibold{font-weight:600}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-medium{font-weight:500}.font-black{font-weight:900}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.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)}.leading-6{line-height:1.5rem}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-tight{line-height:1.25}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.text-red-300{--tw-text-opacity:1;color:rgb(252 165 165/var(--tw-text-opacity))}.text-violet-300{--tw-text-opacity:1;color:rgb(196 181 253/var(--tw-text-opacity))}.text-orange-300{--tw-text-opacity:1;color:rgb(253 186 116/var(--tw-text-opacity))}.text-amber-300{--tw-text-opacity:1;color:rgb(252 211 77/var(--tw-text-opacity))}.text-emerald-300{--tw-text-opacity:1;color:rgb(110 231 183/var(--tw-text-opacity))}.text-sky-300{--tw-text-opacity:1;color:rgb(125 211 252/var(--tw-text-opacity))}.text-gray-100{--tw-text-opacity:1;color:rgb(243 244 246/var(--tw-text-opacity))}.text-blue-500{--tw-text-opacity:1;color:rgb(59 130 246/var(--tw-text-opacity))}.text-slate-300{--tw-text-opacity:1;color:rgb(203 213 225/var(--tw-text-opacity))}.text-slate-500{--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity))}.text-slate-600{--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity))}.text-sky-400{--tw-text-opacity:1;color:rgb(56 189 248/var(--tw-text-opacity))}.text-sky-600{--tw-text-opacity:1;color:rgb(2 132 199/var(--tw-text-opacity))}.text-green-600{--tw-text-opacity:1;color:rgb(22 163 74/var(--tw-text-opacity))}.text-green-400{--tw-text-opacity:1;color:rgb(74 222 128/var(--tw-text-opacity))}.text-primary-600{--tw-text-opacity:1;color:rgb(58 209 242/var(--tw-text-opacity))}.text-primary-400{--tw-text-opacity:1;color:rgb(97 218 245/var(--tw-text-opacity))}.text-secondary-600{--tw-text-opacity:1;color:rgb(34 42 57/var(--tw-text-opacity))}.text-secondary-400{--tw-text-opacity:1;color:rgb(78 85 97/var(--tw-text-opacity))}.text-rose-600{--tw-text-opacity:1;color:rgb(225 29 72/var(--tw-text-opacity))}.text-rose-400{--tw-text-opacity:1;color:rgb(251 113 133/var(--tw-text-opacity))}.text-emerald-600{--tw-text-opacity:1;color:rgb(5 150 105/var(--tw-text-opacity))}.text-emerald-400{--tw-text-opacity:1;color:rgb(52 211 153/var(--tw-text-opacity))}.text-blue-600{--tw-text-opacity:1;color:rgb(1 95 159/var(--tw-text-opacity))}.text-blue-400{--tw-text-opacity:1;color:rgb(1 112 187/var(--tw-text-opacity))}.text-dark-blue-600{--tw-text-opacity:1;color:rgb(10 15 46/var(--tw-text-opacity))}.text-dark-blue-400{--tw-text-opacity:1;color:rgb(35 42 58/var(--tw-text-opacity))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.text-slate-400{--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity))}.text-green-500{--tw-text-opacity:1;color:rgb(34 197 94/var(--tw-text-opacity))}.text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity))}.text-sky-200{--tw-text-opacity:1;color:rgb(186 230 253/var(--tw-text-opacity))}.text-slate-200{--tw-text-opacity:1;color:rgb(226 232 240/var(--tw-text-opacity))}.text-sky-500{--tw-text-opacity:1;color:rgb(14 165 233/var(--tw-text-opacity))}.text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity))}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity))}.text-cyan-100{--tw-text-opacity:1;color:rgb(207 250 254/var(--tw-text-opacity))}.text-gray-300{--tw-text-opacity:1;color:rgb(209 213 219/var(--tw-text-opacity))}.text-zinc-600{--tw-text-opacity:1;color:rgb(82 82 91/var(--tw-text-opacity))}.text-zinc-400{--tw-text-opacity:1;color:rgb(161 161 170/var(--tw-text-opacity))}.text-zinc-500{--tw-text-opacity:1;color:rgb(113 113 122/var(--tw-text-opacity))}.text-zinc-300{--tw-text-opacity:1;color:rgb(212 212 216/var(--tw-text-opacity))}.text-sky-blue-400{--tw-text-opacity:1;color:rgb(59 208 242/var(--tw-text-opacity))}.text-mint-400{--tw-text-opacity:1;color:rgb(30 226 175/var(--tw-text-opacity))}.text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity))}.text-gold-400{--tw-text-opacity:1;color:rgb(255 212 77/var(--tw-text-opacity))}.text-rose-300{--tw-text-opacity:1;color:rgb(253 164 175/var(--tw-text-opacity))}.text-slate-700{--tw-text-opacity:1;color:rgb(51 65 85/var(--tw-text-opacity))}.underline{text-decoration-line:underline}.placeholder-slate-400::-moz-placeholder{--tw-placeholder-opacity:1;color:rgb(148 163 184/var(--tw-placeholder-opacity))}.placeholder-slate-400::placeholder{--tw-placeholder-opacity:1;color:rgb(148 163 184/var(--tw-placeholder-opacity))}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-40{opacity:.4}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-md{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 rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(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)}.shadow-\\[0_4px_20px_rgba\\(59\\2c 208\\2c 242\\2c 0\\.12\\)\\]{--tw-shadow:0 4px 20px rgba(59,208,242,.12);--tw-shadow-colored:0 4px 20px 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-\\[0_4px_20px_rgba\\(59\\2c 208\\2c 242\\2c 0\\.10\\)\\]{--tw-shadow:0 4px 20px rgba(59,208,242,.1);--tw-shadow-colored:0 4px 20px 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-\\[0_4px_20px_rgba\\(30\\2c 226\\2c 175\\2c 0\\.10\\)\\]{--tw-shadow:0 4px 20px rgba(30,226,175,.1);--tw-shadow-colored:0 4px 20px 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-\\[0_4px_20px_rgba\\(255\\2c 212\\2c 77\\2c 0\\.10\\)\\]{--tw-shadow:0 4px 20px rgba(255,212,77,.1);--tw-shadow-colored:0 4px 20px 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-\\[0_4px_20px_rgba\\(255\\2c 212\\2c 77\\2c 0\\.12\\)\\]{--tw-shadow:0 4px 20px rgba(255,212,77,.12);--tw-shadow-colored:0 4px 20px 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-\\[0_4px_24px_rgba\\(59\\2c 208\\2c 242\\2c 0\\.10\\)\\]{--tw-shadow:0 4px 24px rgba(59,208,242,.1);--tw-shadow-colored:0 4px 24px var(--tw-shadow-color)}.shadow-\\[0_4px_24px_rgba\\(59\\2c 208\\2c 242\\2c 0\\.10\\)\\],.shadow-lg{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 rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-\\[0_0_8px_rgba\\(30\\2c 226\\2c 175\\2c 0\\.6\\)\\]{--tw-shadow:0 0 8px rgba(30,226,175,.6);--tw-shadow-colored:0 0 8px 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-\\[0_2px_12px_rgba\\(59\\2c 208\\2c 242\\2c 0\\.12\\)\\]{--tw-shadow:0 2px 12px rgba(59,208,242,.12);--tw-shadow-colored:0 2px 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)}.shadow-\\[0_2px_12px_rgba\\(30\\2c 226\\2c 175\\2c 0\\.12\\)\\]{--tw-shadow:0 2px 12px rgba(30,226,175,.12);--tw-shadow-colored:0 2px 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)}.shadow-\\[0_2px_12px_rgba\\(255\\2c 212\\2c 77\\2c 0\\.12\\)\\]{--tw-shadow:0 2px 12px rgba(255,212,77,.12);--tw-shadow-colored:0 2px 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)}.shadow-\\[0_2px_10px_rgba\\(30\\2c 226\\2c 175\\2c 0\\.15\\)\\]{--tw-shadow:0 2px 10px rgba(30,226,175,.15);--tw-shadow-colored:0 2px 10px 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-\\[0_0_8px_rgba\\(59\\2c 208\\2c 242\\2c 0\\.5\\)\\]{--tw-shadow:0 0 8px rgba(59,208,242,.5);--tw-shadow-colored:0 0 8px 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-\\[0_0_8px_rgba\\(30\\2c 226\\2c 175\\2c 0\\.5\\)\\]{--tw-shadow:0 0 8px rgba(30,226,175,.5);--tw-shadow-colored:0 0 8px 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-\\[0_0_8px_rgba\\(255\\2c 212\\2c 77\\2c 0\\.5\\)\\]{--tw-shadow:0 0 8px rgba(255,212,77,.5);--tw-shadow-colored:0 0 8px 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-\\[0_2px_10px_rgba\\(59\\2c 208\\2c 242\\2c 0\\.08\\)\\]{--tw-shadow:0 2px 10px rgba(59,208,242,.08);--tw-shadow-colored:0 2px 10px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.drop-shadow-\\[inherit\\]{--tw-drop-shadow:drop-shadow(inherit)}.drop-shadow-\\[inherit\\],.drop-shadow-md{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)}.drop-shadow-md{--tw-drop-shadow:drop-shadow(0 4px 3px rgba(0,0,0,.07)) drop-shadow(0 2px 2px rgba(0,0,0,.06))}.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-colors{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition{transition-duration:.15s;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)}.duration-500{transition-duration:.5s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.\\[background-image\\:radial-gradient\\(circle\\2c rgba\\(255\\2c 255\\2c 255\\2c 0\\.15\\)_1px\\2c transparent_1px\\)\\]{background-image:radial-gradient(circle,hsla(0,0%,100%,.15) 1px,transparent 0)}.\\[background-size\\:20px_20px\\]{background-size:20px 20px}.file\\:mr-4::file-selector-button{margin-right:1rem}.file\\:rounded-full::file-selector-button{border-radius:9999px}.file\\:border-0::file-selector-button{border-width:0}.file\\:bg-violet-50::file-selector-button{--tw-bg-opacity:1;background-color:rgb(245 243 255/var(--tw-bg-opacity))}.file\\:py-2::file-selector-button{padding-bottom:.5rem;padding-top:.5rem}.file\\:px-4::file-selector-button{padding-left:1rem;padding-right:1rem}.file\\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\\:font-semibold::file-selector-button{font-weight:600}.file\\:text-violet-700::file-selector-button{--tw-text-opacity:1;color:rgb(109 40 217/var(--tw-text-opacity))}.placeholder\\:text-slate-400::-moz-placeholder{--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity))}.placeholder\\:text-slate-400::placeholder{--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity))}.after\\:absolute:after{content:var(--tw-content);position:absolute}.after\\:left-0\\.5:after{content:var(--tw-content);left:.125rem}.after\\:top-0\\.5:after{content:var(--tw-content);top:.125rem}.after\\:left-0:after{content:var(--tw-content);left:0}.after\\:top-0:after{content:var(--tw-content);top:0}.after\\:left-\\[2px\\]:after{content:var(--tw-content);left:2px}.after\\:h-2\\.5:after{content:var(--tw-content);height:.625rem}.after\\:h-2:after{content:var(--tw-content);height:.5rem}.after\\:h-5:after{content:var(--tw-content);height:1.25rem}.after\\:w-2\\.5:after{content:var(--tw-content);width:.625rem}.after\\:w-2:after{content:var(--tw-content);width:.5rem}.after\\:w-5:after{content:var(--tw-content);width:1.25rem}.after\\:rounded-full:after{border-radius:9999px;content:var(--tw-content)}.after\\:border:after{border-width:1px;content:var(--tw-content)}.after\\:border-gray-300:after{--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity));content:var(--tw-content)}.after\\:bg-white:after{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity));content:var(--tw-content)}.after\\:shadow-sm:after{--tw-shadow:0 1px 2px 0 rgba(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);content:var(--tw-content)}.after\\:transition-all:after{content:var(--tw-content);transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.after\\:content-\\[\\'\\'\\]:after{--tw-content:\"\";content:var(--tw-content)}.last\\:border-b-0:last-child{border-bottom-width:0}.invalid\\:border-pink-500:invalid{--tw-border-opacity:1;border-color:rgb(236 72 153/var(--tw-border-opacity))}.invalid\\:text-pink-600:invalid{--tw-text-opacity:1;color:rgb(219 39 119/var(--tw-text-opacity))}.hover\\:border-b-2:hover{border-bottom-width:2px}.hover\\:border-red-400:hover{--tw-border-opacity:1;border-color:rgb(248 113 113/var(--tw-border-opacity))}.hover\\:border-violet-400:hover{--tw-border-opacity:1;border-color:rgb(167 139 250/var(--tw-border-opacity))}.hover\\:border-orange-400:hover{--tw-border-opacity:1;border-color:rgb(251 146 60/var(--tw-border-opacity))}.hover\\:border-amber-400:hover{--tw-border-opacity:1;border-color:rgb(251 191 36/var(--tw-border-opacity))}.hover\\:border-emerald-400:hover{--tw-border-opacity:1;border-color:rgb(52 211 153/var(--tw-border-opacity))}.hover\\:border-sky-400:hover{--tw-border-opacity:1;border-color:rgb(56 189 248/var(--tw-border-opacity))}.hover\\:border-gray-200:hover{--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity))}.hover\\:border-slate-600:hover{--tw-border-opacity:1;border-color:rgb(71 85 105/var(--tw-border-opacity))}.hover\\:border-sky-600:hover{--tw-border-opacity:1;border-color:rgb(2 132 199/var(--tw-border-opacity))}.hover\\:border-green-600:hover{--tw-border-opacity:1;border-color:rgb(22 163 74/var(--tw-border-opacity))}.hover\\:border-primary-600:hover{--tw-border-opacity:1;border-color:rgb(58 209 242/var(--tw-border-opacity))}.hover\\:border-secondary-600:hover{--tw-border-opacity:1;border-color:rgb(34 42 57/var(--tw-border-opacity))}.hover\\:border-rose-600:hover{--tw-border-opacity:1;border-color:rgb(225 29 72/var(--tw-border-opacity))}.hover\\:border-emerald-600:hover{--tw-border-opacity:1;border-color:rgb(5 150 105/var(--tw-border-opacity))}.hover\\:border-sky-300\\/95:hover{border-color:rgba(125,211,252,.95)}.hover\\:border-blue-600:hover{--tw-border-opacity:1;border-color:rgb(1 95 159/var(--tw-border-opacity))}.hover\\:border-dark-blue-600:hover{--tw-border-opacity:1;border-color:rgb(10 15 46/var(--tw-border-opacity))}.hover\\:border-sky-100:hover{--tw-border-opacity:1;border-color:rgb(224 242 254/var(--tw-border-opacity))}.hover\\:border-b-sky-400:hover{--tw-border-opacity:1;border-bottom-color:rgb(56 189 248/var(--tw-border-opacity))}.hover\\:bg-red-200:hover{--tw-bg-opacity:1;background-color:rgb(254 202 202/var(--tw-bg-opacity))}.hover\\:bg-red-300:hover{--tw-bg-opacity:1;background-color:rgb(252 165 165/var(--tw-bg-opacity))}.hover\\:bg-violet-200:hover{--tw-bg-opacity:1;background-color:rgb(221 214 254/var(--tw-bg-opacity))}.hover\\:bg-violet-300:hover{--tw-bg-opacity:1;background-color:rgb(196 181 253/var(--tw-bg-opacity))}.hover\\:bg-orange-200:hover{--tw-bg-opacity:1;background-color:rgb(254 215 170/var(--tw-bg-opacity))}.hover\\:bg-orange-300:hover{--tw-bg-opacity:1;background-color:rgb(253 186 116/var(--tw-bg-opacity))}.hover\\:bg-amber-200:hover{--tw-bg-opacity:1;background-color:rgb(253 230 138/var(--tw-bg-opacity))}.hover\\:bg-amber-300:hover{--tw-bg-opacity:1;background-color:rgb(252 211 77/var(--tw-bg-opacity))}.hover\\:bg-emerald-200:hover{--tw-bg-opacity:1;background-color:rgb(167 243 208/var(--tw-bg-opacity))}.hover\\:bg-emerald-300:hover{--tw-bg-opacity:1;background-color:rgb(110 231 183/var(--tw-bg-opacity))}.hover\\:bg-sky-200:hover{--tw-bg-opacity:1;background-color:rgb(186 230 253/var(--tw-bg-opacity))}.hover\\:bg-sky-300:hover{--tw-bg-opacity:1;background-color:rgb(125 211 252/var(--tw-bg-opacity))}.hover\\:bg-gray-100:hover{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity))}.hover\\:bg-gray-200:hover{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity))}.hover\\:bg-slate-600:hover{--tw-bg-opacity:1;background-color:rgb(71 85 105/var(--tw-bg-opacity))}.hover\\:bg-sky-600:hover{--tw-bg-opacity:1;background-color:rgb(2 132 199/var(--tw-bg-opacity))}.hover\\:bg-green-600:hover{--tw-bg-opacity:1;background-color:rgb(22 163 74/var(--tw-bg-opacity))}.hover\\:bg-primary-600:hover{--tw-bg-opacity:1;background-color:rgb(58 209 242/var(--tw-bg-opacity))}.hover\\:bg-secondary-600:hover{--tw-bg-opacity:1;background-color:rgb(34 42 57/var(--tw-bg-opacity))}.hover\\:bg-rose-600:hover{--tw-bg-opacity:1;background-color:rgb(225 29 72/var(--tw-bg-opacity))}.hover\\:bg-emerald-600:hover{--tw-bg-opacity:1;background-color:rgb(5 150 105/var(--tw-bg-opacity))}.hover\\:bg-sky-400\\/95:hover{background-color:rgba(56,189,248,.95)}.hover\\:bg-blue-600:hover{--tw-bg-opacity:1;background-color:rgb(1 95 159/var(--tw-bg-opacity))}.hover\\:bg-dark-blue-600:hover{--tw-bg-opacity:1;background-color:rgb(10 15 46/var(--tw-bg-opacity))}.hover\\:bg-slate-100:hover{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity))}.hover\\:bg-mint-400\\/90:hover{background-color:rgba(30,226,175,.9)}.hover\\:bg-sky-blue-400\\/90:hover{background-color:rgba(59,208,242,.9)}.hover\\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity))}.hover\\:bg-sky-50:hover{--tw-bg-opacity:1;background-color:rgb(240 249 255/var(--tw-bg-opacity))}.hover\\:bg-white:hover{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.hover\\:bg-sky-400:hover{--tw-bg-opacity:1;background-color:rgb(56 189 248/var(--tw-bg-opacity))}.hover\\:bg-slate-50:hover{--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity))}.hover\\:bg-dark-blue-400\\/90:hover{background-color:rgba(35,42,58,.9)}.hover\\:bg-gold-400\\/90:hover{background-color:rgba(255,212,77,.9)}.hover\\:bg-gray-700:hover{--tw-bg-opacity:1;background-color:rgb(55 65 81/var(--tw-bg-opacity))}.hover\\:bg-slate-200:hover{--tw-bg-opacity:1;background-color:rgb(226 232 240/var(--tw-bg-opacity))}.hover\\:bg-gray-300:hover{--tw-bg-opacity:1;background-color:rgb(209 213 219/var(--tw-bg-opacity))}.hover\\:stroke-red-400:hover{stroke:#f87171}.hover\\:stroke-violet-400:hover{stroke:#a78bfa}.hover\\:stroke-orange-400:hover{stroke:#fb923c}.hover\\:stroke-amber-400:hover{stroke:#fbbf24}.hover\\:stroke-emerald-400:hover{stroke:#34d399}.hover\\:stroke-sky-400:hover{stroke:#38bdf8}.hover\\:stroke-gray-400:hover{stroke:#9ca3af}.hover\\:font-semibold:hover{font-weight:600}.hover\\:text-red-400:hover{--tw-text-opacity:1;color:rgb(248 113 113/var(--tw-text-opacity))}.hover\\:text-violet-400:hover{--tw-text-opacity:1;color:rgb(167 139 250/var(--tw-text-opacity))}.hover\\:text-orange-400:hover{--tw-text-opacity:1;color:rgb(251 146 60/var(--tw-text-opacity))}.hover\\:text-amber-400:hover{--tw-text-opacity:1;color:rgb(251 191 36/var(--tw-text-opacity))}.hover\\:text-emerald-400:hover{--tw-text-opacity:1;color:rgb(52 211 153/var(--tw-text-opacity))}.hover\\:text-sky-400:hover{--tw-text-opacity:1;color:rgb(56 189 248/var(--tw-text-opacity))}.hover\\:text-gray-200:hover{--tw-text-opacity:1;color:rgb(229 231 235/var(--tw-text-opacity))}.hover\\:text-slate-600:hover{--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity))}.hover\\:text-sky-600:hover{--tw-text-opacity:1;color:rgb(2 132 199/var(--tw-text-opacity))}.hover\\:text-green-600:hover{--tw-text-opacity:1;color:rgb(22 163 74/var(--tw-text-opacity))}.hover\\:text-primary-600:hover{--tw-text-opacity:1;color:rgb(58 209 242/var(--tw-text-opacity))}.hover\\:text-secondary-600:hover{--tw-text-opacity:1;color:rgb(34 42 57/var(--tw-text-opacity))}.hover\\:text-rose-600:hover{--tw-text-opacity:1;color:rgb(225 29 72/var(--tw-text-opacity))}.hover\\:text-emerald-600:hover{--tw-text-opacity:1;color:rgb(5 150 105/var(--tw-text-opacity))}.hover\\:text-blue-600:hover{--tw-text-opacity:1;color:rgb(1 95 159/var(--tw-text-opacity))}.hover\\:text-dark-blue-600:hover{--tw-text-opacity:1;color:rgb(10 15 46/var(--tw-text-opacity))}.hover\\:text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.hover\\:text-slate-400:hover{--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity))}.hover\\:text-slate-700:hover{--tw-text-opacity:1;color:rgb(51 65 85/var(--tw-text-opacity))}.hover\\:text-slate-500:hover{--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity))}.hover\\:text-gray-600:hover{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity))}.hover\\:text-sky-500:hover{--tw-text-opacity:1;color:rgb(14 165 233/var(--tw-text-opacity))}.hover\\:text-cyan-400:hover{--tw-text-opacity:1;color:rgb(34 211 238/var(--tw-text-opacity))}.hover\\:text-rose-400:hover{--tw-text-opacity:1;color:rgb(251 113 133/var(--tw-text-opacity))}.hover\\:text-green-500:hover{--tw-text-opacity:1;color:rgb(34 197 94/var(--tw-text-opacity))}.hover\\:text-zinc-500:hover{--tw-text-opacity:1;color:rgb(113 113 122/var(--tw-text-opacity))}.hover\\:text-sky-blue-400:hover{--tw-text-opacity:1;color:rgb(59 208 242/var(--tw-text-opacity))}.hover\\:underline:hover{text-decoration-line:underline}.hover\\:file\\:bg-violet-100::file-selector-button:hover{--tw-bg-opacity:1;background-color:rgb(237 233 254/var(--tw-bg-opacity))}.hover\\:placeholder\\:text-slate-600:hover::-moz-placeholder{--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity))}.hover\\:placeholder\\:text-slate-600:hover::placeholder{--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity))}.focus\\:border-slate-600:focus{--tw-border-opacity:1;border-color:rgb(71 85 105/var(--tw-border-opacity))}.focus\\:border-sky-600:focus{--tw-border-opacity:1;border-color:rgb(2 132 199/var(--tw-border-opacity))}.focus\\:border-green-600:focus{--tw-border-opacity:1;border-color:rgb(22 163 74/var(--tw-border-opacity))}.focus\\:border-primary-600:focus{--tw-border-opacity:1;border-color:rgb(58 209 242/var(--tw-border-opacity))}.focus\\:border-secondary-600:focus{--tw-border-opacity:1;border-color:rgb(34 42 57/var(--tw-border-opacity))}.focus\\:border-rose-600:focus{--tw-border-opacity:1;border-color:rgb(225 29 72/var(--tw-border-opacity))}.focus\\:border-emerald-600:focus{--tw-border-opacity:1;border-color:rgb(5 150 105/var(--tw-border-opacity))}.focus\\:border-sky-300\\/95:focus{border-color:rgba(125,211,252,.95)}.focus\\:border-blue-600:focus{--tw-border-opacity:1;border-color:rgb(1 95 159/var(--tw-border-opacity))}.focus\\:border-dark-blue-600:focus{--tw-border-opacity:1;border-color:rgb(10 15 46/var(--tw-border-opacity))}.focus\\:border-sky-500:focus{--tw-border-opacity:1;border-color:rgb(14 165 233/var(--tw-border-opacity))}.focus\\:border-sky-100:focus{--tw-border-opacity:1;border-color:rgb(224 242 254/var(--tw-border-opacity))}.focus\\:bg-slate-600:focus{--tw-bg-opacity:1;background-color:rgb(71 85 105/var(--tw-bg-opacity))}.focus\\:bg-sky-600:focus{--tw-bg-opacity:1;background-color:rgb(2 132 199/var(--tw-bg-opacity))}.focus\\:bg-green-600:focus{--tw-bg-opacity:1;background-color:rgb(22 163 74/var(--tw-bg-opacity))}.focus\\:bg-primary-600:focus{--tw-bg-opacity:1;background-color:rgb(58 209 242/var(--tw-bg-opacity))}.focus\\:bg-secondary-600:focus{--tw-bg-opacity:1;background-color:rgb(34 42 57/var(--tw-bg-opacity))}.focus\\:bg-rose-600:focus{--tw-bg-opacity:1;background-color:rgb(225 29 72/var(--tw-bg-opacity))}.focus\\:bg-emerald-600:focus{--tw-bg-opacity:1;background-color:rgb(5 150 105/var(--tw-bg-opacity))}.focus\\:bg-blue-600:focus{--tw-bg-opacity:1;background-color:rgb(1 95 159/var(--tw-bg-opacity))}.focus\\:bg-dark-blue-600:focus{--tw-bg-opacity:1;background-color:rgb(10 15 46/var(--tw-bg-opacity))}.focus\\:bg-gray-50:focus{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity))}.focus\\:text-slate-600:focus{--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity))}.focus\\:text-sky-600:focus{--tw-text-opacity:1;color:rgb(2 132 199/var(--tw-text-opacity))}.focus\\:text-green-600:focus{--tw-text-opacity:1;color:rgb(22 163 74/var(--tw-text-opacity))}.focus\\:text-primary-600:focus{--tw-text-opacity:1;color:rgb(58 209 242/var(--tw-text-opacity))}.focus\\:text-secondary-600:focus{--tw-text-opacity:1;color:rgb(34 42 57/var(--tw-text-opacity))}.focus\\:text-rose-600:focus{--tw-text-opacity:1;color:rgb(225 29 72/var(--tw-text-opacity))}.focus\\:text-emerald-600:focus{--tw-text-opacity:1;color:rgb(5 150 105/var(--tw-text-opacity))}.focus\\:text-blue-600:focus{--tw-text-opacity:1;color:rgb(1 95 159/var(--tw-text-opacity))}.focus\\:text-dark-blue-600:focus{--tw-text-opacity:1;color:rgb(10 15 46/var(--tw-text-opacity))}.focus\\:text-white:focus{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.focus\\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.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)}.focus\\:ring-sky-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(14 165 233/var(--tw-ring-opacity))}.focus\\:ring-sky-100:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(224 242 254/var(--tw-ring-opacity))}.focus\\:invalid\\:border-pink-500:invalid:focus{--tw-border-opacity:1;border-color:rgb(236 72 153/var(--tw-border-opacity))}.focus\\:invalid\\:ring-pink-500:invalid:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(236 72 153/var(--tw-ring-opacity))}.active\\:border-slate-600:active{--tw-border-opacity:1;border-color:rgb(71 85 105/var(--tw-border-opacity))}.active\\:border-sky-600:active{--tw-border-opacity:1;border-color:rgb(2 132 199/var(--tw-border-opacity))}.active\\:border-green-600:active{--tw-border-opacity:1;border-color:rgb(22 163 74/var(--tw-border-opacity))}.active\\:border-primary-600:active{--tw-border-opacity:1;border-color:rgb(58 209 242/var(--tw-border-opacity))}.active\\:border-secondary-600:active{--tw-border-opacity:1;border-color:rgb(34 42 57/var(--tw-border-opacity))}.active\\:border-rose-600:active{--tw-border-opacity:1;border-color:rgb(225 29 72/var(--tw-border-opacity))}.active\\:border-emerald-600:active{--tw-border-opacity:1;border-color:rgb(5 150 105/var(--tw-border-opacity))}.active\\:border-sky-300\\/95:active{border-color:rgba(125,211,252,.95)}.active\\:border-blue-600:active{--tw-border-opacity:1;border-color:rgb(1 95 159/var(--tw-border-opacity))}.active\\:border-dark-blue-600:active{--tw-border-opacity:1;border-color:rgb(10 15 46/var(--tw-border-opacity))}.active\\:bg-slate-600:active{--tw-bg-opacity:1;background-color:rgb(71 85 105/var(--tw-bg-opacity))}.active\\:bg-sky-600:active{--tw-bg-opacity:1;background-color:rgb(2 132 199/var(--tw-bg-opacity))}.active\\:bg-green-600:active{--tw-bg-opacity:1;background-color:rgb(22 163 74/var(--tw-bg-opacity))}.active\\:bg-primary-600:active{--tw-bg-opacity:1;background-color:rgb(58 209 242/var(--tw-bg-opacity))}.active\\:bg-secondary-600:active{--tw-bg-opacity:1;background-color:rgb(34 42 57/var(--tw-bg-opacity))}.active\\:bg-rose-600:active{--tw-bg-opacity:1;background-color:rgb(225 29 72/var(--tw-bg-opacity))}.active\\:bg-emerald-600:active{--tw-bg-opacity:1;background-color:rgb(5 150 105/var(--tw-bg-opacity))}.active\\:bg-blue-600:active{--tw-bg-opacity:1;background-color:rgb(1 95 159/var(--tw-bg-opacity))}.active\\:bg-dark-blue-600:active{--tw-bg-opacity:1;background-color:rgb(10 15 46/var(--tw-bg-opacity))}.active\\:bg-gray-50:active{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity))}.active\\:bg-white:active{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.active\\:text-slate-600:active{--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity))}.active\\:text-sky-600:active{--tw-text-opacity:1;color:rgb(2 132 199/var(--tw-text-opacity))}.active\\:text-green-600:active{--tw-text-opacity:1;color:rgb(22 163 74/var(--tw-text-opacity))}.active\\:text-primary-600:active{--tw-text-opacity:1;color:rgb(58 209 242/var(--tw-text-opacity))}.active\\:text-secondary-600:active{--tw-text-opacity:1;color:rgb(34 42 57/var(--tw-text-opacity))}.active\\:text-rose-600:active{--tw-text-opacity:1;color:rgb(225 29 72/var(--tw-text-opacity))}.active\\:text-emerald-600:active{--tw-text-opacity:1;color:rgb(5 150 105/var(--tw-text-opacity))}.active\\:text-blue-600:active{--tw-text-opacity:1;color:rgb(1 95 159/var(--tw-text-opacity))}.active\\:text-dark-blue-600:active{--tw-text-opacity:1;color:rgb(10 15 46/var(--tw-text-opacity))}.active\\:text-white:active{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\\:border-slate-200:disabled{--tw-border-opacity:1;border-color:rgb(226 232 240/var(--tw-border-opacity))}.disabled\\:bg-slate-50:disabled{--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity))}.disabled\\:text-slate-500:disabled{--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity))}.disabled\\:text-gray-600:disabled{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity))}.disabled\\:opacity-40:disabled{opacity:.4}.disabled\\:shadow-none:disabled{--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)}.peer:checked~.peer-checked\\:bg-sky-blue-400{--tw-bg-opacity:1;background-color:rgb(59 208 242/var(--tw-bg-opacity))}.peer:checked~.peer-checked\\:bg-blue-600{--tw-bg-opacity:1;background-color:rgb(1 95 159/var(--tw-bg-opacity))}.peer:checked~.peer-checked\\:after\\:translate-x-3\\.5:after{--tw-translate-x:0.875rem}.peer:checked~.peer-checked\\:after\\:translate-x-3:after,.peer:checked~.peer-checked\\:after\\:translate-x-3\\.5:after{content:var(--tw-content);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.peer:checked~.peer-checked\\:after\\:translate-x-3:after{--tw-translate-x:0.75rem}.peer:checked~.peer-checked\\:after\\:translate-x-full:after{--tw-translate-x:100%;content:var(--tw-content);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.peer:checked~.peer-checked\\:after\\:border-white:after{--tw-border-opacity:1;border-color:rgb(255 255 255/var(--tw-border-opacity));content:var(--tw-content)}.peer:focus~.peer-focus\\:ring-4{--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(4px + 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)}.peer:focus~.peer-focus\\:ring-blue-300{--tw-ring-opacity:1;--tw-ring-color:rgb(147 197 253/var(--tw-ring-opacity))}@media (prefers-color-scheme:dark){.dark\\:border-gray-600{--tw-border-opacity:1;border-color:rgb(75 85 99/var(--tw-border-opacity))}.dark\\:bg-gray-700{--tw-bg-opacity:1;background-color:rgb(55 65 81/var(--tw-bg-opacity))}.peer:focus~.dark\\:peer-focus\\:ring-blue-800{--tw-ring-opacity:1;--tw-ring-color:rgb(30 64 175/var(--tw-ring-opacity))}}@media (min-width:640px){.sm\\:flex{display:flex}.sm\\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\\:place-content-between{place-content:space-between}}@media (min-width:768px){.md\\:invisible{visibility:hidden}.md\\:mr-6{margin-right:1.5rem}.md\\:flex{display:flex}.md\\:grid{display:grid}.md\\:hidden{display:none}.md\\:h-6{height:1.5rem}.md\\:h-\\[24rem\\]{height:24rem}.md\\:w-6{width:1.5rem}.md\\:w-\\[28rem\\]{width:28rem}.md\\:w-\\[40rem\\]{width:40rem}.md\\:w-\\[30rem\\]{width:30rem}.md\\:w-\\[20rem\\]{width:20rem}.md\\:w-\\[24rem\\]{width:24rem}.md\\:w-\\[16rem\\]{width:16rem}.md\\:w-\\[32rem\\]{width:32rem}.md\\:w-max{width:-moz-max-content;width:max-content}.md\\:w-\\[50rem\\]{width:50rem}.md\\:min-w-\\[30rem\\]{min-width:30rem}.md\\:max-w-\\[22rem\\]{max-width:22rem}.md\\:max-w-\\[30rem\\]{max-width:30rem}.md\\:max-w-\\[40rem\\]{max-width:40rem}.md\\:scale-\\[1\\.2\\]{--tw-scale-x:1.2;--tw-scale-y:1.2;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.md\\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\\:flex-row{flex-direction:row}.md\\:flex-col{flex-direction:column}.md\\:items-start{align-items:flex-start}.md\\:items-center{align-items:center}.md\\:justify-between{justify-content:space-between}.md\\:border-b{border-bottom-width:1px}.md\\:p-1\\.5{padding:.375rem}.md\\:p-1{padding:.25rem}.md\\:px-2{padding-left:.5rem;padding-right:.5rem}.md\\:text-sm{font-size:.875rem;line-height:1.25rem}.md\\:shadow-sm{--tw-shadow:0 1px 2px 0 rgba(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)}}@media (min-width:1024px){.lg\\:sticky{position:sticky}.lg\\:top-0{top:0}.lg\\:top-2{top:.5rem}.lg\\:right-3{right:.75rem}.lg\\:col-span-2{grid-column:span 2/span 2}.lg\\:mt-0{margin-top:0}.lg\\:inline-block{display:inline-block}.lg\\:flex{display:flex}.lg\\:h-screen{height:100vh}.lg\\:h-\\[22rem\\]{height:22rem}.lg\\:h-32{height:8rem}.lg\\:h-4{height:1rem}.lg\\:h-\\[18rem\\]{height:18rem}.lg\\:h-\\[5\\.5rem\\]{height:5.5rem}.lg\\:min-h-24{min-height:6rem}.lg\\:w-\\[230px\\]{width:230px}.lg\\:w-32{width:8rem}.lg\\:w-4{width:1rem}.lg\\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\\:gap-2{gap:.5rem}.lg\\:gap-1{gap:.25rem}.lg\\:gap-x-2{-moz-column-gap:.5rem;column-gap:.5rem}.lg\\:gap-y-3{row-gap:.75rem}.lg\\:self-start{align-self:flex-start}.lg\\:overflow-y-auto{overflow-y:auto}.lg\\:px-0{padding-left:0;padding-right:0}.lg\\:px-36{padding-left:9rem;padding-right:9rem}.lg\\:py-3{padding-bottom:.75rem;padding-top:.75rem}.lg\\:px-5{padding-left:1.25rem;padding-right:1.25rem}.lg\\:px-56{padding-left:14rem;padding-right:14rem}.lg\\:text-sm{font-size:.875rem;line-height:1.25rem}.lg\\:text-4xl{font-size:2.25rem;line-height:2.5rem}}";
|
|
37
37
|
styleInject(css_248z);
|
|
38
38
|
|
|
39
39
|
const builder = (base = "", precondition) => {
|
|
@@ -934,19 +934,19 @@ const sprite = {
|
|
|
934
934
|
}
|
|
935
935
|
};
|
|
936
936
|
|
|
937
|
-
var __defProp$
|
|
938
|
-
var __getOwnPropSymbols$
|
|
939
|
-
var __hasOwnProp$
|
|
940
|
-
var __propIsEnum$
|
|
941
|
-
var __defNormalProp$
|
|
942
|
-
var __spreadValues$
|
|
937
|
+
var __defProp$n = Object.defineProperty;
|
|
938
|
+
var __getOwnPropSymbols$n = Object.getOwnPropertySymbols;
|
|
939
|
+
var __hasOwnProp$n = Object.prototype.hasOwnProperty;
|
|
940
|
+
var __propIsEnum$n = Object.prototype.propertyIsEnumerable;
|
|
941
|
+
var __defNormalProp$n = (obj, key, value) => key in obj ? __defProp$n(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
942
|
+
var __spreadValues$n = (a, b) => {
|
|
943
943
|
for (var prop in b || (b = {}))
|
|
944
|
-
if (__hasOwnProp$
|
|
945
|
-
__defNormalProp$
|
|
946
|
-
if (__getOwnPropSymbols$
|
|
947
|
-
for (var prop of __getOwnPropSymbols$
|
|
948
|
-
if (__propIsEnum$
|
|
949
|
-
__defNormalProp$
|
|
944
|
+
if (__hasOwnProp$n.call(b, prop))
|
|
945
|
+
__defNormalProp$n(a, prop, b[prop]);
|
|
946
|
+
if (__getOwnPropSymbols$n)
|
|
947
|
+
for (var prop of __getOwnPropSymbols$n(b)) {
|
|
948
|
+
if (__propIsEnum$n.call(b, prop))
|
|
949
|
+
__defNormalProp$n(a, prop, b[prop]);
|
|
950
950
|
}
|
|
951
951
|
return a;
|
|
952
952
|
};
|
|
@@ -965,9 +965,9 @@ const Icon$1 = (props) => {
|
|
|
965
965
|
},
|
|
966
966
|
/* @__PURE__ */ React__default.createElement("title", null, props.name),
|
|
967
967
|
contents.map((v, k) => {
|
|
968
|
-
return v.d && /* @__PURE__ */ React__default.createElement("path", __spreadValues$
|
|
968
|
+
return v.d && /* @__PURE__ */ React__default.createElement("path", __spreadValues$n({ key: k }, v));
|
|
969
969
|
}),
|
|
970
|
-
contents.map((v, k) => v.r && /* @__PURE__ */ React__default.createElement("circle", __spreadValues$
|
|
970
|
+
contents.map((v, k) => v.r && /* @__PURE__ */ React__default.createElement("circle", __spreadValues$n({ key: k }, v)))
|
|
971
971
|
);
|
|
972
972
|
};
|
|
973
973
|
|
|
@@ -1553,21 +1553,21 @@ const ActivityItem = (props) => {
|
|
|
1553
1553
|
return /* @__PURE__ */ React.createElement("div", { onClick: props.onClick, className: "grow cursor-pointer relative rounded-md min-w-64 h-[22rem] overflow-hidden" }, /* @__PURE__ */ React.createElement("img", { className: "h-full w-full object-cover", alt: props.headline, src: props.imageURL }), /* @__PURE__ */ React.createElement("div", { className: "absolute bottom-0 w-full" }, /* @__PURE__ */ React.createElement("div", { className: "p-5 bg-gray-800/75 w-full" }, /* @__PURE__ */ React.createElement("div", { className: "text-sm font-bold text-white w-full" }, props.headline), /* @__PURE__ */ React.createElement("div", { className: "mt-2 flex items-center gap-x-2 w-full" }, /* @__PURE__ */ React.createElement("div", { className: "flex-shrink-0 w-6 h-6 text-white fill-white" }, /* @__PURE__ */ React.createElement(Icon$1, { name: props.pathway || "globe" })), props.pathway && /* @__PURE__ */ React.createElement("span", { className: "grow" }, /* @__PURE__ */ React.createElement("div", { className: "text-sm font-medium capitalize text-white w-full" }, props.pathway)), props.xp && /* @__PURE__ */ React.createElement("div", { className: "text-slate-600 shadow-md whitespace-nowrap font-bold rounded-md text-sm px-5 py-2 bg-cyan-400" }, props.xp, " pts")))));
|
|
1554
1554
|
};
|
|
1555
1555
|
|
|
1556
|
-
var __defProp$
|
|
1556
|
+
var __defProp$m = Object.defineProperty;
|
|
1557
1557
|
var __defProps$e = Object.defineProperties;
|
|
1558
1558
|
var __getOwnPropDescs$e = Object.getOwnPropertyDescriptors;
|
|
1559
|
-
var __getOwnPropSymbols$
|
|
1560
|
-
var __hasOwnProp$
|
|
1561
|
-
var __propIsEnum$
|
|
1562
|
-
var __defNormalProp$
|
|
1563
|
-
var __spreadValues$
|
|
1559
|
+
var __getOwnPropSymbols$m = Object.getOwnPropertySymbols;
|
|
1560
|
+
var __hasOwnProp$m = Object.prototype.hasOwnProperty;
|
|
1561
|
+
var __propIsEnum$m = Object.prototype.propertyIsEnumerable;
|
|
1562
|
+
var __defNormalProp$m = (obj, key, value) => key in obj ? __defProp$m(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
1563
|
+
var __spreadValues$m = (a, b) => {
|
|
1564
1564
|
for (var prop in b || (b = {}))
|
|
1565
|
-
if (__hasOwnProp$
|
|
1566
|
-
__defNormalProp$
|
|
1567
|
-
if (__getOwnPropSymbols$
|
|
1568
|
-
for (var prop of __getOwnPropSymbols$
|
|
1569
|
-
if (__propIsEnum$
|
|
1570
|
-
__defNormalProp$
|
|
1565
|
+
if (__hasOwnProp$m.call(b, prop))
|
|
1566
|
+
__defNormalProp$m(a, prop, b[prop]);
|
|
1567
|
+
if (__getOwnPropSymbols$m)
|
|
1568
|
+
for (var prop of __getOwnPropSymbols$m(b)) {
|
|
1569
|
+
if (__propIsEnum$m.call(b, prop))
|
|
1570
|
+
__defNormalProp$m(a, prop, b[prop]);
|
|
1571
1571
|
}
|
|
1572
1572
|
return a;
|
|
1573
1573
|
};
|
|
@@ -1583,12 +1583,12 @@ const TagFilter = (props) => {
|
|
|
1583
1583
|
const [active, setActive] = React__default.useState(init);
|
|
1584
1584
|
const onTagClick = (tag) => {
|
|
1585
1585
|
if (active[tag]) {
|
|
1586
|
-
setActive(__spreadProps$e(__spreadValues$
|
|
1587
|
-
const tags = Object.entries(__spreadProps$e(__spreadValues$
|
|
1586
|
+
setActive(__spreadProps$e(__spreadValues$m({}, active), { [tag]: false }));
|
|
1587
|
+
const tags = Object.entries(__spreadProps$e(__spreadValues$m({}, active), { [tag]: false })).filter(([, active2]) => active2).map(([tag2]) => tag2);
|
|
1588
1588
|
props.onChange && props.onChange(tags);
|
|
1589
1589
|
} else {
|
|
1590
|
-
setActive(__spreadProps$e(__spreadValues$
|
|
1591
|
-
const tags = Object.entries(__spreadProps$e(__spreadValues$
|
|
1590
|
+
setActive(__spreadProps$e(__spreadValues$m({}, active), { [tag]: true }));
|
|
1591
|
+
const tags = Object.entries(__spreadProps$e(__spreadValues$m({}, active), { [tag]: true })).filter(([, active2]) => active2).map(([tag2]) => tag2);
|
|
1592
1592
|
props.onChange && props.onChange(tags);
|
|
1593
1593
|
}
|
|
1594
1594
|
};
|
|
@@ -1634,21 +1634,21 @@ const debounce = (func, delay) => {
|
|
|
1634
1634
|
};
|
|
1635
1635
|
};
|
|
1636
1636
|
|
|
1637
|
-
var __defProp$
|
|
1637
|
+
var __defProp$l = Object.defineProperty;
|
|
1638
1638
|
var __defProps$d = Object.defineProperties;
|
|
1639
1639
|
var __getOwnPropDescs$d = Object.getOwnPropertyDescriptors;
|
|
1640
|
-
var __getOwnPropSymbols$
|
|
1641
|
-
var __hasOwnProp$
|
|
1642
|
-
var __propIsEnum$
|
|
1643
|
-
var __defNormalProp$
|
|
1644
|
-
var __spreadValues$
|
|
1640
|
+
var __getOwnPropSymbols$l = Object.getOwnPropertySymbols;
|
|
1641
|
+
var __hasOwnProp$l = Object.prototype.hasOwnProperty;
|
|
1642
|
+
var __propIsEnum$l = Object.prototype.propertyIsEnumerable;
|
|
1643
|
+
var __defNormalProp$l = (obj, key, value) => key in obj ? __defProp$l(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
1644
|
+
var __spreadValues$l = (a, b) => {
|
|
1645
1645
|
for (var prop in b || (b = {}))
|
|
1646
|
-
if (__hasOwnProp$
|
|
1647
|
-
__defNormalProp$
|
|
1648
|
-
if (__getOwnPropSymbols$
|
|
1649
|
-
for (var prop of __getOwnPropSymbols$
|
|
1650
|
-
if (__propIsEnum$
|
|
1651
|
-
__defNormalProp$
|
|
1646
|
+
if (__hasOwnProp$l.call(b, prop))
|
|
1647
|
+
__defNormalProp$l(a, prop, b[prop]);
|
|
1648
|
+
if (__getOwnPropSymbols$l)
|
|
1649
|
+
for (var prop of __getOwnPropSymbols$l(b)) {
|
|
1650
|
+
if (__propIsEnum$l.call(b, prop))
|
|
1651
|
+
__defNormalProp$l(a, prop, b[prop]);
|
|
1652
1652
|
}
|
|
1653
1653
|
return a;
|
|
1654
1654
|
};
|
|
@@ -1670,14 +1670,14 @@ const ActivityList = (props) => {
|
|
|
1670
1670
|
isLoading: props.isLoading,
|
|
1671
1671
|
primary: !props.search && primary && /* @__PURE__ */ React__default.createElement(
|
|
1672
1672
|
ActivityItem,
|
|
1673
|
-
__spreadProps$d(__spreadValues$
|
|
1673
|
+
__spreadProps$d(__spreadValues$l({}, primary), {
|
|
1674
1674
|
onClick: () => props.onActivityClick && props.onActivityClick(primary.activityId)
|
|
1675
1675
|
})
|
|
1676
1676
|
),
|
|
1677
1677
|
top: !props.search && top && top.length > 0 && /* @__PURE__ */ React__default.createElement("article", { className: "grid grid-cols-1 md:flex gap-2 overflow-auto" }, top.map((activity) => {
|
|
1678
1678
|
return /* @__PURE__ */ React__default.createElement(
|
|
1679
1679
|
ActivityItem,
|
|
1680
|
-
__spreadProps$d(__spreadValues$
|
|
1680
|
+
__spreadProps$d(__spreadValues$l({
|
|
1681
1681
|
key: `${activity.activityId}`
|
|
1682
1682
|
}, activity), {
|
|
1683
1683
|
onClick: () => props.onActivityClick && props.onActivityClick(activity.activityId)
|
|
@@ -1687,7 +1687,7 @@ const ActivityList = (props) => {
|
|
|
1687
1687
|
soonest: !props.search && upcoming && upcoming.length > 0 && /* @__PURE__ */ React__default.createElement("article", { className: "grid grid-cols-1 md:flex gap-2 overflow-auto" }, upcoming.map((activity) => {
|
|
1688
1688
|
return /* @__PURE__ */ React__default.createElement(
|
|
1689
1689
|
ActivityItem,
|
|
1690
|
-
__spreadProps$d(__spreadValues$
|
|
1690
|
+
__spreadProps$d(__spreadValues$l({
|
|
1691
1691
|
key: `${activity.activityId}`
|
|
1692
1692
|
}, activity), {
|
|
1693
1693
|
onClick: () => props.onActivityClick && props.onActivityClick(activity.activityId)
|
|
@@ -1697,7 +1697,7 @@ const ActivityList = (props) => {
|
|
|
1697
1697
|
milestones: !props.search && props.milestones && props.milestones.length > 0 && /* @__PURE__ */ React__default.createElement("article", { className: "grid grid-cols-1 md:flex gap-2 overflow-auto" }, props.milestones.map((activity) => {
|
|
1698
1698
|
return /* @__PURE__ */ React__default.createElement(
|
|
1699
1699
|
ActivityItem,
|
|
1700
|
-
__spreadProps$d(__spreadValues$
|
|
1700
|
+
__spreadProps$d(__spreadValues$l({
|
|
1701
1701
|
key: `${activity.activityId}`
|
|
1702
1702
|
}, activity), {
|
|
1703
1703
|
onClick: () => props.onActivityClick && props.onActivityClick(activity.activityId)
|
|
@@ -1708,7 +1708,7 @@ const ActivityList = (props) => {
|
|
|
1708
1708
|
filtered: !!props.search && props.activities && props.activities.length > 0 && /* @__PURE__ */ React__default.createElement("article", { className: "grid grid-cols-1 md:flex gap-2 overflow-auto" }, props.activities.map((activity) => {
|
|
1709
1709
|
return /* @__PURE__ */ React__default.createElement(
|
|
1710
1710
|
ActivityItem,
|
|
1711
|
-
__spreadProps$d(__spreadValues$
|
|
1711
|
+
__spreadProps$d(__spreadValues$l({
|
|
1712
1712
|
key: `${activity.activityId}`
|
|
1713
1713
|
}, activity), {
|
|
1714
1714
|
onClick: () => props.onActivityClick && props.onActivityClick(activity.activityId)
|
|
@@ -1734,21 +1734,21 @@ const Search$1 = ({ send, value }) => {
|
|
|
1734
1734
|
)));
|
|
1735
1735
|
};
|
|
1736
1736
|
|
|
1737
|
-
var __defProp$
|
|
1737
|
+
var __defProp$k = Object.defineProperty;
|
|
1738
1738
|
var __defProps$c = Object.defineProperties;
|
|
1739
1739
|
var __getOwnPropDescs$c = Object.getOwnPropertyDescriptors;
|
|
1740
|
-
var __getOwnPropSymbols$
|
|
1741
|
-
var __hasOwnProp$
|
|
1742
|
-
var __propIsEnum$
|
|
1743
|
-
var __defNormalProp$
|
|
1744
|
-
var __spreadValues$
|
|
1740
|
+
var __getOwnPropSymbols$k = Object.getOwnPropertySymbols;
|
|
1741
|
+
var __hasOwnProp$k = Object.prototype.hasOwnProperty;
|
|
1742
|
+
var __propIsEnum$k = Object.prototype.propertyIsEnumerable;
|
|
1743
|
+
var __defNormalProp$k = (obj, key, value) => key in obj ? __defProp$k(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
1744
|
+
var __spreadValues$k = (a, b) => {
|
|
1745
1745
|
for (var prop in b || (b = {}))
|
|
1746
|
-
if (__hasOwnProp$
|
|
1747
|
-
__defNormalProp$
|
|
1748
|
-
if (__getOwnPropSymbols$
|
|
1749
|
-
for (var prop of __getOwnPropSymbols$
|
|
1750
|
-
if (__propIsEnum$
|
|
1751
|
-
__defNormalProp$
|
|
1746
|
+
if (__hasOwnProp$k.call(b, prop))
|
|
1747
|
+
__defNormalProp$k(a, prop, b[prop]);
|
|
1748
|
+
if (__getOwnPropSymbols$k)
|
|
1749
|
+
for (var prop of __getOwnPropSymbols$k(b)) {
|
|
1750
|
+
if (__propIsEnum$k.call(b, prop))
|
|
1751
|
+
__defNormalProp$k(a, prop, b[prop]);
|
|
1752
1752
|
}
|
|
1753
1753
|
return a;
|
|
1754
1754
|
};
|
|
@@ -1760,8 +1760,8 @@ const ActivityReflection = (props) => {
|
|
|
1760
1760
|
reflection: props.reflection
|
|
1761
1761
|
});
|
|
1762
1762
|
const hasChanges = props.hasChanges || props.canReflect && (props.rating !== reaction.rating || props.reflection !== reaction.reflection);
|
|
1763
|
-
const setFeedback = (feedback) => setReaction(__spreadProps$c(__spreadValues$
|
|
1764
|
-
const setRating = (rating) => setReaction(__spreadProps$c(__spreadValues$
|
|
1763
|
+
const setFeedback = (feedback) => setReaction(__spreadProps$c(__spreadValues$k({}, reaction), { reflection: feedback }));
|
|
1764
|
+
const setRating = (rating) => setReaction(__spreadProps$c(__spreadValues$k({}, reaction), { rating }));
|
|
1765
1765
|
React__default.useEffect(() => {
|
|
1766
1766
|
setReaction({
|
|
1767
1767
|
rating: props.rating,
|
|
@@ -1788,7 +1788,7 @@ const ActivityReflection = (props) => {
|
|
|
1788
1788
|
defaultValue: props.reflection,
|
|
1789
1789
|
className: "resize-none text-slate-500 focus:text-slate-600 h-24 mt-1 block w-full px-3 py-2 bg-white border border-slate-300 rounded-md text-sm shadow-sm placeholder-slate-400\n focus:outline-none focus:border-sky-500 focus:ring-1 focus:ring-sky-500\n disabled:bg-slate-50 disabled:text-slate-500 disabled:border-slate-200 disabled:shadow-none\n invalid:border-pink-500 invalid:text-pink-600\n focus:invalid:border-pink-500 focus:invalid:ring-pink-500"
|
|
1790
1790
|
}
|
|
1791
|
-
), props.canReflect && /* @__PURE__ */ React__default.createElement(Rating$1, __spreadProps$c(__spreadValues$
|
|
1791
|
+
), props.canReflect && /* @__PURE__ */ React__default.createElement(Rating$1, __spreadProps$c(__spreadValues$k(__spreadValues$k({}, props), reaction), { setRating })))))));
|
|
1792
1792
|
};
|
|
1793
1793
|
const Rating$1 = (props) => {
|
|
1794
1794
|
const maxPoints = 5;
|
|
@@ -3001,6 +3001,10 @@ const Progress = (props) => {
|
|
|
3001
3001
|
switch (props.color) {
|
|
3002
3002
|
case "sky-blue":
|
|
3003
3003
|
return ["bg-sky-blue-200", "bg-sky-blue-400"];
|
|
3004
|
+
case "mint":
|
|
3005
|
+
return ["bg-mint-400/20", "bg-mint-400"];
|
|
3006
|
+
case "gold":
|
|
3007
|
+
return ["bg-gold-400/20", "bg-gold-400"];
|
|
3004
3008
|
default:
|
|
3005
3009
|
return ["bg-gray-200", "bg-green-400"];
|
|
3006
3010
|
}
|
|
@@ -3194,21 +3198,21 @@ const Overlay = (props) => {
|
|
|
3194
3198
|
return /* @__PURE__ */ React.createElement("div", { className: "flex fixed overscroll-none w-screen h-screen top-0 left-0 bg-gray-300/75 z-30" }, props.children);
|
|
3195
3199
|
};
|
|
3196
3200
|
|
|
3197
|
-
var __defProp$
|
|
3201
|
+
var __defProp$j = Object.defineProperty;
|
|
3198
3202
|
var __defProps$b = Object.defineProperties;
|
|
3199
3203
|
var __getOwnPropDescs$b = Object.getOwnPropertyDescriptors;
|
|
3200
|
-
var __getOwnPropSymbols$
|
|
3201
|
-
var __hasOwnProp$
|
|
3202
|
-
var __propIsEnum$
|
|
3203
|
-
var __defNormalProp$
|
|
3204
|
-
var __spreadValues$
|
|
3204
|
+
var __getOwnPropSymbols$j = Object.getOwnPropertySymbols;
|
|
3205
|
+
var __hasOwnProp$j = Object.prototype.hasOwnProperty;
|
|
3206
|
+
var __propIsEnum$j = Object.prototype.propertyIsEnumerable;
|
|
3207
|
+
var __defNormalProp$j = (obj, key, value) => key in obj ? __defProp$j(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
3208
|
+
var __spreadValues$j = (a, b) => {
|
|
3205
3209
|
for (var prop in b || (b = {}))
|
|
3206
|
-
if (__hasOwnProp$
|
|
3207
|
-
__defNormalProp$
|
|
3208
|
-
if (__getOwnPropSymbols$
|
|
3209
|
-
for (var prop of __getOwnPropSymbols$
|
|
3210
|
-
if (__propIsEnum$
|
|
3211
|
-
__defNormalProp$
|
|
3210
|
+
if (__hasOwnProp$j.call(b, prop))
|
|
3211
|
+
__defNormalProp$j(a, prop, b[prop]);
|
|
3212
|
+
if (__getOwnPropSymbols$j)
|
|
3213
|
+
for (var prop of __getOwnPropSymbols$j(b)) {
|
|
3214
|
+
if (__propIsEnum$j.call(b, prop))
|
|
3215
|
+
__defNormalProp$j(a, prop, b[prop]);
|
|
3212
3216
|
}
|
|
3213
3217
|
return a;
|
|
3214
3218
|
};
|
|
@@ -3230,7 +3234,7 @@ const Badge = (props) => {
|
|
|
3230
3234
|
props.onClose();
|
|
3231
3235
|
}
|
|
3232
3236
|
};
|
|
3233
|
-
return /* @__PURE__ */ React.createElement(React.Fragment, null, !open && /* @__PURE__ */ React.createElement(BadgeButton, __spreadProps$b(__spreadValues$
|
|
3237
|
+
return /* @__PURE__ */ React.createElement(React.Fragment, null, !open && /* @__PURE__ */ React.createElement(BadgeButton, __spreadProps$b(__spreadValues$j({}, props), { progress, target, onClick: onOpen })), open && !!props.preview && /* @__PURE__ */ React.createElement(BadgeCard, __spreadProps$b(__spreadValues$j({}, props), { onClose })), open && !props.preview && /* @__PURE__ */ React.createElement(Overlay, null, /* @__PURE__ */ React.createElement(BadgeCard, __spreadProps$b(__spreadValues$j({}, props), { onClose }))));
|
|
3234
3238
|
};
|
|
3235
3239
|
|
|
3236
3240
|
const BadgeActivity = (props) => {
|
|
@@ -3265,21 +3269,21 @@ const BadgeActivity = (props) => {
|
|
|
3265
3269
|
})))));
|
|
3266
3270
|
};
|
|
3267
3271
|
|
|
3268
|
-
var __defProp$
|
|
3272
|
+
var __defProp$i = Object.defineProperty;
|
|
3269
3273
|
var __defProps$a = Object.defineProperties;
|
|
3270
3274
|
var __getOwnPropDescs$a = Object.getOwnPropertyDescriptors;
|
|
3271
|
-
var __getOwnPropSymbols$
|
|
3272
|
-
var __hasOwnProp$
|
|
3273
|
-
var __propIsEnum$
|
|
3274
|
-
var __defNormalProp$
|
|
3275
|
-
var __spreadValues$
|
|
3275
|
+
var __getOwnPropSymbols$i = Object.getOwnPropertySymbols;
|
|
3276
|
+
var __hasOwnProp$i = Object.prototype.hasOwnProperty;
|
|
3277
|
+
var __propIsEnum$i = Object.prototype.propertyIsEnumerable;
|
|
3278
|
+
var __defNormalProp$i = (obj, key, value) => key in obj ? __defProp$i(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
3279
|
+
var __spreadValues$i = (a, b) => {
|
|
3276
3280
|
for (var prop in b || (b = {}))
|
|
3277
|
-
if (__hasOwnProp$
|
|
3278
|
-
__defNormalProp$
|
|
3279
|
-
if (__getOwnPropSymbols$
|
|
3280
|
-
for (var prop of __getOwnPropSymbols$
|
|
3281
|
-
if (__propIsEnum$
|
|
3282
|
-
__defNormalProp$
|
|
3281
|
+
if (__hasOwnProp$i.call(b, prop))
|
|
3282
|
+
__defNormalProp$i(a, prop, b[prop]);
|
|
3283
|
+
if (__getOwnPropSymbols$i)
|
|
3284
|
+
for (var prop of __getOwnPropSymbols$i(b)) {
|
|
3285
|
+
if (__propIsEnum$i.call(b, prop))
|
|
3286
|
+
__defNormalProp$i(a, prop, b[prop]);
|
|
3283
3287
|
}
|
|
3284
3288
|
return a;
|
|
3285
3289
|
};
|
|
@@ -3300,7 +3304,7 @@ const BadgeActivityMenu = (props) => {
|
|
|
3300
3304
|
return /* @__PURE__ */ React.createElement("div", { key: id, className: "grid grid-cols-1 gap-y-8" }, /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement("p", { className: "text-lg font-semibold" }, c.displayName), /* @__PURE__ */ React.createElement("p", { className: "text-sm" }, "Chose one activity to complete.")), /* @__PURE__ */ React.createElement("div", { className: "grid grid-flow-col auto-cols-max gap-4 px-1 pt-1 pb-2 w-full overflow-x-auto" }, options.map((o, i2) => {
|
|
3301
3305
|
const id2 = o.activityId || i2;
|
|
3302
3306
|
const date = o.startTime ? new Date(o.startTime) : null;
|
|
3303
|
-
return /* @__PURE__ */ React.createElement("div", { key: id2, className: "grid grid-cols-1 gap-y-2" }, date && /* @__PURE__ */ React.createElement("p", null, Intl.DateTimeFormat("en-US", { month: "long" }).format(date), " ", ordNumber$1(date.getDate())), !date && /* @__PURE__ */ React.createElement("p", { className: "invisible" }, "Online"), /* @__PURE__ */ React.createElement(BadgeActivity, __spreadProps$a(__spreadValues$
|
|
3307
|
+
return /* @__PURE__ */ React.createElement("div", { key: id2, className: "grid grid-cols-1 gap-y-2" }, date && /* @__PURE__ */ React.createElement("p", null, Intl.DateTimeFormat("en-US", { month: "long" }).format(date), " ", ordNumber$1(date.getDate())), !date && /* @__PURE__ */ React.createElement("p", { className: "invisible" }, "Online"), /* @__PURE__ */ React.createElement(BadgeActivity, __spreadProps$a(__spreadValues$i({}, o), { criteriaName: c.displayName })));
|
|
3304
3308
|
})));
|
|
3305
3309
|
})));
|
|
3306
3310
|
};
|
|
@@ -3345,21 +3349,21 @@ const Widget = (props) => {
|
|
|
3345
3349
|
return /* @__PURE__ */ React__default.createElement("article", { className }, !props.headless && /* @__PURE__ */ React__default.createElement("div", { className: "p-2 bg-gray-200" }), /* @__PURE__ */ React__default.createElement(Loader, { isLoading: props.isLoading }, /* @__PURE__ */ React__default.createElement("div", { className: "relative w-full" }, props.children)));
|
|
3346
3350
|
};
|
|
3347
3351
|
|
|
3348
|
-
var __defProp$
|
|
3352
|
+
var __defProp$h = Object.defineProperty;
|
|
3349
3353
|
var __defProps$9 = Object.defineProperties;
|
|
3350
3354
|
var __getOwnPropDescs$9 = Object.getOwnPropertyDescriptors;
|
|
3351
|
-
var __getOwnPropSymbols$
|
|
3352
|
-
var __hasOwnProp$
|
|
3353
|
-
var __propIsEnum$
|
|
3354
|
-
var __defNormalProp$
|
|
3355
|
-
var __spreadValues$
|
|
3355
|
+
var __getOwnPropSymbols$h = Object.getOwnPropertySymbols;
|
|
3356
|
+
var __hasOwnProp$h = Object.prototype.hasOwnProperty;
|
|
3357
|
+
var __propIsEnum$h = Object.prototype.propertyIsEnumerable;
|
|
3358
|
+
var __defNormalProp$h = (obj, key, value) => key in obj ? __defProp$h(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
3359
|
+
var __spreadValues$h = (a, b) => {
|
|
3356
3360
|
for (var prop in b || (b = {}))
|
|
3357
|
-
if (__hasOwnProp$
|
|
3358
|
-
__defNormalProp$
|
|
3359
|
-
if (__getOwnPropSymbols$
|
|
3360
|
-
for (var prop of __getOwnPropSymbols$
|
|
3361
|
-
if (__propIsEnum$
|
|
3362
|
-
__defNormalProp$
|
|
3361
|
+
if (__hasOwnProp$h.call(b, prop))
|
|
3362
|
+
__defNormalProp$h(a, prop, b[prop]);
|
|
3363
|
+
if (__getOwnPropSymbols$h)
|
|
3364
|
+
for (var prop of __getOwnPropSymbols$h(b)) {
|
|
3365
|
+
if (__propIsEnum$h.call(b, prop))
|
|
3366
|
+
__defNormalProp$h(a, prop, b[prop]);
|
|
3363
3367
|
}
|
|
3364
3368
|
return a;
|
|
3365
3369
|
};
|
|
@@ -3423,7 +3427,7 @@ const BadgeSection = (props) => {
|
|
|
3423
3427
|
if (!(opt.label in filters)) {
|
|
3424
3428
|
return;
|
|
3425
3429
|
}
|
|
3426
|
-
const next = __spreadValues$
|
|
3430
|
+
const next = __spreadValues$h({}, filters);
|
|
3427
3431
|
next[opt.label].isActive = !next[opt.label].isActive;
|
|
3428
3432
|
setFilters(next);
|
|
3429
3433
|
},
|
|
@@ -3449,15 +3453,15 @@ const BadgeSection = (props) => {
|
|
|
3449
3453
|
},
|
|
3450
3454
|
"Grid View?"
|
|
3451
3455
|
)))), /* @__PURE__ */ React.createElement("div", null, !!props.readonly && /* @__PURE__ */ React.createElement("div", { className: layoutClassName }, preview.map((b, i) => {
|
|
3452
|
-
return /* @__PURE__ */ React.createElement(Badge, __spreadProps$9(__spreadValues$
|
|
3456
|
+
return /* @__PURE__ */ React.createElement(Badge, __spreadProps$9(__spreadValues$h({ key: i }, b), { compact: list, readonly: props.readonly }));
|
|
3453
3457
|
})), !props.readonly && /* @__PURE__ */ React.createElement("div", { className: "text-zinc-600 grid grid-cols-1 gap-y-4" }, (isWithoutFilters || "In Progress" in filters && filters["In Progress"].isActive) && progress.length > 0 && /* @__PURE__ */ React.createElement("div", null, showSectionHeaders && /* @__PURE__ */ React.createElement("p", { className: "mb-3 text-md underline font-bold" }, "In Progress"), /* @__PURE__ */ React.createElement("div", { className: layoutClassName }, progress.map((b, i) => {
|
|
3454
|
-
return /* @__PURE__ */ React.createElement(Badge, __spreadProps$9(__spreadValues$
|
|
3458
|
+
return /* @__PURE__ */ React.createElement(Badge, __spreadProps$9(__spreadValues$h({ key: i }, b), { compact: list }));
|
|
3455
3459
|
}))), (isWithoutFilters || "Completed" in filters && filters["Completed"].isActive) && collected.length > 0 && /* @__PURE__ */ React.createElement("div", null, showSectionHeaders && /* @__PURE__ */ React.createElement("p", { className: "mb-3 text-md underline font-bold" }, "Completed"), /* @__PURE__ */ React.createElement("div", { className: layoutClassName }, collected.map((b, i) => {
|
|
3456
|
-
return /* @__PURE__ */ React.createElement(Badge, __spreadProps$9(__spreadValues$
|
|
3460
|
+
return /* @__PURE__ */ React.createElement(Badge, __spreadProps$9(__spreadValues$h({ key: i }, b), { compact: list }));
|
|
3457
3461
|
}))), (isWithoutFilters || "Available" in filters && filters["Available"].isActive) && available.length > 0 && /* @__PURE__ */ React.createElement("div", null, showSectionHeaders && /* @__PURE__ */ React.createElement("p", { className: "mb-3 text-md underline font-bold" }, "Available"), /* @__PURE__ */ React.createElement("div", { className: layoutClassName }, available.map((b, i) => {
|
|
3458
|
-
return /* @__PURE__ */ React.createElement(Badge, __spreadProps$9(__spreadValues$
|
|
3462
|
+
return /* @__PURE__ */ React.createElement(Badge, __spreadProps$9(__spreadValues$h({ key: i }, b), { compact: list }));
|
|
3459
3463
|
}))), (isWithoutFilters || "Locked" in filters && filters["Locked"].isActive) && locked.length > 0 && /* @__PURE__ */ React.createElement("div", null, showSectionHeaders && /* @__PURE__ */ React.createElement("p", { className: "mb-3 text-md underline font-bold" }, "Locked"), /* @__PURE__ */ React.createElement("div", { className: layoutClassName }, locked.map((b, i) => {
|
|
3460
|
-
return /* @__PURE__ */ React.createElement(Badge, __spreadProps$9(__spreadValues$
|
|
3464
|
+
return /* @__PURE__ */ React.createElement(Badge, __spreadProps$9(__spreadValues$h({ key: i }, b), { compact: list }));
|
|
3461
3465
|
}))))))))));
|
|
3462
3466
|
};
|
|
3463
3467
|
const getLayout$1 = (list) => {
|
|
@@ -3571,53 +3575,295 @@ const Board = (props) => {
|
|
|
3571
3575
|
return /* @__PURE__ */ React__default.createElement("div", { className: "w-full" }, /* @__PURE__ */ React__default.createElement("div", { className }, /* @__PURE__ */ React__default.createElement("div", { className: layoutClassName }, props.tabs)), /* @__PURE__ */ React__default.createElement("div", null, /* @__PURE__ */ React__default.createElement(Loader, { isLoading: props.isLoading }, !hasWorkflow && /* @__PURE__ */ React__default.createElement("div", { className: "grid justify-items-center content-center" }, /* @__PURE__ */ React__default.createElement("p", { className: "text-sm text-center align-middle leading-6 font-semibold text-slate-300" }, "No content to display.")), hasWorkflow && props.workflow)));
|
|
3572
3576
|
};
|
|
3573
3577
|
|
|
3574
|
-
const
|
|
3575
|
-
|
|
3576
|
-
|
|
3577
|
-
|
|
3578
|
+
const ACCENT_CLASSNAMES$2 = {
|
|
3579
|
+
cyan: "bg-sky-blue-400/15 border border-sky-blue-400/30",
|
|
3580
|
+
mint: "bg-mint-400/15 border border-mint-400/30",
|
|
3581
|
+
gold: "bg-gold-400/15 border border-gold-400/30",
|
|
3582
|
+
slate: "bg-slate-100 border border-slate-200"
|
|
3578
3583
|
};
|
|
3579
|
-
const
|
|
3580
|
-
const
|
|
3581
|
-
|
|
3582
|
-
const nextMonth = () => props.setMonth(new Date(month.getFullYear(), month.getMonth() + 1, 1));
|
|
3583
|
-
return /* @__PURE__ */ React__default.createElement("div", { className: "flex items-center" }, /* @__PURE__ */ React__default.createElement("div", { className: "grow" }, /* @__PURE__ */ React__default.createElement("span", { className: "font-semibold text-md text-slate-300" }, formatDate$1(month, { month: "long" })), /* @__PURE__ */ React__default.createElement("span", { className: "text-md ml-1 text-slate-300" }, formatDate$1(month, { year: "numeric" }))), /* @__PURE__ */ React__default.createElement("div", { onClick: previousMonth, className: "cursor-pointer w-3 h-3 min-w-3 text-slate-300 hover:text-slate-500" }, /* @__PURE__ */ React__default.createElement(Icon$1, { name: "leftArrow" })), /* @__PURE__ */ React__default.createElement("div", { onClick: nextMonth, className: "cursor-pointer ml-2 w-3 h-3 min-w-3 text-slate-300 hover:text-slate-500" }, /* @__PURE__ */ React__default.createElement(Icon$1, { name: "rightArrow" })));
|
|
3584
|
+
const Pill = (props) => {
|
|
3585
|
+
const accentClassName = ACCENT_CLASSNAMES$2[props.accent || "slate"];
|
|
3586
|
+
return /* @__PURE__ */ React.createElement("span", { className: `inline-flex items-center rounded-full px-3 py-1 text-xs font-bold text-dark-blue-400 ${accentClassName}` }, props.label);
|
|
3584
3587
|
};
|
|
3585
|
-
|
|
3586
|
-
|
|
3587
|
-
|
|
3588
|
-
|
|
3589
|
-
|
|
3590
|
-
|
|
3591
|
-
|
|
3592
|
-
|
|
3593
|
-
|
|
3594
|
-
|
|
3595
|
-
|
|
3596
|
-
|
|
3597
|
-
|
|
3598
|
-
|
|
3599
|
-
|
|
3600
|
-
|
|
3601
|
-
|
|
3602
|
-
|
|
3603
|
-
|
|
3604
|
-
|
|
3605
|
-
|
|
3606
|
-
)
|
|
3588
|
+
|
|
3589
|
+
var __defProp$g = Object.defineProperty;
|
|
3590
|
+
var __getOwnPropSymbols$g = Object.getOwnPropertySymbols;
|
|
3591
|
+
var __hasOwnProp$g = Object.prototype.hasOwnProperty;
|
|
3592
|
+
var __propIsEnum$g = Object.prototype.propertyIsEnumerable;
|
|
3593
|
+
var __defNormalProp$g = (obj, key, value) => key in obj ? __defProp$g(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
3594
|
+
var __spreadValues$g = (a, b) => {
|
|
3595
|
+
for (var prop in b || (b = {}))
|
|
3596
|
+
if (__hasOwnProp$g.call(b, prop))
|
|
3597
|
+
__defNormalProp$g(a, prop, b[prop]);
|
|
3598
|
+
if (__getOwnPropSymbols$g)
|
|
3599
|
+
for (var prop of __getOwnPropSymbols$g(b)) {
|
|
3600
|
+
if (__propIsEnum$g.call(b, prop))
|
|
3601
|
+
__defNormalProp$g(a, prop, b[prop]);
|
|
3602
|
+
}
|
|
3603
|
+
return a;
|
|
3604
|
+
};
|
|
3605
|
+
const FILTERS$1 = ["In Progress", "Completed", "Available", "Locked"];
|
|
3606
|
+
const STATUS_CLASSNAMES$2 = {
|
|
3607
|
+
"In Progress": {
|
|
3608
|
+
border: "border-sky-blue-400/30",
|
|
3609
|
+
shadow: "shadow-[0_4px_20px_rgba(59,208,242,0.10)]",
|
|
3610
|
+
strip: "from-sky-blue-400 to-mint-400",
|
|
3611
|
+
pillAccent: "cyan",
|
|
3612
|
+
pillLabel: "Active"
|
|
3613
|
+
},
|
|
3614
|
+
Completed: {
|
|
3615
|
+
border: "border-mint-400/30",
|
|
3616
|
+
shadow: "shadow-[0_4px_20px_rgba(30,226,175,0.10)]",
|
|
3617
|
+
strip: "from-mint-400 to-gold-400",
|
|
3618
|
+
pillAccent: "mint",
|
|
3619
|
+
pillLabel: "Done"
|
|
3620
|
+
},
|
|
3621
|
+
Available: {
|
|
3622
|
+
border: "border-gold-400/30",
|
|
3623
|
+
shadow: "shadow-[0_4px_20px_rgba(255,212,77,0.10)]",
|
|
3624
|
+
strip: "from-gold-400 to-sky-blue-400",
|
|
3625
|
+
pillAccent: "gold",
|
|
3626
|
+
pillLabel: "Open"
|
|
3627
|
+
},
|
|
3628
|
+
Locked: {
|
|
3629
|
+
border: "border-slate-200",
|
|
3630
|
+
shadow: "shadow-sm",
|
|
3631
|
+
strip: "from-slate-200 to-slate-200",
|
|
3632
|
+
pillAccent: "slate",
|
|
3633
|
+
pillLabel: "Locked"
|
|
3607
3634
|
}
|
|
3608
|
-
return /* @__PURE__ */ React__default.createElement("div", { className: "mt-4 grid grid-cols-7 gap-1 text-sm justify-items-center" }, WEEKDAYS.map((date) => {
|
|
3609
|
-
return /* @__PURE__ */ React__default.createElement("span", { key: date, className: "w-8 text-center text-slate-400" }, date);
|
|
3610
|
-
}), Days);
|
|
3611
3635
|
};
|
|
3612
|
-
const
|
|
3613
|
-
const
|
|
3614
|
-
|
|
3636
|
+
const BadgesList = (props) => {
|
|
3637
|
+
const groups = groupBadges$1(props.badges);
|
|
3638
|
+
const [active, setActive] = React.useState("In Progress");
|
|
3639
|
+
const [list, setList] = React.useState(props.list);
|
|
3640
|
+
React.useEffect(() => {
|
|
3641
|
+
setList(props.list);
|
|
3642
|
+
}, [props.list]);
|
|
3643
|
+
React.useEffect(() => {
|
|
3644
|
+
if (list !== void 0 && props.list !== list && props.onToggleLayout) {
|
|
3645
|
+
props.onToggleLayout(list);
|
|
3646
|
+
}
|
|
3647
|
+
}, [list]);
|
|
3648
|
+
const visible = groups[active];
|
|
3649
|
+
return /* @__PURE__ */ React.createElement("div", { className: "flex flex-col gap-3.5" }, /* @__PURE__ */ React.createElement("div", { className: "flex items-center justify-between gap-3" }, /* @__PURE__ */ React.createElement("div", { className: "text-xs font-semibold text-slate-400" }, props.badges.length, " badge", props.badges.length === 1 ? "" : "s"), /* @__PURE__ */ React.createElement("div", { className: "flex items-center gap-2.5" }, /* @__PURE__ */ React.createElement("div", { className: "grid grid-cols-4 gap-1 rounded-xl border border-slate-200 bg-white p-1" }, FILTERS$1.map((label) => /* @__PURE__ */ React.createElement(Tab, { key: label, title: label, secondary: true, active: active === label, onClick: () => setActive(label) }))), /* @__PURE__ */ React.createElement("div", { className: "flex gap-1" }, /* @__PURE__ */ React.createElement(
|
|
3650
|
+
"button",
|
|
3651
|
+
{
|
|
3652
|
+
type: "button",
|
|
3653
|
+
onClick: () => setList(false),
|
|
3654
|
+
className: `flex h-7 w-7 items-center justify-center rounded-md ${!list ? "bg-slate-100 text-dark-blue-400" : "text-slate-300 hover:text-slate-400"}`
|
|
3655
|
+
},
|
|
3656
|
+
/* @__PURE__ */ React.createElement(IconLayoutGrid, { size: 14, stroke: 1.75 })
|
|
3657
|
+
), /* @__PURE__ */ React.createElement(
|
|
3658
|
+
"button",
|
|
3659
|
+
{
|
|
3660
|
+
type: "button",
|
|
3661
|
+
onClick: () => setList(true),
|
|
3662
|
+
className: `flex h-7 w-7 items-center justify-center rounded-md ${list ? "bg-slate-100 text-dark-blue-400" : "text-slate-300 hover:text-slate-400"}`
|
|
3663
|
+
},
|
|
3664
|
+
/* @__PURE__ */ React.createElement(IconList, { size: 14, stroke: 1.75 })
|
|
3665
|
+
)))), visible.length === 0 && /* @__PURE__ */ React.createElement("p", { className: "text-sm text-slate-400" }, "No badges to display."), visible.length > 0 && (list ? /* @__PURE__ */ React.createElement("div", { className: "overflow-hidden rounded-2xl border border-slate-200 bg-white" }, visible.map((badge, i) => /* @__PURE__ */ React.createElement(BadgeListRow, __spreadValues$g({ key: badge.badgeId || i }, badge)))) : /* @__PURE__ */ React.createElement("div", { className: "grid grid-cols-2 gap-3.5 sm:grid-cols-3 lg:grid-cols-5" }, visible.map((badge, i) => /* @__PURE__ */ React.createElement(BadgeListCard, __spreadValues$g({ key: badge.badgeId || i }, badge))))));
|
|
3615
3666
|
};
|
|
3616
|
-
const
|
|
3617
|
-
const
|
|
3618
|
-
|
|
3619
|
-
|
|
3620
|
-
|
|
3667
|
+
const groupBadges$1 = (badges) => {
|
|
3668
|
+
const groups = {
|
|
3669
|
+
"In Progress": [],
|
|
3670
|
+
Completed: [],
|
|
3671
|
+
Available: [],
|
|
3672
|
+
Locked: []
|
|
3673
|
+
};
|
|
3674
|
+
badges.forEach((b) => {
|
|
3675
|
+
if (b.finishedAt) {
|
|
3676
|
+
groups.Completed.push(b);
|
|
3677
|
+
} else if (b.isLocked) {
|
|
3678
|
+
groups.Locked.push(b);
|
|
3679
|
+
} else if (b.startedAt) {
|
|
3680
|
+
groups["In Progress"].push(b);
|
|
3681
|
+
} else {
|
|
3682
|
+
groups.Available.push(b);
|
|
3683
|
+
}
|
|
3684
|
+
});
|
|
3685
|
+
return groups;
|
|
3686
|
+
};
|
|
3687
|
+
const pillStatus = (props) => {
|
|
3688
|
+
const hasProgress = !!props.startedAt || !!props.finishedAt || !!props.progress && props.progress > 0;
|
|
3689
|
+
return props.isLocked ? "Locked" : props.finishedAt ? "Completed" : hasProgress ? "In Progress" : "Available";
|
|
3690
|
+
};
|
|
3691
|
+
const BadgeListCard = (props) => {
|
|
3692
|
+
const { border, shadow, strip, pillAccent, pillLabel } = STATUS_CLASSNAMES$2[pillStatus(props)];
|
|
3693
|
+
const isDisabled = props.isLocked || !props.onOpen;
|
|
3694
|
+
return /* @__PURE__ */ React.createElement(
|
|
3695
|
+
"div",
|
|
3696
|
+
{
|
|
3697
|
+
onClick: () => !isDisabled && props.onOpen && props.onOpen(),
|
|
3698
|
+
className: `overflow-hidden rounded-2xl border bg-white ${border} ${shadow} ${isDisabled ? "" : "cursor-pointer hover:bg-slate-50"}`
|
|
3699
|
+
},
|
|
3700
|
+
/* @__PURE__ */ React.createElement("div", { className: `h-1 bg-gradient-to-r ${strip}` }),
|
|
3701
|
+
/* @__PURE__ */ React.createElement("div", { className: "flex flex-col items-center gap-2 p-4 text-center" }, /* @__PURE__ */ React.createElement("div", { className: props.isLocked ? "opacity-40" : "" }, /* @__PURE__ */ React.createElement(
|
|
3702
|
+
BadgeEmblem,
|
|
3703
|
+
{
|
|
3704
|
+
icon: props.icon,
|
|
3705
|
+
iconURL: props.iconURL,
|
|
3706
|
+
imageURL: props.imageURL,
|
|
3707
|
+
alt: props.displayName,
|
|
3708
|
+
level: props.level,
|
|
3709
|
+
size: "sm"
|
|
3710
|
+
}
|
|
3711
|
+
)), /* @__PURE__ */ React.createElement("div", { className: "w-full truncate text-xs font-bold text-dark-blue-400" }, props.displayName), /* @__PURE__ */ React.createElement(Pill, { label: pillLabel, accent: pillAccent }))
|
|
3712
|
+
);
|
|
3713
|
+
};
|
|
3714
|
+
const BadgeListRow = (props) => {
|
|
3715
|
+
const { pillAccent, pillLabel } = STATUS_CLASSNAMES$2[pillStatus(props)];
|
|
3716
|
+
const isDisabled = props.isLocked || !props.onOpen;
|
|
3717
|
+
return /* @__PURE__ */ React.createElement(
|
|
3718
|
+
"div",
|
|
3719
|
+
{
|
|
3720
|
+
onClick: () => !isDisabled && props.onOpen && props.onOpen(),
|
|
3721
|
+
className: `flex items-center gap-3 border-b border-slate-100 px-3.5 py-2.5 last:border-b-0 ${isDisabled ? "" : "cursor-pointer hover:bg-slate-50"}`
|
|
3722
|
+
},
|
|
3723
|
+
/* @__PURE__ */ React.createElement("div", { className: `shrink-0 ${props.isLocked ? "opacity-40" : ""}` }, /* @__PURE__ */ React.createElement(
|
|
3724
|
+
BadgeEmblem,
|
|
3725
|
+
{
|
|
3726
|
+
icon: props.icon,
|
|
3727
|
+
iconURL: props.iconURL,
|
|
3728
|
+
imageURL: props.imageURL,
|
|
3729
|
+
alt: props.displayName,
|
|
3730
|
+
level: props.level,
|
|
3731
|
+
size: "xxs"
|
|
3732
|
+
}
|
|
3733
|
+
)),
|
|
3734
|
+
/* @__PURE__ */ React.createElement("div", { className: "min-w-0 flex-1 truncate text-xs font-semibold text-dark-blue-400" }, props.displayName),
|
|
3735
|
+
/* @__PURE__ */ React.createElement(Pill, { label: pillLabel, accent: pillAccent })
|
|
3736
|
+
);
|
|
3737
|
+
};
|
|
3738
|
+
|
|
3739
|
+
const STATUS_CLASSNAMES$1 = {
|
|
3740
|
+
"In Progress": {
|
|
3741
|
+
border: "border-sky-blue-400/30",
|
|
3742
|
+
shadow: "shadow-[0_4px_20px_rgba(59,208,242,0.10)]",
|
|
3743
|
+
pillAccent: "cyan"
|
|
3744
|
+
},
|
|
3745
|
+
Completed: {
|
|
3746
|
+
border: "border-mint-400/30",
|
|
3747
|
+
shadow: "shadow-[0_4px_20px_rgba(30,226,175,0.10)]",
|
|
3748
|
+
pillAccent: "mint"
|
|
3749
|
+
},
|
|
3750
|
+
Available: {
|
|
3751
|
+
border: "border-gold-400/30",
|
|
3752
|
+
shadow: "shadow-[0_4px_20px_rgba(255,212,77,0.10)]",
|
|
3753
|
+
pillAccent: "gold"
|
|
3754
|
+
}
|
|
3755
|
+
};
|
|
3756
|
+
const BadgeDetail = (props) => {
|
|
3757
|
+
const criteria = props.criteria || [];
|
|
3758
|
+
const choices = {};
|
|
3759
|
+
const criteriaNames = criteria.map((c) => c.displayName).filter(Boolean);
|
|
3760
|
+
let xp = 0;
|
|
3761
|
+
let completed = 0;
|
|
3762
|
+
let anyStarted = false;
|
|
3763
|
+
(props.choices || []).forEach((c, i) => {
|
|
3764
|
+
var _a;
|
|
3765
|
+
const id = (_a = c.criterionId) != null ? _a : i;
|
|
3766
|
+
choices[id] = c;
|
|
3767
|
+
xp += c.xp || 0;
|
|
3768
|
+
if (c.completedAt)
|
|
3769
|
+
completed += 1;
|
|
3770
|
+
if (c.startedAt)
|
|
3771
|
+
anyStarted = true;
|
|
3772
|
+
});
|
|
3773
|
+
const status = props.finishedAt ? "Completed" : anyStarted || xp > 0 ? "In Progress" : "Available";
|
|
3774
|
+
const { border, shadow, pillAccent } = STATUS_CLASSNAMES$1[status];
|
|
3775
|
+
const showSubmit = !props.finishedAt && criteria.length > 0;
|
|
3776
|
+
return /* @__PURE__ */ React.createElement("div", { className: "flex max-w-2xl flex-col gap-3.5" }, props.onBack && /* @__PURE__ */ React.createElement("div", { onClick: props.onBack, className: "w-max cursor-pointer text-xs font-bold text-sky-blue-400" }, "\u2190 Back to My Badges"), /* @__PURE__ */ React.createElement("div", { className: `overflow-hidden rounded-2xl border bg-white ${border} ${shadow}` }, /* @__PURE__ */ React.createElement("div", { className: "flex gap-4 p-5" }, /* @__PURE__ */ React.createElement("div", { className: "shrink-0" }, /* @__PURE__ */ React.createElement(
|
|
3777
|
+
BadgeEmblem,
|
|
3778
|
+
{
|
|
3779
|
+
icon: props.icon,
|
|
3780
|
+
iconURL: props.iconURL,
|
|
3781
|
+
imageURL: props.imageURL,
|
|
3782
|
+
alt: props.displayName,
|
|
3783
|
+
level: props.level,
|
|
3784
|
+
size: "sm"
|
|
3785
|
+
}
|
|
3786
|
+
)), /* @__PURE__ */ React.createElement("div", { className: "flex-1" }, /* @__PURE__ */ React.createElement("div", { className: "text-lg font-extrabold text-dark-blue-400" }, props.displayName), /* @__PURE__ */ React.createElement("div", { className: "mt-2 text-xs text-slate-500" }, /* @__PURE__ */ React.createElement("span", { className: "font-semibold" }, "Level ", (props.level || 0) + 1, "."), !!xp && /* @__PURE__ */ React.createElement("span", { className: "ml-1.5 font-bold text-mint-400" }, xp, " XP")), !!props.summary && /* @__PURE__ */ React.createElement("div", { className: "mt-2 text-xs text-slate-500" }, props.summary), /* @__PURE__ */ React.createElement("div", { className: "mt-2.5" }, /* @__PURE__ */ React.createElement(Pill, { label: status, accent: pillAccent }))))), criteriaNames.length > 0 && /* @__PURE__ */ React.createElement("div", { className: `rounded-2xl border bg-white p-5 ${border} ${shadow}` }, /* @__PURE__ */ React.createElement("div", { className: "text-sm font-bold text-dark-blue-400" }, "Badge Criteria"), /* @__PURE__ */ React.createElement("div", { className: "mt-1.5 text-xs text-slate-500" }, "Complete 1 of each: ", criteriaNames.join(", ")), /* @__PURE__ */ React.createElement("div", { className: "mt-4 flex flex-col" }, criteria.map((c, i) => {
|
|
3787
|
+
var _a;
|
|
3788
|
+
const id = (_a = c.criterionId) != null ? _a : i;
|
|
3789
|
+
const choice = choices[id];
|
|
3790
|
+
if (!choice) {
|
|
3791
|
+
return null;
|
|
3792
|
+
}
|
|
3793
|
+
const buttonText = choice.completedAt ? "Review" : choice.startedAt ? "Continue" : "Start";
|
|
3794
|
+
return /* @__PURE__ */ React.createElement("div", { key: id, className: "flex items-center gap-3.5 border-b border-slate-100 py-3.5 last:border-b-0" }, /* @__PURE__ */ React.createElement(
|
|
3795
|
+
"div",
|
|
3796
|
+
{
|
|
3797
|
+
className: `h-[18px] w-[18px] shrink-0 rounded-full border-2 ${choice.completedAt ? "border-mint-400 bg-mint-400" : "border-slate-300 bg-transparent"}`
|
|
3798
|
+
}
|
|
3799
|
+
), /* @__PURE__ */ React.createElement("div", { className: "flex-1" }, /* @__PURE__ */ React.createElement("div", { className: "text-xs font-bold text-dark-blue-400" }, choice.activityName), /* @__PURE__ */ React.createElement("div", { className: "mt-0.5 text-[10.5px] text-slate-400" }, c.displayName, !!choice.xp && /* @__PURE__ */ React.createElement("span", { className: "ml-1.5 font-bold text-mint-400" }, choice.xp, " points"))), /* @__PURE__ */ React.createElement(
|
|
3800
|
+
"button",
|
|
3801
|
+
{
|
|
3802
|
+
type: "button",
|
|
3803
|
+
onClick: choice.onClick,
|
|
3804
|
+
className: `shrink-0 rounded-lg px-4 py-1.5 text-xs font-bold ${choice.completedAt ? "border border-slate-200 bg-white text-slate-600 hover:bg-slate-50" : "bg-dark-blue-400 text-white hover:bg-dark-blue-400/90"}`
|
|
3805
|
+
},
|
|
3806
|
+
buttonText
|
|
3807
|
+
));
|
|
3808
|
+
})), showSubmit && /* @__PURE__ */ React.createElement("div", { className: "mt-4 flex justify-end border-t border-slate-100 pt-3.5" }, /* @__PURE__ */ React.createElement(
|
|
3809
|
+
"button",
|
|
3810
|
+
{
|
|
3811
|
+
type: "button",
|
|
3812
|
+
disabled: !props.canSubmit && completed < criteria.length,
|
|
3813
|
+
onClick: props.onSubmit,
|
|
3814
|
+
className: "rounded-lg bg-gold-400 px-5 py-2 text-xs font-bold text-dark-blue-400 hover:bg-gold-400/90 disabled:cursor-not-allowed disabled:opacity-40"
|
|
3815
|
+
},
|
|
3816
|
+
"Submit"
|
|
3817
|
+
))));
|
|
3818
|
+
};
|
|
3819
|
+
|
|
3820
|
+
const DateSelection = (props) => {
|
|
3821
|
+
const today = new Date();
|
|
3822
|
+
const [month, setMonth] = React__default.useState(calend(props.date || today));
|
|
3823
|
+
return /* @__PURE__ */ React__default.createElement(Widget, { isLoading: props.isLoading }, /* @__PURE__ */ React__default.createElement(WidgetHeader, { divide: true }, /* @__PURE__ */ React__default.createElement(WidgetTitle, { icon: "calendar" }, "Calendar")), /* @__PURE__ */ React__default.createElement(WidgetBody, null, /* @__PURE__ */ React__default.createElement(MonthSelection, { month, setMonth }), /* @__PURE__ */ React__default.createElement(DaySelection, { date: props.date, month, setDate: props.setDate })));
|
|
3824
|
+
};
|
|
3825
|
+
const MonthSelection = (props) => {
|
|
3826
|
+
const month = props.month;
|
|
3827
|
+
const previousMonth = () => props.setMonth(new Date(month.getFullYear(), month.getMonth() - 1, 1));
|
|
3828
|
+
const nextMonth = () => props.setMonth(new Date(month.getFullYear(), month.getMonth() + 1, 1));
|
|
3829
|
+
return /* @__PURE__ */ React__default.createElement("div", { className: "flex items-center" }, /* @__PURE__ */ React__default.createElement("div", { className: "grow" }, /* @__PURE__ */ React__default.createElement("span", { className: "font-semibold text-md text-slate-300" }, formatDate$1(month, { month: "long" })), /* @__PURE__ */ React__default.createElement("span", { className: "text-md ml-1 text-slate-300" }, formatDate$1(month, { year: "numeric" }))), /* @__PURE__ */ React__default.createElement("div", { onClick: previousMonth, className: "cursor-pointer w-3 h-3 min-w-3 text-slate-300 hover:text-slate-500" }, /* @__PURE__ */ React__default.createElement(Icon$1, { name: "leftArrow" })), /* @__PURE__ */ React__default.createElement("div", { onClick: nextMonth, className: "cursor-pointer ml-2 w-3 h-3 min-w-3 text-slate-300 hover:text-slate-500" }, /* @__PURE__ */ React__default.createElement(Icon$1, { name: "rightArrow" })));
|
|
3830
|
+
};
|
|
3831
|
+
const DaySelection = (props) => {
|
|
3832
|
+
const today = new Date();
|
|
3833
|
+
const Days = [];
|
|
3834
|
+
const [start, end] = weeks(props.month, 6);
|
|
3835
|
+
for (let cur = start; cur <= end; cur = nextDate$1(cur)) {
|
|
3836
|
+
const isToday = isSameDate(today, cur);
|
|
3837
|
+
const isActive = isSameDate(props.date, cur);
|
|
3838
|
+
const isCurrentMonth = cur.getMonth() === props.month.getMonth();
|
|
3839
|
+
const onClick = () => props.setDate(isActive ? null : cur);
|
|
3840
|
+
Days.push(
|
|
3841
|
+
/* @__PURE__ */ React__default.createElement(
|
|
3842
|
+
DaySelectionOption,
|
|
3843
|
+
{
|
|
3844
|
+
key: cur.toString(),
|
|
3845
|
+
today: isToday,
|
|
3846
|
+
active: isActive,
|
|
3847
|
+
currentMonth: isCurrentMonth,
|
|
3848
|
+
onClick
|
|
3849
|
+
},
|
|
3850
|
+
cur.getDate()
|
|
3851
|
+
)
|
|
3852
|
+
);
|
|
3853
|
+
}
|
|
3854
|
+
return /* @__PURE__ */ React__default.createElement("div", { className: "mt-4 grid grid-cols-7 gap-1 text-sm justify-items-center" }, WEEKDAYS.map((date) => {
|
|
3855
|
+
return /* @__PURE__ */ React__default.createElement("span", { key: date, className: "w-8 text-center text-slate-400" }, date);
|
|
3856
|
+
}), Days);
|
|
3857
|
+
};
|
|
3858
|
+
const DaySelectionOption = (props) => {
|
|
3859
|
+
const className = builder("w-8 h-8 text-center cursor-pointer p-2").append("hover:text-white hover:font-semibold hover:bg-sky-400").if(props.active, "text-white font-semibold bg-sky-400").if(!props.active && props.today, "font-semibold bg-slate-100 rounded-full").if(!props.active && !props.today && props.currentMonth, "text-slate-500 font-semibold").if(!props.active && !props.today && !props.currentMonth, "text-slate-400").build();
|
|
3860
|
+
return /* @__PURE__ */ React__default.createElement("span", { onClick: props.onClick, className }, props.children);
|
|
3861
|
+
};
|
|
3862
|
+
const WEEKDAYS = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"];
|
|
3863
|
+
const weeks = (date, weeks2) => {
|
|
3864
|
+
const start = new Date(date.getFullYear(), date.getMonth(), date.getDate() - date.getDay());
|
|
3865
|
+
const end = new Date(start.getFullYear(), start.getMonth(), start.getDate() + weeks2 * 7 - 1);
|
|
3866
|
+
return [start, end];
|
|
3621
3867
|
};
|
|
3622
3868
|
const calend = (date) => {
|
|
3623
3869
|
return new Date(date.getFullYear(), date.getMonth(), 1);
|
|
@@ -3779,21 +4025,21 @@ const linkify = (text) => {
|
|
|
3779
4025
|
return replacedText;
|
|
3780
4026
|
};
|
|
3781
4027
|
|
|
3782
|
-
var __defProp$
|
|
4028
|
+
var __defProp$f = Object.defineProperty;
|
|
3783
4029
|
var __defProps$8 = Object.defineProperties;
|
|
3784
4030
|
var __getOwnPropDescs$8 = Object.getOwnPropertyDescriptors;
|
|
3785
|
-
var __getOwnPropSymbols$
|
|
3786
|
-
var __hasOwnProp$
|
|
3787
|
-
var __propIsEnum$
|
|
3788
|
-
var __defNormalProp$
|
|
3789
|
-
var __spreadValues$
|
|
4031
|
+
var __getOwnPropSymbols$f = Object.getOwnPropertySymbols;
|
|
4032
|
+
var __hasOwnProp$f = Object.prototype.hasOwnProperty;
|
|
4033
|
+
var __propIsEnum$f = Object.prototype.propertyIsEnumerable;
|
|
4034
|
+
var __defNormalProp$f = (obj, key, value) => key in obj ? __defProp$f(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
4035
|
+
var __spreadValues$f = (a, b) => {
|
|
3790
4036
|
for (var prop in b || (b = {}))
|
|
3791
|
-
if (__hasOwnProp$
|
|
3792
|
-
__defNormalProp$
|
|
3793
|
-
if (__getOwnPropSymbols$
|
|
3794
|
-
for (var prop of __getOwnPropSymbols$
|
|
3795
|
-
if (__propIsEnum$
|
|
3796
|
-
__defNormalProp$
|
|
4037
|
+
if (__hasOwnProp$f.call(b, prop))
|
|
4038
|
+
__defNormalProp$f(a, prop, b[prop]);
|
|
4039
|
+
if (__getOwnPropSymbols$f)
|
|
4040
|
+
for (var prop of __getOwnPropSymbols$f(b)) {
|
|
4041
|
+
if (__propIsEnum$f.call(b, prop))
|
|
4042
|
+
__defNormalProp$f(a, prop, b[prop]);
|
|
3797
4043
|
}
|
|
3798
4044
|
return a;
|
|
3799
4045
|
};
|
|
@@ -3824,28 +4070,28 @@ const FormItem = (props) => {
|
|
|
3824
4070
|
}
|
|
3825
4071
|
}, [isTextError]);
|
|
3826
4072
|
const marginBottom = props.format === "text" ? "-mb-7" : "";
|
|
3827
|
-
return /* @__PURE__ */ React__default.createElement("div", { className: `bg-white rounded-md p-5 shadow-sm grid grid-cols-1 gap-y-8 ${itemContainerError} ${marginBottom}` }, props.displayName && /* @__PURE__ */ React__default.createElement("div", { className: "flex gap-x-1" }, /* @__PURE__ */ React__default.createElement("div", { className: "flex items-start gap-x-4" }, props.format === "question" && /* @__PURE__ */ React__default.createElement("div", { className: `${checkIconColor} w-5 h-5 mt-1` }, /* @__PURE__ */ React__default.createElement(Icon$1, { name: "positive" })), /* @__PURE__ */ React__default.createElement("div", { className: "grow max-w-lg" }, props.displayName && /* @__PURE__ */ React__default.createElement("p", { className: "flex-auto text-lg text-slate-600 font-semibold whitespace-pre-line" }, linkify(props.displayName)), props.description && /* @__PURE__ */ React__default.createElement("p", { className: "text-sm text-slate-400 whitespace-pre-line" }, linkify(props.description)))), props.required && /* @__PURE__ */ React__default.createElement("p", { className: "text-sm text-rose-600" }, "*")), !props.children && props.format !== "text" && /* @__PURE__ */ React__default.createElement("div", { className: `${contentMaxWidth} ml-1` }, /* @__PURE__ */ React__default.createElement(Switch, __spreadProps$8(__spreadValues$
|
|
4073
|
+
return /* @__PURE__ */ React__default.createElement("div", { className: `bg-white rounded-md p-5 shadow-sm grid grid-cols-1 gap-y-8 ${itemContainerError} ${marginBottom}` }, props.displayName && /* @__PURE__ */ React__default.createElement("div", { className: "flex gap-x-1" }, /* @__PURE__ */ React__default.createElement("div", { className: "flex items-start gap-x-4" }, props.format === "question" && /* @__PURE__ */ React__default.createElement("div", { className: `${checkIconColor} w-5 h-5 mt-1` }, /* @__PURE__ */ React__default.createElement(Icon$1, { name: "positive" })), /* @__PURE__ */ React__default.createElement("div", { className: "grow max-w-lg" }, props.displayName && /* @__PURE__ */ React__default.createElement("p", { className: "flex-auto text-lg text-slate-600 font-semibold whitespace-pre-line" }, linkify(props.displayName)), props.description && /* @__PURE__ */ React__default.createElement("p", { className: "text-sm text-slate-400 whitespace-pre-line" }, linkify(props.description)))), props.required && /* @__PURE__ */ React__default.createElement("p", { className: "text-sm text-rose-600" }, "*")), !props.children && props.format !== "text" && /* @__PURE__ */ React__default.createElement("div", { className: `${contentMaxWidth} ml-1` }, /* @__PURE__ */ React__default.createElement(Switch, __spreadProps$8(__spreadValues$f({}, props), { onTextBlur })), showError && /* @__PURE__ */ React__default.createElement("div", { className: "text-rose-300 flex items-center gap-x-2 mt-4" }, /* @__PURE__ */ React__default.createElement("div", { className: "w-4 h-4" }, /* @__PURE__ */ React__default.createElement(Icon$1, { name: "negative" })), /* @__PURE__ */ React__default.createElement("span", { className: "grow text-sm" }, "Must be a minimum of ", minimum, " characters."))), props.children);
|
|
3828
4074
|
};
|
|
3829
4075
|
const Switch = (props) => {
|
|
3830
4076
|
switch (true) {
|
|
3831
4077
|
case props.format === "embed":
|
|
3832
|
-
return /* @__PURE__ */ React__default.createElement(Embed, __spreadValues$
|
|
4078
|
+
return /* @__PURE__ */ React__default.createElement(Embed, __spreadValues$f({}, props));
|
|
3833
4079
|
case props.format === "image":
|
|
3834
|
-
return /* @__PURE__ */ React__default.createElement(Image, __spreadValues$
|
|
4080
|
+
return /* @__PURE__ */ React__default.createElement(Image, __spreadValues$f({}, props));
|
|
3835
4081
|
case props.questionType === "radio":
|
|
3836
|
-
return /* @__PURE__ */ React__default.createElement(RadioQuestion, __spreadValues$
|
|
4082
|
+
return /* @__PURE__ */ React__default.createElement(RadioQuestion, __spreadValues$f({}, props));
|
|
3837
4083
|
case props.questionType === "checkbox":
|
|
3838
|
-
return /* @__PURE__ */ React__default.createElement(CheckboxQuestion, __spreadValues$
|
|
4084
|
+
return /* @__PURE__ */ React__default.createElement(CheckboxQuestion, __spreadValues$f({}, props));
|
|
3839
4085
|
case props.questionType === "drop down":
|
|
3840
|
-
return /* @__PURE__ */ React__default.createElement(DropDownQuestion, __spreadValues$
|
|
4086
|
+
return /* @__PURE__ */ React__default.createElement(DropDownQuestion, __spreadValues$f({}, props));
|
|
3841
4087
|
case props.questionType === "file upload":
|
|
3842
|
-
return /* @__PURE__ */ React__default.createElement(FileUploadQuestion, __spreadValues$
|
|
4088
|
+
return /* @__PURE__ */ React__default.createElement(FileUploadQuestion, __spreadValues$f({}, props));
|
|
3843
4089
|
case props.questionType === "text":
|
|
3844
|
-
return /* @__PURE__ */ React__default.createElement(TextQuestion, __spreadValues$
|
|
4090
|
+
return /* @__PURE__ */ React__default.createElement(TextQuestion, __spreadValues$f({}, props));
|
|
3845
4091
|
case props.questionType === "date":
|
|
3846
|
-
return /* @__PURE__ */ React__default.createElement(DateQuestion, __spreadValues$
|
|
4092
|
+
return /* @__PURE__ */ React__default.createElement(DateQuestion, __spreadValues$f({}, props));
|
|
3847
4093
|
case props.questionType === "time":
|
|
3848
|
-
return /* @__PURE__ */ React__default.createElement(TimeQuestion, __spreadValues$
|
|
4094
|
+
return /* @__PURE__ */ React__default.createElement(TimeQuestion, __spreadValues$f({}, props));
|
|
3849
4095
|
default:
|
|
3850
4096
|
return null;
|
|
3851
4097
|
}
|
|
@@ -4202,21 +4448,21 @@ const FormSubmitDialog$1 = (props) => {
|
|
|
4202
4448
|
))));
|
|
4203
4449
|
};
|
|
4204
4450
|
|
|
4205
|
-
var __defProp$
|
|
4451
|
+
var __defProp$e = Object.defineProperty;
|
|
4206
4452
|
var __defProps$7 = Object.defineProperties;
|
|
4207
4453
|
var __getOwnPropDescs$7 = Object.getOwnPropertyDescriptors;
|
|
4208
|
-
var __getOwnPropSymbols$
|
|
4209
|
-
var __hasOwnProp$
|
|
4210
|
-
var __propIsEnum$
|
|
4211
|
-
var __defNormalProp$
|
|
4212
|
-
var __spreadValues$
|
|
4454
|
+
var __getOwnPropSymbols$e = Object.getOwnPropertySymbols;
|
|
4455
|
+
var __hasOwnProp$e = Object.prototype.hasOwnProperty;
|
|
4456
|
+
var __propIsEnum$e = Object.prototype.propertyIsEnumerable;
|
|
4457
|
+
var __defNormalProp$e = (obj, key, value) => key in obj ? __defProp$e(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
4458
|
+
var __spreadValues$e = (a, b) => {
|
|
4213
4459
|
for (var prop in b || (b = {}))
|
|
4214
|
-
if (__hasOwnProp$
|
|
4215
|
-
__defNormalProp$
|
|
4216
|
-
if (__getOwnPropSymbols$
|
|
4217
|
-
for (var prop of __getOwnPropSymbols$
|
|
4218
|
-
if (__propIsEnum$
|
|
4219
|
-
__defNormalProp$
|
|
4460
|
+
if (__hasOwnProp$e.call(b, prop))
|
|
4461
|
+
__defNormalProp$e(a, prop, b[prop]);
|
|
4462
|
+
if (__getOwnPropSymbols$e)
|
|
4463
|
+
for (var prop of __getOwnPropSymbols$e(b)) {
|
|
4464
|
+
if (__propIsEnum$e.call(b, prop))
|
|
4465
|
+
__defNormalProp$e(a, prop, b[prop]);
|
|
4220
4466
|
}
|
|
4221
4467
|
return a;
|
|
4222
4468
|
};
|
|
@@ -4315,8 +4561,7 @@ const LearningForm = (props) => {
|
|
|
4315
4561
|
});
|
|
4316
4562
|
}
|
|
4317
4563
|
};
|
|
4318
|
-
|
|
4319
|
-
return /* @__PURE__ */ React__default.createElement("div", { className: `grid grid-cols-1 gap-y-12 ${bg} px-12 pb-24 lg:px-56` }, /* @__PURE__ */ React__default.createElement("div", { className: "w-full max-w-[64rem] m-auto md:grid md:grid-cols-2 bg-white rounded-b overflow-hidden shadow-sm" }, /* @__PURE__ */ React__default.createElement("div", { className: "grid grid-cols-1 gap-y-6 px-8 py-8 text-slate-600 max-w-md" }, /* @__PURE__ */ React__default.createElement(
|
|
4564
|
+
return /* @__PURE__ */ React__default.createElement("div", { className: "grid grid-cols-1 gap-y-12 px-12 pb-24 lg:px-56" }, /* @__PURE__ */ React__default.createElement("div", { className: "w-full max-w-[64rem] m-auto md:grid md:grid-cols-2 bg-white rounded-2xl overflow-hidden border border-sky-blue-400/30 shadow-[0_4px_20px_rgba(59,208,242,0.10)]" }, /* @__PURE__ */ React__default.createElement("div", { className: "grid grid-cols-1 gap-y-6 px-8 py-8 text-dark-blue-400 max-w-md" }, /* @__PURE__ */ React__default.createElement(
|
|
4320
4565
|
"div",
|
|
4321
4566
|
{
|
|
4322
4567
|
onClick: () => {
|
|
@@ -4326,12 +4571,12 @@ const LearningForm = (props) => {
|
|
|
4326
4571
|
setShowExitDialogue(true);
|
|
4327
4572
|
}
|
|
4328
4573
|
},
|
|
4329
|
-
className: "flex h-max gap-x-2 cursor-pointer items-center text-slate-
|
|
4574
|
+
className: "flex h-max gap-x-2 cursor-pointer items-center text-slate-400 hover:text-sky-blue-400"
|
|
4330
4575
|
},
|
|
4331
4576
|
/* @__PURE__ */ React__default.createElement("div", { className: "w-3 h-3 min-w-3" }, /* @__PURE__ */ React__default.createElement(Icon$1, { name: "leftArrow" })),
|
|
4332
|
-
/* @__PURE__ */ React__default.createElement("span", { className: "text-
|
|
4333
|
-
), !!props.displayName && /* @__PURE__ */ React__default.createElement("h2", { className: "h-max font-
|
|
4334
|
-
return /* @__PURE__ */ React__default.createElement(FormItem, __spreadProps$7(__spreadValues$
|
|
4577
|
+
/* @__PURE__ */ React__default.createElement("span", { className: "text-xs font-bold" }, "Back")
|
|
4578
|
+
), !!props.displayName && /* @__PURE__ */ React__default.createElement("h2", { className: "h-max font-extrabold text-2xl text-dark-blue-400" }, props.displayName), !!props.description && /* @__PURE__ */ React__default.createElement("p", { className: "h-max max-h-[14rem] overflow-y-auto whitespace-pre-line text-sm text-slate-500 leading-relaxed" }, props.description), !!props.eta && /* @__PURE__ */ React__default.createElement("p", { className: "text-xs h-max font-bold text-dark-blue-400" }, "Estimated Completion Time: ", props.eta)), props.imageURL ? /* @__PURE__ */ React__default.createElement("img", { className: "grow h-full max-h-[30rem] w-full object-cover", alt: props.displayName, src: props.imageURL }) : /* @__PURE__ */ React__default.createElement("div", { className: "relative grow h-full min-h-[14rem] max-h-[30rem] w-full overflow-hidden bg-[linear-gradient(160deg,#232A3A,#3BD0F2)]" }, /* @__PURE__ */ React__default.createElement("div", { className: "absolute inset-0 [background-image:radial-gradient(circle,rgba(255,255,255,0.15)_1px,transparent_1px)] [background-size:20px_20px]" }), /* @__PURE__ */ React__default.createElement("div", { className: "absolute inset-0 flex items-center justify-center" }, /* @__PURE__ */ React__default.createElement("svg", { width: "56", height: "56", viewBox: "0 0 24 24", fill: "none", className: "text-white/45" }, /* @__PURE__ */ React__default.createElement("path", { d: "M6 2h9l5 5v15a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1Z", stroke: "currentColor", strokeWidth: "1.5" }), /* @__PURE__ */ React__default.createElement("path", { d: "M14 2v6h6M8 12h8M8 16h8M8 8h3", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" }))))), /* @__PURE__ */ React__default.createElement("form", { className: "w-full max-w-[64rem] m-auto grid grid-cols-1 gap-y-12", onSubmit }, items.map((item) => {
|
|
4579
|
+
return /* @__PURE__ */ React__default.createElement(FormItem, __spreadProps$7(__spreadValues$e({ key: item.itemId }, item), { minText: 0, disabled: !!props.preview }));
|
|
4335
4580
|
}), /* @__PURE__ */ React__default.createElement(
|
|
4336
4581
|
FormItem,
|
|
4337
4582
|
{
|
|
@@ -4346,28 +4591,20 @@ const LearningForm = (props) => {
|
|
|
4346
4591
|
responses: reflection ? [reflection] : ["My Reflection: "]
|
|
4347
4592
|
}
|
|
4348
4593
|
), /* @__PURE__ */ React__default.createElement(FormItem, null, /* @__PURE__ */ React__default.createElement(Rating, { disabled: !canReflect || !!props.preview, rating, setRating })), !props.preview && /* @__PURE__ */ React__default.createElement("div", { className: "w-max m-auto" }, /* @__PURE__ */ React__default.createElement(
|
|
4349
|
-
|
|
4594
|
+
"button",
|
|
4350
4595
|
{
|
|
4351
4596
|
type: "submit",
|
|
4352
|
-
|
|
4353
|
-
|
|
4354
|
-
|
|
4355
|
-
border: "rounded",
|
|
4356
|
-
theme: "dark",
|
|
4357
|
-
text: "Submit"
|
|
4358
|
-
}
|
|
4597
|
+
className: "rounded-xl bg-dark-blue-400 px-7 py-2.5 text-xs font-bold text-white hover:bg-dark-blue-400/90"
|
|
4598
|
+
},
|
|
4599
|
+
"Submit"
|
|
4359
4600
|
))), props.stopWatch && /* @__PURE__ */ React__default.createElement("div", { className: `fixed bottom-20 right-5 transition ease-in-out mb-5` }, props.stopWatch), !props.preview && /* @__PURE__ */ React__default.createElement("div", { className: `fixed bottom-5 right-14 transition ease-in-out ${saveVisibility}` }, /* @__PURE__ */ React__default.createElement(
|
|
4360
|
-
|
|
4601
|
+
"button",
|
|
4361
4602
|
{
|
|
4362
4603
|
type: "button",
|
|
4363
|
-
|
|
4364
|
-
|
|
4365
|
-
|
|
4366
|
-
|
|
4367
|
-
theme: "dark",
|
|
4368
|
-
text: "Save",
|
|
4369
|
-
onClick: saveDraft
|
|
4370
|
-
}
|
|
4604
|
+
onClick: saveDraft,
|
|
4605
|
+
className: "rounded-xl bg-dark-blue-400 px-7 py-2.5 text-xs font-bold text-white hover:bg-dark-blue-400/90"
|
|
4606
|
+
},
|
|
4607
|
+
"Save"
|
|
4371
4608
|
)), showExitDialogue && /* @__PURE__ */ React__default.createElement("div", { className: "fixed top-0 left-0 px-4 md:px-2 w-screen h-screen py-5 transition ease-in-out duration-400 bg-gray-200/75 z-40" }, /* @__PURE__ */ React__default.createElement("div", { className: "flex md:w-max h-screen gap-x-2 justify-items-center content-center m-auto" }, /* @__PURE__ */ React__default.createElement(
|
|
4372
4609
|
FormExitDialog$1,
|
|
4373
4610
|
{
|
|
@@ -4384,45 +4621,45 @@ const Rating = (props) => {
|
|
|
4384
4621
|
const maxPoints = 5;
|
|
4385
4622
|
const circlePointer = props.disabled ? "" : "cursor-pointer";
|
|
4386
4623
|
const buttons = Array.from({ length: maxPoints }, (_, i) => {
|
|
4387
|
-
const color = i < confidence ? "
|
|
4388
|
-
return /* @__PURE__ */ React__default.createElement("div", { key: i, onMouseEnter: () => onMouseEnter(i + 1), onMouseLeave }, /* @__PURE__ */ React__default.createElement("div", { className: `${circlePointer} h-4 w-4 ${color}`, onClick: () => onClick(i + 1) }
|
|
4624
|
+
const color = i < confidence ? "bg-gold-400" : "bg-slate-200";
|
|
4625
|
+
return /* @__PURE__ */ React__default.createElement("div", { key: i, onMouseEnter: () => onMouseEnter(i + 1), onMouseLeave }, /* @__PURE__ */ React__default.createElement("div", { className: `${circlePointer} h-4 w-4 rounded-full ${color}`, onClick: () => onClick(i + 1) }));
|
|
4389
4626
|
});
|
|
4390
4627
|
const labels = Array.from({ length: maxPoints }, (_, i) => {
|
|
4391
4628
|
if (i === 0) {
|
|
4392
|
-
return /* @__PURE__ */ React__default.createElement("p", { key: i, className: "inline-block text-
|
|
4629
|
+
return /* @__PURE__ */ React__default.createElement("p", { key: i, className: "inline-block text-[11.5px] font-bold text-sky-blue-400" }, "Poor");
|
|
4393
4630
|
}
|
|
4394
4631
|
if (i === maxPoints - 1) {
|
|
4395
|
-
return /* @__PURE__ */ React__default.createElement("p", { key: i, className: "inline-block text-
|
|
4632
|
+
return /* @__PURE__ */ React__default.createElement("p", { key: i, className: "inline-block text-[11.5px] font-bold text-sky-blue-400" }, "Amazing");
|
|
4396
4633
|
}
|
|
4397
|
-
return /* @__PURE__ */ React__default.createElement("p", { key: i, className: "inline-block
|
|
4634
|
+
return /* @__PURE__ */ React__default.createElement("p", { key: i, className: "inline-block" });
|
|
4398
4635
|
});
|
|
4399
4636
|
React__default.useEffect(() => {
|
|
4400
4637
|
if (props.rating && props.rating !== confidence) {
|
|
4401
4638
|
setConfidence(props.rating);
|
|
4402
4639
|
}
|
|
4403
4640
|
}, [props.rating]);
|
|
4404
|
-
return /* @__PURE__ */ React__default.createElement("div", { className: "m-auto inline-block py-4" }, /* @__PURE__ */ React__default.createElement("h6", { className: "font-bold pb-2 mb-4 text-
|
|
4641
|
+
return /* @__PURE__ */ React__default.createElement("div", { className: "m-auto inline-block py-4" }, /* @__PURE__ */ React__default.createElement("h6", { className: "font-bold pb-2 mb-4 text-base text-dark-blue-400" }, "Almost there, rate this activity before submitting."), /* @__PURE__ */ React__default.createElement("div", { className: "w-max m-auto" }, /* @__PURE__ */ React__default.createElement("div", { className: `ml-5 w-[17.7rem] grid grid-cols-5 justify-self-center items-center gap-7 mb-2` }, buttons), /* @__PURE__ */ React__default.createElement(
|
|
4405
4642
|
"div",
|
|
4406
4643
|
{
|
|
4407
|
-
className: `ml-5 w-[16.7rem] text-[0.5rem]
|
|
4644
|
+
className: `ml-5 w-[16.7rem] text-[0.5rem] grid grid-cols-5 justify-self-center items-center`
|
|
4408
4645
|
},
|
|
4409
4646
|
labels
|
|
4410
4647
|
)));
|
|
4411
4648
|
};
|
|
4412
4649
|
|
|
4413
|
-
var __defProp$
|
|
4414
|
-
var __getOwnPropSymbols$
|
|
4415
|
-
var __hasOwnProp$
|
|
4416
|
-
var __propIsEnum$
|
|
4417
|
-
var __defNormalProp$
|
|
4418
|
-
var __spreadValues$
|
|
4650
|
+
var __defProp$d = Object.defineProperty;
|
|
4651
|
+
var __getOwnPropSymbols$d = Object.getOwnPropertySymbols;
|
|
4652
|
+
var __hasOwnProp$d = Object.prototype.hasOwnProperty;
|
|
4653
|
+
var __propIsEnum$d = Object.prototype.propertyIsEnumerable;
|
|
4654
|
+
var __defNormalProp$d = (obj, key, value) => key in obj ? __defProp$d(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
4655
|
+
var __spreadValues$d = (a, b) => {
|
|
4419
4656
|
for (var prop in b || (b = {}))
|
|
4420
|
-
if (__hasOwnProp$
|
|
4421
|
-
__defNormalProp$
|
|
4422
|
-
if (__getOwnPropSymbols$
|
|
4423
|
-
for (var prop of __getOwnPropSymbols$
|
|
4424
|
-
if (__propIsEnum$
|
|
4425
|
-
__defNormalProp$
|
|
4657
|
+
if (__hasOwnProp$d.call(b, prop))
|
|
4658
|
+
__defNormalProp$d(a, prop, b[prop]);
|
|
4659
|
+
if (__getOwnPropSymbols$d)
|
|
4660
|
+
for (var prop of __getOwnPropSymbols$d(b)) {
|
|
4661
|
+
if (__propIsEnum$d.call(b, prop))
|
|
4662
|
+
__defNormalProp$d(a, prop, b[prop]);
|
|
4426
4663
|
}
|
|
4427
4664
|
return a;
|
|
4428
4665
|
};
|
|
@@ -4431,7 +4668,7 @@ const NavLink = (props) => {
|
|
|
4431
4668
|
const config = defaultConfig();
|
|
4432
4669
|
withMenu(config, props.menu);
|
|
4433
4670
|
withName(config, props.name);
|
|
4434
|
-
return /* @__PURE__ */ React__default.createElement(Button, __spreadValues$
|
|
4671
|
+
return /* @__PURE__ */ React__default.createElement(Button, __spreadValues$d({ disabled: props.disabled, active: props.active, onClick }, config));
|
|
4435
4672
|
};
|
|
4436
4673
|
const defaultConfig = () => {
|
|
4437
4674
|
return {};
|
|
@@ -4506,21 +4743,21 @@ const withName = (config, name) => {
|
|
|
4506
4743
|
}
|
|
4507
4744
|
};
|
|
4508
4745
|
|
|
4509
|
-
var __defProp$
|
|
4746
|
+
var __defProp$c = Object.defineProperty;
|
|
4510
4747
|
var __defProps$6 = Object.defineProperties;
|
|
4511
4748
|
var __getOwnPropDescs$6 = Object.getOwnPropertyDescriptors;
|
|
4512
|
-
var __getOwnPropSymbols$
|
|
4513
|
-
var __hasOwnProp$
|
|
4514
|
-
var __propIsEnum$
|
|
4515
|
-
var __defNormalProp$
|
|
4516
|
-
var __spreadValues$
|
|
4749
|
+
var __getOwnPropSymbols$c = Object.getOwnPropertySymbols;
|
|
4750
|
+
var __hasOwnProp$c = Object.prototype.hasOwnProperty;
|
|
4751
|
+
var __propIsEnum$c = Object.prototype.propertyIsEnumerable;
|
|
4752
|
+
var __defNormalProp$c = (obj, key, value) => key in obj ? __defProp$c(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
4753
|
+
var __spreadValues$c = (a, b) => {
|
|
4517
4754
|
for (var prop in b || (b = {}))
|
|
4518
|
-
if (__hasOwnProp$
|
|
4519
|
-
__defNormalProp$
|
|
4520
|
-
if (__getOwnPropSymbols$
|
|
4521
|
-
for (var prop of __getOwnPropSymbols$
|
|
4522
|
-
if (__propIsEnum$
|
|
4523
|
-
__defNormalProp$
|
|
4755
|
+
if (__hasOwnProp$c.call(b, prop))
|
|
4756
|
+
__defNormalProp$c(a, prop, b[prop]);
|
|
4757
|
+
if (__getOwnPropSymbols$c)
|
|
4758
|
+
for (var prop of __getOwnPropSymbols$c(b)) {
|
|
4759
|
+
if (__propIsEnum$c.call(b, prop))
|
|
4760
|
+
__defNormalProp$c(a, prop, b[prop]);
|
|
4524
4761
|
}
|
|
4525
4762
|
return a;
|
|
4526
4763
|
};
|
|
@@ -4542,7 +4779,7 @@ const NavBar = (props) => {
|
|
|
4542
4779
|
return null;
|
|
4543
4780
|
})), /* @__PURE__ */ React__default.createElement("div", { className: "inline-block md:hidden" }, /* @__PURE__ */ React__default.createElement(NavLink, { onClick: () => setSecondary(!secondary), name: menuIcon })), /* @__PURE__ */ React__default.createElement("div", { className: secondaryClassName }, React__default.Children.map(props.children, (Link) => {
|
|
4544
4781
|
if (Link && Link.props.name !== "home") {
|
|
4545
|
-
return /* @__PURE__ */ React__default.createElement("div", { className: "relative" }, /* @__PURE__ */ React__default.createElement(NavLink, __spreadProps$6(__spreadValues$
|
|
4782
|
+
return /* @__PURE__ */ React__default.createElement("div", { className: "relative" }, /* @__PURE__ */ React__default.createElement(NavLink, __spreadProps$6(__spreadValues$c({}, Link.props), { menu: true })));
|
|
4546
4783
|
}
|
|
4547
4784
|
return null;
|
|
4548
4785
|
}))));
|
|
@@ -4639,28 +4876,28 @@ const LegalAgreement = (props) => {
|
|
|
4639
4876
|
)));
|
|
4640
4877
|
};
|
|
4641
4878
|
|
|
4642
|
-
var __defProp$
|
|
4879
|
+
var __defProp$b = Object.defineProperty;
|
|
4643
4880
|
var __defProps$5 = Object.defineProperties;
|
|
4644
4881
|
var __getOwnPropDescs$5 = Object.getOwnPropertyDescriptors;
|
|
4645
|
-
var __getOwnPropSymbols$
|
|
4646
|
-
var __hasOwnProp$
|
|
4647
|
-
var __propIsEnum$
|
|
4648
|
-
var __defNormalProp$
|
|
4649
|
-
var __spreadValues$
|
|
4882
|
+
var __getOwnPropSymbols$b = Object.getOwnPropertySymbols;
|
|
4883
|
+
var __hasOwnProp$b = Object.prototype.hasOwnProperty;
|
|
4884
|
+
var __propIsEnum$b = Object.prototype.propertyIsEnumerable;
|
|
4885
|
+
var __defNormalProp$b = (obj, key, value) => key in obj ? __defProp$b(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
4886
|
+
var __spreadValues$b = (a, b) => {
|
|
4650
4887
|
for (var prop in b || (b = {}))
|
|
4651
|
-
if (__hasOwnProp$
|
|
4652
|
-
__defNormalProp$
|
|
4653
|
-
if (__getOwnPropSymbols$
|
|
4654
|
-
for (var prop of __getOwnPropSymbols$
|
|
4655
|
-
if (__propIsEnum$
|
|
4656
|
-
__defNormalProp$
|
|
4888
|
+
if (__hasOwnProp$b.call(b, prop))
|
|
4889
|
+
__defNormalProp$b(a, prop, b[prop]);
|
|
4890
|
+
if (__getOwnPropSymbols$b)
|
|
4891
|
+
for (var prop of __getOwnPropSymbols$b(b)) {
|
|
4892
|
+
if (__propIsEnum$b.call(b, prop))
|
|
4893
|
+
__defNormalProp$b(a, prop, b[prop]);
|
|
4657
4894
|
}
|
|
4658
4895
|
return a;
|
|
4659
4896
|
};
|
|
4660
4897
|
var __spreadProps$5 = (a, b) => __defProps$5(a, __getOwnPropDescs$5(b));
|
|
4661
4898
|
const CommunitySearch = (props) => {
|
|
4662
4899
|
const [accessCode, setAccessCode] = React__default.useState("");
|
|
4663
|
-
return /* @__PURE__ */ React__default.createElement("div", { className: "w-full md:w-[30rem] bg-white grid grid-cols-1 gap-4 rounded-md border border-slate-200 px-8 py-5 shadow-sm" }, /* @__PURE__ */ React__default.createElement("div", { className: "text-slate-600" }, /* @__PURE__ */ React__default.createElement("p", { className: "font-bold text-2xl" }, "Which is your community?"), /* @__PURE__ */ React__default.createElement("p", { className: "text-sm" }, "Pick your community.")), /* @__PURE__ */ React__default.createElement(Search, __spreadProps$5(__spreadValues$
|
|
4900
|
+
return /* @__PURE__ */ React__default.createElement("div", { className: "w-full md:w-[30rem] bg-white grid grid-cols-1 gap-4 rounded-md border border-slate-200 px-8 py-5 shadow-sm" }, /* @__PURE__ */ React__default.createElement("div", { className: "text-slate-600" }, /* @__PURE__ */ React__default.createElement("p", { className: "font-bold text-2xl" }, "Which is your community?"), /* @__PURE__ */ React__default.createElement("p", { className: "text-sm" }, "Pick your community.")), /* @__PURE__ */ React__default.createElement(Search, __spreadProps$5(__spreadValues$b({}, props), { autofocus: !accessCode, placeholder: props.name })), !!props.name && /* @__PURE__ */ React__default.createElement("div", { className: "text-slate-600 grid-cols-1 gap-2" }, /* @__PURE__ */ React__default.createElement("div", null, /* @__PURE__ */ React__default.createElement("span", { className: "text-sm" }, "Enter the access code for"), /* @__PURE__ */ React__default.createElement("span", { className: "ml-1 font-semibold text-sm" }, props.name), /* @__PURE__ */ React__default.createElement("span", { className: "text-sm" }, ".")), /* @__PURE__ */ React__default.createElement("div", { className: "mt-2 content-center grid grid-cols-3 gap-x-2" }, /* @__PURE__ */ React__default.createElement(
|
|
4664
4901
|
"input",
|
|
4665
4902
|
{
|
|
4666
4903
|
disabled: props.disabled,
|
|
@@ -4795,27 +5032,27 @@ const Welcome = (props) => {
|
|
|
4795
5032
|
)));
|
|
4796
5033
|
};
|
|
4797
5034
|
|
|
4798
|
-
var __defProp$
|
|
5035
|
+
var __defProp$a = Object.defineProperty;
|
|
4799
5036
|
var __defProps$4 = Object.defineProperties;
|
|
4800
5037
|
var __getOwnPropDescs$4 = Object.getOwnPropertyDescriptors;
|
|
4801
|
-
var __getOwnPropSymbols$
|
|
4802
|
-
var __hasOwnProp$
|
|
4803
|
-
var __propIsEnum$
|
|
4804
|
-
var __defNormalProp$
|
|
4805
|
-
var __spreadValues$
|
|
5038
|
+
var __getOwnPropSymbols$a = Object.getOwnPropertySymbols;
|
|
5039
|
+
var __hasOwnProp$a = Object.prototype.hasOwnProperty;
|
|
5040
|
+
var __propIsEnum$a = Object.prototype.propertyIsEnumerable;
|
|
5041
|
+
var __defNormalProp$a = (obj, key, value) => key in obj ? __defProp$a(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
5042
|
+
var __spreadValues$a = (a, b) => {
|
|
4806
5043
|
for (var prop in b || (b = {}))
|
|
4807
|
-
if (__hasOwnProp$
|
|
4808
|
-
__defNormalProp$
|
|
4809
|
-
if (__getOwnPropSymbols$
|
|
4810
|
-
for (var prop of __getOwnPropSymbols$
|
|
4811
|
-
if (__propIsEnum$
|
|
4812
|
-
__defNormalProp$
|
|
5044
|
+
if (__hasOwnProp$a.call(b, prop))
|
|
5045
|
+
__defNormalProp$a(a, prop, b[prop]);
|
|
5046
|
+
if (__getOwnPropSymbols$a)
|
|
5047
|
+
for (var prop of __getOwnPropSymbols$a(b)) {
|
|
5048
|
+
if (__propIsEnum$a.call(b, prop))
|
|
5049
|
+
__defNormalProp$a(a, prop, b[prop]);
|
|
4813
5050
|
}
|
|
4814
5051
|
return a;
|
|
4815
5052
|
};
|
|
4816
5053
|
var __spreadProps$4 = (a, b) => __defProps$4(a, __getOwnPropDescs$4(b));
|
|
4817
5054
|
const Onboarding = (props) => {
|
|
4818
|
-
return /* @__PURE__ */ React__default.createElement(Modal, { stage: true, isLoading: props.isLoading, inline: true, plain: true, visible: true }, /* @__PURE__ */ React__default.createElement(Delegate, __spreadValues$
|
|
5055
|
+
return /* @__PURE__ */ React__default.createElement(Modal, { stage: true, isLoading: props.isLoading, inline: true, plain: true, visible: true }, /* @__PURE__ */ React__default.createElement(Delegate, __spreadValues$a({}, props)));
|
|
4819
5056
|
};
|
|
4820
5057
|
const Delegate = (props) => {
|
|
4821
5058
|
const [agreed, setAgreed] = React__default.useState(!!props.hasOrganization || props.search !== null);
|
|
@@ -4829,7 +5066,7 @@ const Delegate = (props) => {
|
|
|
4829
5066
|
if (!props.hasOrganization) {
|
|
4830
5067
|
return /* @__PURE__ */ React__default.createElement(
|
|
4831
5068
|
CommunitySearch,
|
|
4832
|
-
__spreadProps$4(__spreadValues$
|
|
5069
|
+
__spreadProps$4(__spreadValues$a({}, organization), {
|
|
4833
5070
|
open: organizationOpen,
|
|
4834
5071
|
value: props.search,
|
|
4835
5072
|
results: props.organizations && props.organizations.map((organization2) => {
|
|
@@ -5145,19 +5382,19 @@ const ProfileWidget = (props) => {
|
|
|
5145
5382
|
), props.online && /* @__PURE__ */ React__default.createElement("span", { className: "absolute h-3.5 w-3.5 lg:w-4 lg:h-4 top-0 right-0 lg:top-2 lg:right-3 rounded-full bg-green-500 border-4 border-white" })), /* @__PURE__ */ React__default.createElement("div", { className: "grid grid-cols-1 content-center align-middle" }, /* @__PURE__ */ React__default.createElement("div", { className: "grid lg:gap-1" }, /* @__PURE__ */ React__default.createElement("div", { className: "grid grid-cols-1" }, props.tenantName && /* @__PURE__ */ React__default.createElement("span", { className: "text-slate-300 text-sm" }, "@", props.tenantName), /* @__PURE__ */ React__default.createElement("h4", { className: "inline-block font-semibold capitalize text-2xl lg:text-4xl text-slate-600" }, props.givenName, " ", props.familyName)), props.createdAt && /* @__PURE__ */ React__default.createElement("p", { className: "text-sm text-slate-300" }, "Member since ", new Date(props.createdAt).getFullYear())))))));
|
|
5146
5383
|
};
|
|
5147
5384
|
|
|
5148
|
-
var __defProp$
|
|
5149
|
-
var __getOwnPropSymbols$
|
|
5150
|
-
var __hasOwnProp$
|
|
5151
|
-
var __propIsEnum$
|
|
5152
|
-
var __defNormalProp$
|
|
5153
|
-
var __spreadValues$
|
|
5385
|
+
var __defProp$9 = Object.defineProperty;
|
|
5386
|
+
var __getOwnPropSymbols$9 = Object.getOwnPropertySymbols;
|
|
5387
|
+
var __hasOwnProp$9 = Object.prototype.hasOwnProperty;
|
|
5388
|
+
var __propIsEnum$9 = Object.prototype.propertyIsEnumerable;
|
|
5389
|
+
var __defNormalProp$9 = (obj, key, value) => key in obj ? __defProp$9(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
5390
|
+
var __spreadValues$9 = (a, b) => {
|
|
5154
5391
|
for (var prop in b || (b = {}))
|
|
5155
|
-
if (__hasOwnProp$
|
|
5156
|
-
__defNormalProp$
|
|
5157
|
-
if (__getOwnPropSymbols$
|
|
5158
|
-
for (var prop of __getOwnPropSymbols$
|
|
5159
|
-
if (__propIsEnum$
|
|
5160
|
-
__defNormalProp$
|
|
5392
|
+
if (__hasOwnProp$9.call(b, prop))
|
|
5393
|
+
__defNormalProp$9(a, prop, b[prop]);
|
|
5394
|
+
if (__getOwnPropSymbols$9)
|
|
5395
|
+
for (var prop of __getOwnPropSymbols$9(b)) {
|
|
5396
|
+
if (__propIsEnum$9.call(b, prop))
|
|
5397
|
+
__defNormalProp$9(a, prop, b[prop]);
|
|
5161
5398
|
}
|
|
5162
5399
|
return a;
|
|
5163
5400
|
};
|
|
@@ -5165,9 +5402,9 @@ const FormInput = (props) => {
|
|
|
5165
5402
|
return /* @__PURE__ */ React__default.createElement("div", { className: "grid grid-cols-1 gap-y-2" }, props.headline && /* @__PURE__ */ React__default.createElement("div", { className: "flex gap-x-1" }, /* @__PURE__ */ React__default.createElement("div", { className: "flex items-start gap-x-4" }, /* @__PURE__ */ React__default.createElement("div", { className: "grow" }, props.headline && /* @__PURE__ */ React__default.createElement("p", { className: "text-sm text-slate-600 font-semibold" }, props.headline), props.summary && /* @__PURE__ */ React__default.createElement("p", { className: "text-xs text-slate-500" }, props.summary))), !props.readonly && props.required && /* @__PURE__ */ React__default.createElement("p", { className: "text-sm text-rose-600" }, "*")), /* @__PURE__ */ React__default.createElement("div", null, (() => {
|
|
5166
5403
|
switch (props.type) {
|
|
5167
5404
|
case "dropdown":
|
|
5168
|
-
return /* @__PURE__ */ React__default.createElement(DropDownInput, __spreadValues$
|
|
5405
|
+
return /* @__PURE__ */ React__default.createElement(DropDownInput, __spreadValues$9({}, props));
|
|
5169
5406
|
default:
|
|
5170
|
-
return /* @__PURE__ */ React__default.createElement(Input, __spreadValues$
|
|
5407
|
+
return /* @__PURE__ */ React__default.createElement(Input, __spreadValues$9({}, props));
|
|
5171
5408
|
}
|
|
5172
5409
|
})()));
|
|
5173
5410
|
};
|
|
@@ -5275,21 +5512,21 @@ const FormSubmitDialog = (props) => {
|
|
|
5275
5512
|
))));
|
|
5276
5513
|
};
|
|
5277
5514
|
|
|
5278
|
-
var __defProp$
|
|
5515
|
+
var __defProp$8 = Object.defineProperty;
|
|
5279
5516
|
var __defProps$3 = Object.defineProperties;
|
|
5280
5517
|
var __getOwnPropDescs$3 = Object.getOwnPropertyDescriptors;
|
|
5281
|
-
var __getOwnPropSymbols$
|
|
5282
|
-
var __hasOwnProp$
|
|
5283
|
-
var __propIsEnum$
|
|
5284
|
-
var __defNormalProp$
|
|
5285
|
-
var __spreadValues$
|
|
5518
|
+
var __getOwnPropSymbols$8 = Object.getOwnPropertySymbols;
|
|
5519
|
+
var __hasOwnProp$8 = Object.prototype.hasOwnProperty;
|
|
5520
|
+
var __propIsEnum$8 = Object.prototype.propertyIsEnumerable;
|
|
5521
|
+
var __defNormalProp$8 = (obj, key, value) => key in obj ? __defProp$8(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
5522
|
+
var __spreadValues$8 = (a, b) => {
|
|
5286
5523
|
for (var prop in b || (b = {}))
|
|
5287
|
-
if (__hasOwnProp$
|
|
5288
|
-
__defNormalProp$
|
|
5289
|
-
if (__getOwnPropSymbols$
|
|
5290
|
-
for (var prop of __getOwnPropSymbols$
|
|
5291
|
-
if (__propIsEnum$
|
|
5292
|
-
__defNormalProp$
|
|
5524
|
+
if (__hasOwnProp$8.call(b, prop))
|
|
5525
|
+
__defNormalProp$8(a, prop, b[prop]);
|
|
5526
|
+
if (__getOwnPropSymbols$8)
|
|
5527
|
+
for (var prop of __getOwnPropSymbols$8(b)) {
|
|
5528
|
+
if (__propIsEnum$8.call(b, prop))
|
|
5529
|
+
__defNormalProp$8(a, prop, b[prop]);
|
|
5293
5530
|
}
|
|
5294
5531
|
return a;
|
|
5295
5532
|
};
|
|
@@ -5300,7 +5537,7 @@ const Form = (props) => {
|
|
|
5300
5537
|
const [responses, setResponses] = React__default.useState({});
|
|
5301
5538
|
const [inReview, setInReview] = React__default.useState(!!props.inReview);
|
|
5302
5539
|
const setResponse = (key, value) => {
|
|
5303
|
-
setResponses(__spreadProps$3(__spreadValues$
|
|
5540
|
+
setResponses(__spreadProps$3(__spreadValues$8({}, responses), { [key]: value }));
|
|
5304
5541
|
};
|
|
5305
5542
|
const onSubmit = (e) => {
|
|
5306
5543
|
e.preventDefault();
|
|
@@ -5419,21 +5656,21 @@ const Form = (props) => {
|
|
|
5419
5656
|
)))))))), showExitDialogue && /* @__PURE__ */ React__default.createElement("div", { className: "fixed top-0 left-0 px-4 md:px-2 w-screen h-screen py-5 transition ease-in-out duration-400 bg-gray-200/75 z-40" }, /* @__PURE__ */ React__default.createElement("div", { className: "flex md:w-max h-screen gap-x-2 justify-items-center content-center m-auto" }, /* @__PURE__ */ React__default.createElement(FormExitDialog, { onYes: props.onClose, onNo: () => setShowExitDialogue(false) }))), showSubmitDialogue && /* @__PURE__ */ React__default.createElement("div", { className: "fixed top-0 left-0 px-4 md:px-2 w-screen h-screen py-5 transition ease-in-out duration-400 bg-gray-200/75 z-40" }, /* @__PURE__ */ React__default.createElement("div", { className: "flex md:w-max h-screen gap-x-2 justify-items-center content-center m-auto" }, /* @__PURE__ */ React__default.createElement(FormSubmitDialog, { onGoBack: () => setShowSubmitDialogue(false), onContinue: props.onClose }))));
|
|
5420
5657
|
};
|
|
5421
5658
|
|
|
5422
|
-
var __defProp$
|
|
5659
|
+
var __defProp$7 = Object.defineProperty;
|
|
5423
5660
|
var __defProps$2 = Object.defineProperties;
|
|
5424
5661
|
var __getOwnPropDescs$2 = Object.getOwnPropertyDescriptors;
|
|
5425
|
-
var __getOwnPropSymbols$
|
|
5426
|
-
var __hasOwnProp$
|
|
5427
|
-
var __propIsEnum$
|
|
5428
|
-
var __defNormalProp$
|
|
5429
|
-
var __spreadValues$
|
|
5662
|
+
var __getOwnPropSymbols$7 = Object.getOwnPropertySymbols;
|
|
5663
|
+
var __hasOwnProp$7 = Object.prototype.hasOwnProperty;
|
|
5664
|
+
var __propIsEnum$7 = Object.prototype.propertyIsEnumerable;
|
|
5665
|
+
var __defNormalProp$7 = (obj, key, value) => key in obj ? __defProp$7(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
5666
|
+
var __spreadValues$7 = (a, b) => {
|
|
5430
5667
|
for (var prop in b || (b = {}))
|
|
5431
|
-
if (__hasOwnProp$
|
|
5432
|
-
__defNormalProp$
|
|
5433
|
-
if (__getOwnPropSymbols$
|
|
5434
|
-
for (var prop of __getOwnPropSymbols$
|
|
5435
|
-
if (__propIsEnum$
|
|
5436
|
-
__defNormalProp$
|
|
5668
|
+
if (__hasOwnProp$7.call(b, prop))
|
|
5669
|
+
__defNormalProp$7(a, prop, b[prop]);
|
|
5670
|
+
if (__getOwnPropSymbols$7)
|
|
5671
|
+
for (var prop of __getOwnPropSymbols$7(b)) {
|
|
5672
|
+
if (__propIsEnum$7.call(b, prop))
|
|
5673
|
+
__defNormalProp$7(a, prop, b[prop]);
|
|
5437
5674
|
}
|
|
5438
5675
|
return a;
|
|
5439
5676
|
};
|
|
@@ -5468,7 +5705,7 @@ const LogServiceButton = (props) => {
|
|
|
5468
5705
|
size: "full:md",
|
|
5469
5706
|
onClick: onOpen
|
|
5470
5707
|
}
|
|
5471
|
-
), isOpen && /* @__PURE__ */ React__default.createElement(Form, __spreadProps$2(__spreadValues$
|
|
5708
|
+
), isOpen && /* @__PURE__ */ React__default.createElement(Form, __spreadProps$2(__spreadValues$7({ onSubmit: props.onSubmit }, props.form), { onClose })));
|
|
5472
5709
|
};
|
|
5473
5710
|
|
|
5474
5711
|
const Stopwatch = (props) => {
|
|
@@ -5477,49 +5714,28 @@ const Stopwatch = (props) => {
|
|
|
5477
5714
|
setHide(props.hide);
|
|
5478
5715
|
}, [props.hide]);
|
|
5479
5716
|
const ctaList = (props == null ? void 0 : props.ctaList) || [];
|
|
5480
|
-
const
|
|
5481
|
-
if (label.toLowerCase() === "start") {
|
|
5482
|
-
return "green";
|
|
5483
|
-
} else if (label.toLowerCase() === "stop") {
|
|
5484
|
-
return "rose";
|
|
5485
|
-
}
|
|
5486
|
-
return "blue";
|
|
5487
|
-
};
|
|
5717
|
+
const isPrimary = (label) => label.toLowerCase() === "start";
|
|
5488
5718
|
const visibility = hide ? "opacity-0 invisible" : "visible";
|
|
5489
|
-
return /* @__PURE__ */ React__default.createElement(
|
|
5719
|
+
return /* @__PURE__ */ React__default.createElement("div", { className: "w-[168px] rounded-2xl border border-sky-blue-400/30 bg-white p-3.5 shadow-[0_4px_20px_rgba(59,208,242,0.12)]" }, /* @__PURE__ */ React__default.createElement("label", { className: "flex cursor-pointer items-center gap-2.5" }, /* @__PURE__ */ React__default.createElement(
|
|
5490
5720
|
"input",
|
|
5491
5721
|
{
|
|
5492
5722
|
type: "checkbox",
|
|
5493
5723
|
value: "",
|
|
5494
|
-
className: "sr-only
|
|
5724
|
+
className: "peer sr-only",
|
|
5495
5725
|
checked: hide,
|
|
5496
5726
|
onChange: () => setHide(!hide)
|
|
5497
5727
|
}
|
|
5498
|
-
), /* @__PURE__ */ React__default.createElement("div", { className: "
|
|
5499
|
-
"
|
|
5728
|
+
), /* @__PURE__ */ React__default.createElement("div", { className: "relative h-3.5 w-7 shrink-0 rounded-full bg-slate-200 transition-colors after:absolute after:left-0.5 after:top-0.5 after:h-2.5 after:w-2.5 after:rounded-full after:bg-white after:shadow-sm after:transition-all peer-checked:bg-sky-blue-400 peer-checked:after:translate-x-3.5" }), /* @__PURE__ */ React__default.createElement("span", { className: "text-[10.5px] font-semibold text-slate-500" }, "Hide Stopwatch?")), /* @__PURE__ */ React__default.createElement("div", { className: visibility }, /* @__PURE__ */ React__default.createElement("div", { className: "mt-2.5 text-center font-mono text-xl font-extrabold text-dark-blue-400" }, props.time), /* @__PURE__ */ React__default.createElement("div", { className: "mt-2.5 grid grid-cols-2 gap-1.5" }, ctaList.map((ctaObj, i) => /* @__PURE__ */ React__default.createElement(
|
|
5729
|
+
"button",
|
|
5500
5730
|
{
|
|
5501
|
-
|
|
5502
|
-
|
|
5731
|
+
key: i,
|
|
5732
|
+
type: "button",
|
|
5733
|
+
disabled: ctaObj.readOnly,
|
|
5734
|
+
onClick: () => props.onCTAClick && props.onCTAClick(ctaObj.ctaLabel || ""),
|
|
5735
|
+
className: `rounded-lg py-1.5 text-[11px] font-bold text-white disabled:cursor-not-allowed disabled:opacity-40 ${isPrimary(ctaObj.ctaLabel || "") ? "bg-mint-400 hover:bg-mint-400/90" : "bg-sky-blue-400 hover:bg-sky-blue-400/90"}`
|
|
5503
5736
|
},
|
|
5504
|
-
|
|
5505
|
-
)))
|
|
5506
|
-
const color = getColor(ctaObj.ctaLabel || "");
|
|
5507
|
-
return /* @__PURE__ */ React__default.createElement(
|
|
5508
|
-
Button,
|
|
5509
|
-
{
|
|
5510
|
-
key: i,
|
|
5511
|
-
onClick: () => props.onCTAClick && props.onCTAClick(ctaObj.ctaLabel || ""),
|
|
5512
|
-
theme: "dark",
|
|
5513
|
-
border: "rounded",
|
|
5514
|
-
size: "sm",
|
|
5515
|
-
spacing: "xs",
|
|
5516
|
-
color,
|
|
5517
|
-
text: ctaObj.ctaLabel,
|
|
5518
|
-
active: false,
|
|
5519
|
-
disabled: ctaObj.readOnly
|
|
5520
|
-
}
|
|
5521
|
-
);
|
|
5522
|
-
}))));
|
|
5737
|
+
ctaObj.ctaLabel
|
|
5738
|
+
)))));
|
|
5523
5739
|
};
|
|
5524
5740
|
|
|
5525
5741
|
const TaskItem = (props) => {
|
|
@@ -5547,6 +5763,7 @@ const TaskList = (props) => {
|
|
|
5547
5763
|
return /* @__PURE__ */ React__default.createElement("div", { className: "h-[16rem] lg:h-[22rem] w-full" }, /* @__PURE__ */ React__default.createElement(Board, { isLoading: props.isLoading, tabs, workflow, secondary: true }));
|
|
5548
5764
|
};
|
|
5549
5765
|
|
|
5766
|
+
const ACCENT_ORDER$2 = ["sky-blue", "mint", "gold"];
|
|
5550
5767
|
const PathwayProgressBarChart = ({
|
|
5551
5768
|
targets,
|
|
5552
5769
|
points,
|
|
@@ -5557,10 +5774,10 @@ const PathwayProgressBarChart = ({
|
|
|
5557
5774
|
withHeight(config, height);
|
|
5558
5775
|
if (!entries.length)
|
|
5559
5776
|
return null;
|
|
5560
|
-
return /* @__PURE__ */ React.createElement("div", { className: "grid grid-cols-1 gap-
|
|
5777
|
+
return /* @__PURE__ */ React.createElement("div", { className: "grid grid-cols-1 gap-3" }, entries.map(([categoryId, max], i) => {
|
|
5561
5778
|
var _a;
|
|
5562
5779
|
const value = (_a = points[categoryId]) != null ? _a : 0;
|
|
5563
|
-
return /* @__PURE__ */ React.createElement("div", { key: categoryId, className: "grid grid-cols-1 gap-1" }, /* @__PURE__ */ React.createElement("div", { className: "flex justify-between items-center" }, /* @__PURE__ */ React.createElement("p", { className: "capitalize text-xs text-slate-400" }, categoryId), /* @__PURE__ */ React.createElement("p", { className: classname(config.magnitude) }, value, " / ", max)), /* @__PURE__ */ React.createElement("div", { className: classname(config.progress) }, /* @__PURE__ */ React.createElement(Progress, { start: value, end: max || 1 })));
|
|
5780
|
+
return /* @__PURE__ */ React.createElement("div", { key: categoryId, className: "grid grid-cols-1 gap-1.5" }, /* @__PURE__ */ React.createElement("div", { className: "flex justify-between items-center" }, /* @__PURE__ */ React.createElement("p", { className: "capitalize text-xs font-semibold text-slate-400" }, categoryId), /* @__PURE__ */ React.createElement("p", { className: classname(config.magnitude) }, value, " / ", max)), /* @__PURE__ */ React.createElement("div", { className: classname(config.progress) }, /* @__PURE__ */ React.createElement(Progress, { start: value, end: max || 1, color: ACCENT_ORDER$2[i % ACCENT_ORDER$2.length] })));
|
|
5564
5781
|
}));
|
|
5565
5782
|
};
|
|
5566
5783
|
const defaultChartConfig = () => {
|
|
@@ -5569,7 +5786,7 @@ const defaultChartConfig = () => {
|
|
|
5569
5786
|
height: ""
|
|
5570
5787
|
},
|
|
5571
5788
|
magnitude: {
|
|
5572
|
-
base: "text-
|
|
5789
|
+
base: "font-bold text-dark-blue-400",
|
|
5573
5790
|
text: ""
|
|
5574
5791
|
}
|
|
5575
5792
|
};
|
|
@@ -5649,12 +5866,38 @@ const PathwayOverview = (props) => {
|
|
|
5649
5866
|
}))));
|
|
5650
5867
|
};
|
|
5651
5868
|
|
|
5869
|
+
const STATUS_PILL_ACCENT = {
|
|
5870
|
+
"In Progress": "cyan",
|
|
5871
|
+
Completed: "mint",
|
|
5872
|
+
Available: "gold"
|
|
5873
|
+
};
|
|
5652
5874
|
const PathwayTranscript = (props) => {
|
|
5653
5875
|
var _a;
|
|
5654
5876
|
const [layout, setLayout] = React.useState("list");
|
|
5877
|
+
const today = React.useMemo(
|
|
5878
|
+
() => new Date().toLocaleDateString("en-US", { year: "numeric", month: "long", day: "numeric" }),
|
|
5879
|
+
[]
|
|
5880
|
+
);
|
|
5881
|
+
const mappedTargets = React.useMemo(() => {
|
|
5882
|
+
var _a2;
|
|
5883
|
+
const t = {};
|
|
5884
|
+
Object.entries((_a2 = props.rawCriteria) != null ? _a2 : {}).forEach(([id, val]) => {
|
|
5885
|
+
var _a3;
|
|
5886
|
+
t[((_a3 = props.categoryNames) == null ? void 0 : _a3[id]) || id] = val;
|
|
5887
|
+
});
|
|
5888
|
+
return t;
|
|
5889
|
+
}, [props.rawCriteria, props.categoryNames]);
|
|
5890
|
+
const mappedPoints = React.useMemo(() => {
|
|
5891
|
+
var _a2;
|
|
5892
|
+
const p = {};
|
|
5893
|
+
Object.entries((_a2 = props.points) != null ? _a2 : {}).forEach(([id, val]) => {
|
|
5894
|
+
var _a3;
|
|
5895
|
+
p[((_a3 = props.categoryNames) == null ? void 0 : _a3[id]) || id] = val;
|
|
5896
|
+
});
|
|
5897
|
+
return p;
|
|
5898
|
+
}, [props.points, props.categoryNames]);
|
|
5655
5899
|
const badges = props.badges || [];
|
|
5656
5900
|
const completedBadges = badges.filter((b) => !!b.completedAt);
|
|
5657
|
-
const inProgressBadges = badges.filter((b) => !b.completedAt && !!b.startedAt);
|
|
5658
5901
|
const rootIds = Object.keys(props.categoryParents || {}).filter((id) => {
|
|
5659
5902
|
var _a2;
|
|
5660
5903
|
return !((_a2 = props.categoryParents) == null ? void 0 : _a2[id]);
|
|
@@ -5668,43 +5911,63 @@ const PathwayTranscript = (props) => {
|
|
|
5668
5911
|
const topLevelId = rootIds.find((id) => targetKeys[id] !== void 0) || rootIds[0];
|
|
5669
5912
|
const totalPointsEarned = topLevelId ? ((_a = props.points) == null ? void 0 : _a[topLevelId]) || 0 : 0;
|
|
5670
5913
|
const badgesEarnedCount = completedBadges.length;
|
|
5671
|
-
const
|
|
5672
|
-
const
|
|
5673
|
-
|
|
5674
|
-
const target = targetKeys[id] || 0;
|
|
5675
|
-
const earned = ((_a2 = props.points) == null ? void 0 : _a2[id]) || 0;
|
|
5676
|
-
return earned >= target;
|
|
5677
|
-
});
|
|
5914
|
+
const target = badges.length;
|
|
5915
|
+
const anyStarted = badges.some((b) => b.startedAt);
|
|
5916
|
+
const status = target > 0 && badgesEarnedCount === target ? "Completed" : anyStarted || badgesEarnedCount > 0 ? "In Progress" : "Available";
|
|
5678
5917
|
const safeRender = (val) => typeof val === "string" || typeof val === "number" ? val : "";
|
|
5679
|
-
const renderBadgePool = (badgePool
|
|
5918
|
+
const renderBadgePool = (badgePool) => {
|
|
5680
5919
|
if (badgePool.length === 0)
|
|
5681
5920
|
return null;
|
|
5682
|
-
return /* @__PURE__ */ React.createElement("div", { className: "space-y-8
|
|
5921
|
+
return /* @__PURE__ */ React.createElement("div", { className: "space-y-8" }, /* @__PURE__ */ React.createElement("div", { className: "flex items-center gap-2 border-b border-slate-100 pb-2" }, /* @__PURE__ */ React.createElement("h2", { className: "text-[10px] font-black uppercase tracking-widest text-slate-400" }, "Completed Activity"), /* @__PURE__ */ React.createElement("span", { className: "rounded-full bg-mint-400/15 px-2 py-0.5 text-[10px] font-bold text-mint-400" }, badgePool.length)), level2Ids.map((l2Id) => {
|
|
5683
5922
|
var _a2;
|
|
5684
5923
|
const groupBadges = badgePool.filter((b) => b.categories.includes(l2Id));
|
|
5685
5924
|
if (groupBadges.length === 0)
|
|
5686
5925
|
return null;
|
|
5687
|
-
return /* @__PURE__ */ React.createElement("div", { key: l2Id, className: "space-y-
|
|
5926
|
+
return /* @__PURE__ */ React.createElement("div", { key: l2Id, className: "space-y-3" }, /* @__PURE__ */ React.createElement("h3", { className: "flex items-center gap-2 text-sm font-bold text-dark-blue-400" }, /* @__PURE__ */ React.createElement("span", { className: "h-4 w-1 rounded-full bg-sky-blue-400" }), ((_a2 = props.categoryNames) == null ? void 0 : _a2[l2Id]) || l2Id), /* @__PURE__ */ React.createElement("div", { className: layout === "grid" ? "grid grid-cols-3 gap-3" : "space-y-2" }, groupBadges.map((b) => /* @__PURE__ */ React.createElement(
|
|
5927
|
+
"div",
|
|
5928
|
+
{
|
|
5929
|
+
key: b.badgeId,
|
|
5930
|
+
className: `rounded-xl border border-slate-200 bg-white p-4 shadow-sm ${layout === "grid" ? "flex flex-col items-center gap-2 text-center" : "flex items-center justify-between"}`
|
|
5931
|
+
},
|
|
5932
|
+
/* @__PURE__ */ React.createElement("div", { className: `flex items-center gap-3 ${layout === "grid" ? "flex-col" : ""}` }, /* @__PURE__ */ React.createElement(BadgeEmblem, { size: "sm", iconURL: b.iconURL }), /* @__PURE__ */ React.createElement("p", { className: "text-xs font-bold text-dark-blue-400" }, b.displayName)),
|
|
5933
|
+
/* @__PURE__ */ React.createElement("span", { className: "text-xs font-black text-mint-400" }, b.weight, " pts")
|
|
5934
|
+
))));
|
|
5688
5935
|
}));
|
|
5689
5936
|
};
|
|
5690
|
-
return /* @__PURE__ */ React.createElement("div", { className: "
|
|
5937
|
+
return /* @__PURE__ */ React.createElement("div", { className: "space-y-8 p-6" }, /* @__PURE__ */ React.createElement("div", { className: "grid grid-cols-3 gap-4 rounded-2xl border border-slate-200 bg-white p-5 text-sm shadow-sm" }, /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement("p", { className: "mb-1 text-[9px] font-black uppercase tracking-widest text-slate-400" }, "Student"), /* @__PURE__ */ React.createElement("p", { className: "font-bold text-dark-blue-400" }, safeRender(props.studentName) || "Guest User"), /* @__PURE__ */ React.createElement("p", { className: "mt-0.5 text-[11px] text-slate-500" }, safeRender(props.studentEmail))), /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement("p", { className: "mb-1 text-[9px] font-black uppercase tracking-widest text-slate-400" }, "Organization"), /* @__PURE__ */ React.createElement("p", { className: "font-bold text-dark-blue-400" }, safeRender(props.schoolName) || "Not Provided"), /* @__PURE__ */ React.createElement("p", { className: "mt-0.5 text-[11px] text-slate-500" }, props.gradeLevel ? `Grade ${safeRender(props.gradeLevel)}` : "")), /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement("p", { className: "mb-1 text-[9px] font-black uppercase tracking-widest text-slate-400" }, "Record Status"), /* @__PURE__ */ React.createElement(Pill, { label: "Verified", accent: "mint" }), /* @__PURE__ */ React.createElement("p", { className: "mt-1 text-[10px] text-slate-400" }, today))), /* @__PURE__ */ React.createElement("section", { className: "space-y-4" }, /* @__PURE__ */ React.createElement("div", { className: "space-y-1.5" }, /* @__PURE__ */ React.createElement("h1", { className: "text-2xl font-extrabold tracking-tight text-dark-blue-400" }, props.title || "Untitled Pathway"), /* @__PURE__ */ React.createElement("p", { className: "max-w-3xl text-sm leading-relaxed text-slate-500" }, props.description || "No description provided for this pathway.")), /* @__PURE__ */ React.createElement("div", { className: "grid grid-cols-3 gap-3" }, /* @__PURE__ */ React.createElement("div", { className: "flex flex-col items-center justify-center rounded-xl border border-slate-200 bg-white p-4 text-center shadow-sm" }, /* @__PURE__ */ React.createElement("span", { className: "text-2xl font-black text-dark-blue-400" }, totalPointsEarned.toLocaleString()), /* @__PURE__ */ React.createElement("span", { className: "mt-1 text-[10px] font-bold uppercase tracking-widest text-slate-400" }, "Total Points")), /* @__PURE__ */ React.createElement("div", { className: "flex flex-col items-center justify-center rounded-xl border border-slate-200 bg-white p-4 text-center shadow-sm" }, /* @__PURE__ */ React.createElement("span", { className: "text-2xl font-black text-dark-blue-400" }, badgesEarnedCount), /* @__PURE__ */ React.createElement("span", { className: "mt-1 text-[10px] font-bold uppercase tracking-widest text-slate-400" }, "Badges Earned")), /* @__PURE__ */ React.createElement("div", { className: "flex flex-col items-center justify-center rounded-xl border border-slate-200 bg-white p-4 text-center shadow-sm" }, /* @__PURE__ */ React.createElement(Pill, { label: status, accent: STATUS_PILL_ACCENT[status] }), /* @__PURE__ */ React.createElement("span", { className: "mt-1.5 text-[10px] font-bold uppercase tracking-widest text-slate-400" }, "Pathway Status")))), /* @__PURE__ */ React.createElement("section", { className: "space-y-3" }, /* @__PURE__ */ React.createElement("p", { className: "text-[10px] font-black uppercase tracking-widest text-slate-400" }, "Criteria & Progress"), /* @__PURE__ */ React.createElement("div", { className: "rounded-xl border border-slate-200 bg-white p-5 shadow-sm" }, /* @__PURE__ */ React.createElement(PathwayProgressBarChart, { targets: mappedTargets, points: mappedPoints, height: "md" }))), /* @__PURE__ */ React.createElement("section", { className: "space-y-6" }, /* @__PURE__ */ React.createElement("div", { className: "flex items-center justify-between border-b border-slate-200 pb-3" }, /* @__PURE__ */ React.createElement("p", { className: "text-[10px] font-black uppercase tracking-widest text-slate-400" }, "Activity History"), /* @__PURE__ */ React.createElement("div", { className: "flex gap-1" }, /* @__PURE__ */ React.createElement(
|
|
5938
|
+
"button",
|
|
5939
|
+
{
|
|
5940
|
+
type: "button",
|
|
5941
|
+
onClick: () => setLayout("grid"),
|
|
5942
|
+
className: `flex h-7 w-7 items-center justify-center rounded-md ${layout === "grid" ? "bg-slate-100 text-dark-blue-400" : "text-slate-300 hover:text-slate-400"}`
|
|
5943
|
+
},
|
|
5944
|
+
/* @__PURE__ */ React.createElement(IconLayoutGrid, { size: 14, stroke: 1.75 })
|
|
5945
|
+
), /* @__PURE__ */ React.createElement(
|
|
5946
|
+
"button",
|
|
5947
|
+
{
|
|
5948
|
+
type: "button",
|
|
5949
|
+
onClick: () => setLayout("list"),
|
|
5950
|
+
className: `flex h-7 w-7 items-center justify-center rounded-md ${layout === "list" ? "bg-slate-100 text-dark-blue-400" : "text-slate-300 hover:text-slate-400"}`
|
|
5951
|
+
},
|
|
5952
|
+
/* @__PURE__ */ React.createElement(IconList, { size: 14, stroke: 1.75 })
|
|
5953
|
+
))), renderBadgePool(completedBadges), completedBadges.length === 0 && /* @__PURE__ */ React.createElement("p", { className: "text-sm text-slate-400" }, "No completed activity yet.")));
|
|
5691
5954
|
};
|
|
5692
5955
|
|
|
5693
|
-
var __defProp$
|
|
5956
|
+
var __defProp$6 = Object.defineProperty;
|
|
5694
5957
|
var __defProps$1 = Object.defineProperties;
|
|
5695
5958
|
var __getOwnPropDescs$1 = Object.getOwnPropertyDescriptors;
|
|
5696
|
-
var __getOwnPropSymbols$
|
|
5697
|
-
var __hasOwnProp$
|
|
5698
|
-
var __propIsEnum$
|
|
5699
|
-
var __defNormalProp$
|
|
5700
|
-
var __spreadValues$
|
|
5959
|
+
var __getOwnPropSymbols$6 = Object.getOwnPropertySymbols;
|
|
5960
|
+
var __hasOwnProp$6 = Object.prototype.hasOwnProperty;
|
|
5961
|
+
var __propIsEnum$6 = Object.prototype.propertyIsEnumerable;
|
|
5962
|
+
var __defNormalProp$6 = (obj, key, value) => key in obj ? __defProp$6(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
5963
|
+
var __spreadValues$6 = (a, b) => {
|
|
5701
5964
|
for (var prop in b || (b = {}))
|
|
5702
|
-
if (__hasOwnProp$
|
|
5703
|
-
__defNormalProp$
|
|
5704
|
-
if (__getOwnPropSymbols$
|
|
5705
|
-
for (var prop of __getOwnPropSymbols$
|
|
5706
|
-
if (__propIsEnum$
|
|
5707
|
-
__defNormalProp$
|
|
5965
|
+
if (__hasOwnProp$6.call(b, prop))
|
|
5966
|
+
__defNormalProp$6(a, prop, b[prop]);
|
|
5967
|
+
if (__getOwnPropSymbols$6)
|
|
5968
|
+
for (var prop of __getOwnPropSymbols$6(b)) {
|
|
5969
|
+
if (__propIsEnum$6.call(b, prop))
|
|
5970
|
+
__defNormalProp$6(a, prop, b[prop]);
|
|
5708
5971
|
}
|
|
5709
5972
|
return a;
|
|
5710
5973
|
};
|
|
@@ -5734,7 +5997,7 @@ const PathwayCard = (props) => {
|
|
|
5734
5997
|
});
|
|
5735
5998
|
return p;
|
|
5736
5999
|
}, [props.points, props.categoryNames]);
|
|
5737
|
-
const sharedProps = __spreadProps$1(__spreadValues$
|
|
6000
|
+
const sharedProps = __spreadProps$1(__spreadValues$6({}, props), {
|
|
5738
6001
|
mappedTargets,
|
|
5739
6002
|
mappedPoints,
|
|
5740
6003
|
today,
|
|
@@ -5760,7 +6023,7 @@ const PathwayCard = (props) => {
|
|
|
5760
6023
|
border: "rounded",
|
|
5761
6024
|
onClick: () => setView(view === "overview" ? "transcript" : "overview")
|
|
5762
6025
|
}
|
|
5763
|
-
))), view === "overview" ? /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(PathwayOverview, __spreadValues$
|
|
6026
|
+
))), view === "overview" ? /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(PathwayOverview, __spreadValues$6({}, sharedProps)), /* @__PURE__ */ React.createElement("div", { className: "pt-5 px-5 flex border-t border-zinc-100" }, /* @__PURE__ */ React.createElement("div", { className: "w-full max-w-[7rem] ml-auto" }, /* @__PURE__ */ React.createElement(
|
|
5764
6027
|
Button,
|
|
5765
6028
|
{
|
|
5766
6029
|
disabled: true,
|
|
@@ -5772,27 +6035,27 @@ const PathwayCard = (props) => {
|
|
|
5772
6035
|
theme: "dark",
|
|
5773
6036
|
text: "Submit"
|
|
5774
6037
|
}
|
|
5775
|
-
)))) : /* @__PURE__ */ React.createElement(PathwayTranscript, __spreadValues$
|
|
6038
|
+
)))) : /* @__PURE__ */ React.createElement(PathwayTranscript, __spreadValues$6({}, sharedProps))));
|
|
5776
6039
|
};
|
|
5777
6040
|
|
|
5778
|
-
var __defProp$
|
|
5779
|
-
var __getOwnPropSymbols$
|
|
5780
|
-
var __hasOwnProp$
|
|
5781
|
-
var __propIsEnum$
|
|
5782
|
-
var __defNormalProp$
|
|
5783
|
-
var __spreadValues$
|
|
6041
|
+
var __defProp$5 = Object.defineProperty;
|
|
6042
|
+
var __getOwnPropSymbols$5 = Object.getOwnPropertySymbols;
|
|
6043
|
+
var __hasOwnProp$5 = Object.prototype.hasOwnProperty;
|
|
6044
|
+
var __propIsEnum$5 = Object.prototype.propertyIsEnumerable;
|
|
6045
|
+
var __defNormalProp$5 = (obj, key, value) => key in obj ? __defProp$5(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
6046
|
+
var __spreadValues$5 = (a, b) => {
|
|
5784
6047
|
for (var prop in b || (b = {}))
|
|
5785
|
-
if (__hasOwnProp$
|
|
5786
|
-
__defNormalProp$
|
|
5787
|
-
if (__getOwnPropSymbols$
|
|
5788
|
-
for (var prop of __getOwnPropSymbols$
|
|
5789
|
-
if (__propIsEnum$
|
|
5790
|
-
__defNormalProp$
|
|
6048
|
+
if (__hasOwnProp$5.call(b, prop))
|
|
6049
|
+
__defNormalProp$5(a, prop, b[prop]);
|
|
6050
|
+
if (__getOwnPropSymbols$5)
|
|
6051
|
+
for (var prop of __getOwnPropSymbols$5(b)) {
|
|
6052
|
+
if (__propIsEnum$5.call(b, prop))
|
|
6053
|
+
__defNormalProp$5(a, prop, b[prop]);
|
|
5791
6054
|
}
|
|
5792
6055
|
return a;
|
|
5793
6056
|
};
|
|
5794
6057
|
const Pathway = (props) => {
|
|
5795
|
-
return /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(PathwayCard, __spreadValues$
|
|
6058
|
+
return /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(PathwayCard, __spreadValues$5({}, props)));
|
|
5796
6059
|
};
|
|
5797
6060
|
|
|
5798
6061
|
const PathwayButton = (props) => {
|
|
@@ -5836,21 +6099,21 @@ const PathwayButton = (props) => {
|
|
|
5836
6099
|
)), !!props.title && /* @__PURE__ */ React.createElement("div", { className: "text-sm m-auto flex gap-x-2" }, /* @__PURE__ */ React.createElement("span", { className: "font-semibold text-zinc-600" }, props.title)));
|
|
5837
6100
|
};
|
|
5838
6101
|
|
|
5839
|
-
var __defProp$
|
|
6102
|
+
var __defProp$4 = Object.defineProperty;
|
|
5840
6103
|
var __defProps = Object.defineProperties;
|
|
5841
6104
|
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
5842
|
-
var __getOwnPropSymbols$
|
|
5843
|
-
var __hasOwnProp$
|
|
5844
|
-
var __propIsEnum$
|
|
5845
|
-
var __defNormalProp$
|
|
5846
|
-
var __spreadValues$
|
|
6105
|
+
var __getOwnPropSymbols$4 = Object.getOwnPropertySymbols;
|
|
6106
|
+
var __hasOwnProp$4 = Object.prototype.hasOwnProperty;
|
|
6107
|
+
var __propIsEnum$4 = Object.prototype.propertyIsEnumerable;
|
|
6108
|
+
var __defNormalProp$4 = (obj, key, value) => key in obj ? __defProp$4(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
6109
|
+
var __spreadValues$4 = (a, b) => {
|
|
5847
6110
|
for (var prop in b || (b = {}))
|
|
5848
|
-
if (__hasOwnProp$
|
|
5849
|
-
__defNormalProp$
|
|
5850
|
-
if (__getOwnPropSymbols$
|
|
5851
|
-
for (var prop of __getOwnPropSymbols$
|
|
5852
|
-
if (__propIsEnum$
|
|
5853
|
-
__defNormalProp$
|
|
6111
|
+
if (__hasOwnProp$4.call(b, prop))
|
|
6112
|
+
__defNormalProp$4(a, prop, b[prop]);
|
|
6113
|
+
if (__getOwnPropSymbols$4)
|
|
6114
|
+
for (var prop of __getOwnPropSymbols$4(b)) {
|
|
6115
|
+
if (__propIsEnum$4.call(b, prop))
|
|
6116
|
+
__defNormalProp$4(a, prop, b[prop]);
|
|
5854
6117
|
}
|
|
5855
6118
|
return a;
|
|
5856
6119
|
};
|
|
@@ -5893,15 +6156,15 @@ const PathwaySection = (props) => {
|
|
|
5893
6156
|
},
|
|
5894
6157
|
"Grid View?"
|
|
5895
6158
|
)))), /* @__PURE__ */ React.createElement("div", null, !!props.readonly && /* @__PURE__ */ React.createElement("div", { className: layoutClassName }, preview.map((p, i) => {
|
|
5896
|
-
return /* @__PURE__ */ React.createElement(PathwayButton, __spreadProps(__spreadValues$
|
|
6159
|
+
return /* @__PURE__ */ React.createElement(PathwayButton, __spreadProps(__spreadValues$4({ key: i }, p), { compact: list }));
|
|
5897
6160
|
})), !props.readonly && /* @__PURE__ */ React.createElement("div", { className: "text-zinc-600 grid grid-cols-1 gap-y-4" }, progress.length > 0 && /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement("p", { className: "mb-3 text-md underline font-bold" }, "In Progress"), /* @__PURE__ */ React.createElement("div", { className: layoutClassName }, progress.map((p, i) => {
|
|
5898
|
-
return /* @__PURE__ */ React.createElement(PathwayButton, __spreadProps(__spreadValues$
|
|
6161
|
+
return /* @__PURE__ */ React.createElement(PathwayButton, __spreadProps(__spreadValues$4({ key: i }, p), { compact: list }));
|
|
5899
6162
|
}))), collected.length > 0 && /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement("p", { className: "mb-3 text-md underline font-bold" }, "Completed"), /* @__PURE__ */ React.createElement("div", { className: layoutClassName }, collected.map((p, i) => {
|
|
5900
|
-
return /* @__PURE__ */ React.createElement(PathwayButton, __spreadProps(__spreadValues$
|
|
6163
|
+
return /* @__PURE__ */ React.createElement(PathwayButton, __spreadProps(__spreadValues$4({ key: i }, p), { compact: list }));
|
|
5901
6164
|
}))), available.length > 0 && /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement("p", { className: "mb-3 text-md underline font-bold" }, "Available"), /* @__PURE__ */ React.createElement("div", { className: layoutClassName }, available.map((p, i) => {
|
|
5902
|
-
return /* @__PURE__ */ React.createElement(PathwayButton, __spreadProps(__spreadValues$
|
|
6165
|
+
return /* @__PURE__ */ React.createElement(PathwayButton, __spreadProps(__spreadValues$4({ key: i }, p), { compact: list }));
|
|
5903
6166
|
}))), locked.length > 0 && /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement("p", { className: "mb-3 text-md underline font-bold" }, "Locked"), /* @__PURE__ */ React.createElement("div", { className: layoutClassName }, locked.map((p, i) => {
|
|
5904
|
-
return /* @__PURE__ */ React.createElement(PathwayButton, __spreadProps(__spreadValues$
|
|
6167
|
+
return /* @__PURE__ */ React.createElement(PathwayButton, __spreadProps(__spreadValues$4({ key: i }, p), { compact: list }));
|
|
5905
6168
|
}))))))))));
|
|
5906
6169
|
};
|
|
5907
6170
|
const getLayout = (list) => {
|
|
@@ -5911,15 +6174,141 @@ const getLayout = (list) => {
|
|
|
5911
6174
|
return "flex flex-wrap gap-3";
|
|
5912
6175
|
};
|
|
5913
6176
|
|
|
6177
|
+
var __defProp$3 = Object.defineProperty;
|
|
6178
|
+
var __getOwnPropSymbols$3 = Object.getOwnPropertySymbols;
|
|
6179
|
+
var __hasOwnProp$3 = Object.prototype.hasOwnProperty;
|
|
6180
|
+
var __propIsEnum$3 = Object.prototype.propertyIsEnumerable;
|
|
6181
|
+
var __defNormalProp$3 = (obj, key, value) => key in obj ? __defProp$3(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
6182
|
+
var __spreadValues$3 = (a, b) => {
|
|
6183
|
+
for (var prop in b || (b = {}))
|
|
6184
|
+
if (__hasOwnProp$3.call(b, prop))
|
|
6185
|
+
__defNormalProp$3(a, prop, b[prop]);
|
|
6186
|
+
if (__getOwnPropSymbols$3)
|
|
6187
|
+
for (var prop of __getOwnPropSymbols$3(b)) {
|
|
6188
|
+
if (__propIsEnum$3.call(b, prop))
|
|
6189
|
+
__defNormalProp$3(a, prop, b[prop]);
|
|
6190
|
+
}
|
|
6191
|
+
return a;
|
|
6192
|
+
};
|
|
6193
|
+
const ACCENT_ORDER$1 = ["cyan", "mint", "gold"];
|
|
5914
6194
|
const ACCENT_CLASSNAMES$1 = {
|
|
5915
|
-
cyan:
|
|
5916
|
-
|
|
5917
|
-
|
|
5918
|
-
|
|
6195
|
+
cyan: {
|
|
6196
|
+
border: "border-sky-blue-400/30",
|
|
6197
|
+
shadow: "shadow-[0_4px_20px_rgba(59,208,242,0.10)]",
|
|
6198
|
+
strip: "from-sky-blue-400 to-mint-400",
|
|
6199
|
+
progress: "sky-blue"
|
|
6200
|
+
},
|
|
6201
|
+
mint: {
|
|
6202
|
+
border: "border-mint-400/30",
|
|
6203
|
+
shadow: "shadow-[0_4px_20px_rgba(30,226,175,0.10)]",
|
|
6204
|
+
strip: "from-mint-400 to-gold-400",
|
|
6205
|
+
progress: "mint"
|
|
6206
|
+
},
|
|
6207
|
+
gold: {
|
|
6208
|
+
border: "border-gold-400/30",
|
|
6209
|
+
shadow: "shadow-[0_4px_20px_rgba(255,212,77,0.10)]",
|
|
6210
|
+
strip: "from-gold-400 to-sky-blue-400",
|
|
6211
|
+
progress: "gold"
|
|
6212
|
+
}
|
|
5919
6213
|
};
|
|
5920
|
-
const
|
|
5921
|
-
|
|
5922
|
-
|
|
6214
|
+
const PathwaysList = (props) => {
|
|
6215
|
+
return /* @__PURE__ */ React.createElement("div", { className: "flex flex-col gap-3.5" }, /* @__PURE__ */ React.createElement("div", { className: "text-xs font-semibold text-slate-400" }, props.pathways.length, " pathway", props.pathways.length === 1 ? "" : "s"), props.pathways.length === 0 && /* @__PURE__ */ React.createElement("p", { className: "text-sm text-slate-400" }, "No pathways to display."), props.pathways.length > 0 && /* @__PURE__ */ React.createElement("div", { className: "grid grid-cols-1 gap-3.5 sm:grid-cols-2" }, props.pathways.map((pathway, i) => /* @__PURE__ */ React.createElement(PathwayListCard, __spreadValues$3({ key: pathway.pathwayId || i, accent: ACCENT_ORDER$1[i % ACCENT_ORDER$1.length] }, pathway)))));
|
|
6216
|
+
};
|
|
6217
|
+
const PathwayListCard = (props) => {
|
|
6218
|
+
var _a;
|
|
6219
|
+
const { border, shadow, strip, progress } = ACCENT_CLASSNAMES$1[props.accent];
|
|
6220
|
+
const badgeCount = ((_a = props.badges) == null ? void 0 : _a.length) || 0;
|
|
6221
|
+
const target = props.target || badgeCount || 1;
|
|
6222
|
+
const value = props.progress || 0;
|
|
6223
|
+
return /* @__PURE__ */ React.createElement(
|
|
6224
|
+
"div",
|
|
6225
|
+
{
|
|
6226
|
+
onClick: props.onClick,
|
|
6227
|
+
className: `overflow-hidden rounded-2xl border bg-white ${border} ${shadow} ${props.onClick ? "cursor-pointer hover:bg-slate-50" : ""}`
|
|
6228
|
+
},
|
|
6229
|
+
/* @__PURE__ */ React.createElement("div", { className: `h-1 bg-gradient-to-r ${strip}` }),
|
|
6230
|
+
/* @__PURE__ */ React.createElement("div", { className: "flex gap-4 p-4" }, /* @__PURE__ */ React.createElement("div", { className: "shrink-0" }, /* @__PURE__ */ React.createElement(BadgeEmblem, { iconURL: props.imageURL, alt: props.title, size: "xs" })), /* @__PURE__ */ React.createElement("div", { className: "min-w-0 flex-1" }, /* @__PURE__ */ React.createElement("div", { className: "text-sm font-bold text-dark-blue-400" }, props.title), props.description && /* @__PURE__ */ React.createElement("div", { className: "mt-1.5 text-xs text-slate-500" }, props.description), /* @__PURE__ */ React.createElement("div", { className: "mt-3 flex items-center gap-2.5" }, /* @__PURE__ */ React.createElement("div", { className: "h-1.5 flex-1" }, /* @__PURE__ */ React.createElement(Progress, { rounded: true, color: progress, start: value, end: target })), /* @__PURE__ */ React.createElement("div", { className: "whitespace-nowrap text-[10.5px] font-semibold text-slate-400" }, value, "/", target, " badges"))))
|
|
6231
|
+
);
|
|
6232
|
+
};
|
|
6233
|
+
|
|
6234
|
+
const STATUS_CLASSNAMES = {
|
|
6235
|
+
"In Progress": {
|
|
6236
|
+
border: "border-sky-blue-400/30",
|
|
6237
|
+
shadow: "shadow-[0_4px_20px_rgba(59,208,242,0.10)]",
|
|
6238
|
+
pillAccent: "cyan"
|
|
6239
|
+
},
|
|
6240
|
+
Completed: {
|
|
6241
|
+
border: "border-mint-400/30",
|
|
6242
|
+
shadow: "shadow-[0_4px_20px_rgba(30,226,175,0.10)]",
|
|
6243
|
+
pillAccent: "mint"
|
|
6244
|
+
},
|
|
6245
|
+
Available: {
|
|
6246
|
+
border: "border-gold-400/30",
|
|
6247
|
+
shadow: "shadow-[0_4px_20px_rgba(255,212,77,0.10)]",
|
|
6248
|
+
pillAccent: "gold"
|
|
6249
|
+
}
|
|
6250
|
+
};
|
|
6251
|
+
const ACCENT_ORDER = ["cyan", "mint", "gold"];
|
|
6252
|
+
const PROGRESS_COLOR = {
|
|
6253
|
+
cyan: "sky-blue",
|
|
6254
|
+
mint: "mint",
|
|
6255
|
+
gold: "gold"
|
|
6256
|
+
};
|
|
6257
|
+
const PathwayDetail = (props) => {
|
|
6258
|
+
const badges = props.badges || [];
|
|
6259
|
+
const completedCount = badges.filter((b) => b.completedAt).length;
|
|
6260
|
+
const target = badges.length;
|
|
6261
|
+
const anyStarted = badges.some((b) => b.startedAt);
|
|
6262
|
+
const status = target > 0 && completedCount === target ? "Completed" : anyStarted || completedCount > 0 ? "In Progress" : "Available";
|
|
6263
|
+
const { border, shadow, pillAccent } = STATUS_CLASSNAMES[status];
|
|
6264
|
+
const categoryIds = Object.keys(props.rawCriteria || {});
|
|
6265
|
+
const [catFilter, setCatFilter] = React.useState(null);
|
|
6266
|
+
const filteredBadges = catFilter ? badges.filter((b) => {
|
|
6267
|
+
var _a;
|
|
6268
|
+
return (_a = b.categories) == null ? void 0 : _a.includes(catFilter);
|
|
6269
|
+
}) : badges;
|
|
6270
|
+
return /* @__PURE__ */ React.createElement("div", { className: "flex max-w-2xl flex-col gap-3.5" }, props.onBack && /* @__PURE__ */ React.createElement("div", { onClick: props.onBack, className: "w-max cursor-pointer text-xs font-bold text-sky-blue-400" }, "\u2190 Back to My Pathways"), /* @__PURE__ */ React.createElement("div", { className: `overflow-hidden rounded-2xl border bg-white ${border} ${shadow}` }, /* @__PURE__ */ React.createElement("div", { className: "flex gap-4 p-5" }, /* @__PURE__ */ React.createElement("div", { className: "shrink-0" }, /* @__PURE__ */ React.createElement(BadgeEmblem, { iconURL: props.imageURL, alt: props.title, size: "sm" })), /* @__PURE__ */ React.createElement("div", { className: "flex-1" }, /* @__PURE__ */ React.createElement("div", { className: "text-lg font-extrabold text-dark-blue-400" }, props.title), !!(props.displayTags && props.displayTags.length) && /* @__PURE__ */ React.createElement("div", { className: "mt-2 flex flex-wrap gap-1.5" }, props.displayTags.map((tag) => /* @__PURE__ */ React.createElement(Pill, { key: tag, label: tag, accent: pillAccent }))), !!props.description && /* @__PURE__ */ React.createElement("div", { className: "mt-2 text-xs text-slate-500" }, props.description), /* @__PURE__ */ React.createElement("div", { className: "mt-2.5" }, /* @__PURE__ */ React.createElement(Pill, { label: status, accent: pillAccent }))))), /* @__PURE__ */ React.createElement("div", { className: `rounded-2xl border bg-white p-5 ${border} ${shadow}` }, /* @__PURE__ */ React.createElement("div", { className: "text-sm font-bold text-dark-blue-400" }, "Pathway Badges & Criteria"), /* @__PURE__ */ React.createElement("div", { className: "mt-1.5 text-xs text-slate-500" }, "This pathway is comprised of ", target, " badge", target === 1 ? "" : "s", ". It includes required and elective programming."), /* @__PURE__ */ React.createElement("div", { className: "text-xs text-slate-500" }, "Progress: ", completedCount, " / ", target, " badges completed."), categoryIds.length > 0 && /* @__PURE__ */ React.createElement("div", { className: "mt-4 flex flex-col gap-3" }, categoryIds.map((id, i) => {
|
|
6271
|
+
var _a, _b, _c;
|
|
6272
|
+
const accent = ACCENT_ORDER[i % ACCENT_ORDER.length];
|
|
6273
|
+
const label = ((_a = props.categoryNames) == null ? void 0 : _a[id]) || id;
|
|
6274
|
+
const max = ((_b = props.rawCriteria) == null ? void 0 : _b[id]) || 0;
|
|
6275
|
+
const value = ((_c = props.points) == null ? void 0 : _c[id]) || 0;
|
|
6276
|
+
return /* @__PURE__ */ React.createElement("div", { key: id }, /* @__PURE__ */ React.createElement("div", { className: "mb-1 flex items-center justify-between text-xs font-semibold text-slate-500" }, /* @__PURE__ */ React.createElement("span", null, label), /* @__PURE__ */ React.createElement("span", null, value, " / ", max)), /* @__PURE__ */ React.createElement("div", { className: "h-1.5" }, /* @__PURE__ */ React.createElement(Progress, { rounded: true, color: PROGRESS_COLOR[accent], start: value, end: max || 1 })));
|
|
6277
|
+
})), categoryIds.length > 0 && /* @__PURE__ */ React.createElement("div", { className: "mt-4 flex flex-wrap gap-2" }, /* @__PURE__ */ React.createElement(
|
|
6278
|
+
"div",
|
|
6279
|
+
{
|
|
6280
|
+
onClick: () => setCatFilter(null),
|
|
6281
|
+
className: `cursor-pointer rounded-full px-3.5 py-1.5 text-xs font-bold ${catFilter === null ? "bg-dark-blue-400 text-white" : "bg-slate-100 text-slate-500 hover:bg-slate-200"}`
|
|
6282
|
+
},
|
|
6283
|
+
"All"
|
|
6284
|
+
), categoryIds.map((id) => {
|
|
6285
|
+
var _a;
|
|
6286
|
+
return /* @__PURE__ */ React.createElement(
|
|
6287
|
+
"div",
|
|
6288
|
+
{
|
|
6289
|
+
key: id,
|
|
6290
|
+
onClick: () => setCatFilter(id),
|
|
6291
|
+
className: `cursor-pointer rounded-full px-3.5 py-1.5 text-xs font-bold ${catFilter === id ? "bg-dark-blue-400 text-white" : "bg-slate-100 text-slate-500 hover:bg-slate-200"}`
|
|
6292
|
+
},
|
|
6293
|
+
((_a = props.categoryNames) == null ? void 0 : _a[id]) || id
|
|
6294
|
+
);
|
|
6295
|
+
})), /* @__PURE__ */ React.createElement("div", { className: "mt-4 flex flex-col" }, filteredBadges.map((b, i) => {
|
|
6296
|
+
const buttonText = b.completedAt ? "Review" : b.startedAt ? "Continue" : "Start";
|
|
6297
|
+
return /* @__PURE__ */ React.createElement("div", { key: b.badgeId || i, className: "flex items-center gap-3.5 border-b border-slate-100 py-3.5 last:border-b-0" }, /* @__PURE__ */ React.createElement(
|
|
6298
|
+
"div",
|
|
6299
|
+
{
|
|
6300
|
+
className: `h-[18px] w-[18px] shrink-0 rounded-full border-2 ${b.completedAt ? "border-mint-400 bg-mint-400" : "border-slate-300 bg-transparent"}`
|
|
6301
|
+
}
|
|
6302
|
+
), /* @__PURE__ */ React.createElement("div", { className: "flex-1" }, /* @__PURE__ */ React.createElement("div", { className: "text-xs font-bold text-dark-blue-400" }, b.displayName), /* @__PURE__ */ React.createElement("div", { className: "mt-0.5 text-[10.5px] font-bold text-mint-400" }, b.weight, " point", b.weight === 1 ? "" : "s")), /* @__PURE__ */ React.createElement(
|
|
6303
|
+
"button",
|
|
6304
|
+
{
|
|
6305
|
+
type: "button",
|
|
6306
|
+
onClick: b.onClick,
|
|
6307
|
+
className: `shrink-0 rounded-lg px-4 py-1.5 text-xs font-bold ${b.completedAt ? "border border-slate-200 bg-white text-slate-600 hover:bg-slate-50" : "bg-dark-blue-400 text-white hover:bg-dark-blue-400/90"}`
|
|
6308
|
+
},
|
|
6309
|
+
buttonText
|
|
6310
|
+
));
|
|
6311
|
+
}))));
|
|
5923
6312
|
};
|
|
5924
6313
|
|
|
5925
6314
|
const ACCENT_CLASSNAMES = {
|
|
@@ -6159,7 +6548,6 @@ const TABS = [
|
|
|
6159
6548
|
{ name: "pathways", label: "Pathways", icon: IconRoute, accent: "mint" },
|
|
6160
6549
|
{ name: "badges", label: "Badges", icon: IconAlbum, accent: "gold" },
|
|
6161
6550
|
{ name: "file-locker", label: "File Locker", icon: IconClipboard, accent: "cyan" },
|
|
6162
|
-
{ name: "transcript", label: "Transcript", icon: IconFileText, accent: "mint" },
|
|
6163
6551
|
{ name: "portfolio", label: "Portfolio", icon: IconBriefcase, accent: "gold" },
|
|
6164
6552
|
{ name: "comments", label: "Comments", icon: IconMessageCircle, accent: "cyan" }
|
|
6165
6553
|
];
|
|
@@ -6319,5 +6707,5 @@ const HomeLayout = (props) => {
|
|
|
6319
6707
|
return /* @__PURE__ */ React__default.createElement("main", { className: "relative h-screen w-full overflow-hidden bg-white font-proxima" }, /* @__PURE__ */ React__default.createElement(NavBar, null, /* @__PURE__ */ React__default.createElement(NavLink, { name: "home", onClick: props.onHome, active: true }), /* @__PURE__ */ React__default.createElement(NavLink, { name: "login", onClick: props.onLogin }), /* @__PURE__ */ React__default.createElement(NavLink, { name: "faq", onClick: props.onFAQ }), /* @__PURE__ */ React__default.createElement(NavLink, { name: "privacy", onClick: props.onPrivacy }), /* @__PURE__ */ React__default.createElement(NavLink, { name: "terms", onClick: props.onTerms })), /* @__PURE__ */ React__default.createElement("section", { className: "absolute top-0 left-0 h-full overflow-hidden pt-16 w-full" }, props.children));
|
|
6320
6708
|
};
|
|
6321
6709
|
|
|
6322
|
-
export { AboutWidget, AchievementWidget, ActivityCard, ActivityItem, ActivityList, ActivityReflection, AuthLayout, Badge, BadgeActivityMenu, BadgeSection, BadgeSuccessDialog, BadgesCard, Board, Button, Card, DashboardShell, DashboardSidebar, DashboardTopBar, DateSelection, EventItem, EventList, Footer, Home, HomeLayout, Icon$1 as Icon, ImpactWidget, LearningForm, Loader, LogServiceButton, Logo, Modal, NavBar, NavLink, NotFound, Onboarding, Overlay, Pathway, PathwayButton, PathwayFilter, PathwayProgress, PathwaySection, PathwayWidget, PathwaysCard, Pill, ProfileHeroCard, ProfileWidget, Progress, Search, SearchButton, SearchResult, SettingsCard, StatTile, StatTileRow, Stopwatch, Tab, TagFilter, TaskItem, TaskList, Widget, WidgetBody, WidgetHeader, WidgetHeaderLink, WidgetTitle };
|
|
6710
|
+
export { AboutWidget, AchievementWidget, ActivityCard, ActivityItem, ActivityList, ActivityReflection, AuthLayout, Badge, BadgeActivityMenu, BadgeDetail, BadgeSection, BadgeSuccessDialog, BadgesCard, BadgesList, Board, Button, Card, DashboardShell, DashboardSidebar, DashboardTopBar, DateSelection, EventItem, EventList, Footer, Home, HomeLayout, Icon$1 as Icon, ImpactWidget, LearningForm, Loader, LogServiceButton, Logo, Modal, NavBar, NavLink, NotFound, Onboarding, Overlay, Pathway, PathwayButton, PathwayDetail, PathwayFilter, PathwayProgress, PathwaySection, PathwayTranscript, PathwayWidget, PathwaysCard, PathwaysList, Pill, ProfileHeroCard, ProfileWidget, Progress, Search, SearchButton, SearchResult, SettingsCard, StatTile, StatTileRow, Stopwatch, Tab, TagFilter, TaskItem, TaskList, Widget, WidgetBody, WidgetHeader, WidgetHeaderLink, WidgetTitle };
|
|
6323
6711
|
//# sourceMappingURL=index.mjs.map
|