@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.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, IconLayoutGrid, IconList, IconAlbum, IconSwitchHorizontal, IconLogout, IconUser, IconClipboard, IconFileText, IconBriefcase, IconMessageCircle, IconBell } from '@tabler/icons';
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$l = Object.defineProperty;
938
- var __getOwnPropSymbols$l = Object.getOwnPropertySymbols;
939
- var __hasOwnProp$l = Object.prototype.hasOwnProperty;
940
- var __propIsEnum$l = Object.prototype.propertyIsEnumerable;
941
- var __defNormalProp$l = (obj, key, value) => key in obj ? __defProp$l(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
942
- var __spreadValues$l = (a, b) => {
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$l.call(b, prop))
945
- __defNormalProp$l(a, prop, b[prop]);
946
- if (__getOwnPropSymbols$l)
947
- for (var prop of __getOwnPropSymbols$l(b)) {
948
- if (__propIsEnum$l.call(b, prop))
949
- __defNormalProp$l(a, prop, b[prop]);
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$l({ key: k }, v));
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$l({ key: k }, v)))
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$k = Object.defineProperty;
1556
+ var __defProp$m = Object.defineProperty;
1557
1557
  var __defProps$e = Object.defineProperties;
1558
1558
  var __getOwnPropDescs$e = Object.getOwnPropertyDescriptors;
1559
- var __getOwnPropSymbols$k = Object.getOwnPropertySymbols;
1560
- var __hasOwnProp$k = Object.prototype.hasOwnProperty;
1561
- var __propIsEnum$k = Object.prototype.propertyIsEnumerable;
1562
- var __defNormalProp$k = (obj, key, value) => key in obj ? __defProp$k(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
1563
- var __spreadValues$k = (a, b) => {
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$k.call(b, prop))
1566
- __defNormalProp$k(a, prop, b[prop]);
1567
- if (__getOwnPropSymbols$k)
1568
- for (var prop of __getOwnPropSymbols$k(b)) {
1569
- if (__propIsEnum$k.call(b, prop))
1570
- __defNormalProp$k(a, prop, b[prop]);
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$k({}, active), { [tag]: false }));
1587
- const tags = Object.entries(__spreadProps$e(__spreadValues$k({}, active), { [tag]: false })).filter(([, active2]) => active2).map(([tag2]) => tag2);
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$k({}, active), { [tag]: true }));
1591
- const tags = Object.entries(__spreadProps$e(__spreadValues$k({}, active), { [tag]: true })).filter(([, active2]) => active2).map(([tag2]) => tag2);
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$j = Object.defineProperty;
1637
+ var __defProp$l = Object.defineProperty;
1638
1638
  var __defProps$d = Object.defineProperties;
1639
1639
  var __getOwnPropDescs$d = Object.getOwnPropertyDescriptors;
1640
- var __getOwnPropSymbols$j = Object.getOwnPropertySymbols;
1641
- var __hasOwnProp$j = Object.prototype.hasOwnProperty;
1642
- var __propIsEnum$j = Object.prototype.propertyIsEnumerable;
1643
- var __defNormalProp$j = (obj, key, value) => key in obj ? __defProp$j(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
1644
- var __spreadValues$j = (a, b) => {
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$j.call(b, prop))
1647
- __defNormalProp$j(a, prop, b[prop]);
1648
- if (__getOwnPropSymbols$j)
1649
- for (var prop of __getOwnPropSymbols$j(b)) {
1650
- if (__propIsEnum$j.call(b, prop))
1651
- __defNormalProp$j(a, prop, b[prop]);
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$j({}, primary), {
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$j({
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$j({
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$j({
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$j({
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$i = Object.defineProperty;
1737
+ var __defProp$k = Object.defineProperty;
1738
1738
  var __defProps$c = Object.defineProperties;
1739
1739
  var __getOwnPropDescs$c = Object.getOwnPropertyDescriptors;
1740
- var __getOwnPropSymbols$i = Object.getOwnPropertySymbols;
1741
- var __hasOwnProp$i = Object.prototype.hasOwnProperty;
1742
- var __propIsEnum$i = Object.prototype.propertyIsEnumerable;
1743
- var __defNormalProp$i = (obj, key, value) => key in obj ? __defProp$i(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
1744
- var __spreadValues$i = (a, b) => {
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$i.call(b, prop))
1747
- __defNormalProp$i(a, prop, b[prop]);
1748
- if (__getOwnPropSymbols$i)
1749
- for (var prop of __getOwnPropSymbols$i(b)) {
1750
- if (__propIsEnum$i.call(b, prop))
1751
- __defNormalProp$i(a, prop, b[prop]);
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$i({}, reaction), { reflection: feedback }));
1764
- const setRating = (rating) => setReaction(__spreadProps$c(__spreadValues$i({}, reaction), { rating }));
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$i(__spreadValues$i({}, props), reaction), { setRating })))))));
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$h = Object.defineProperty;
3201
+ var __defProp$j = Object.defineProperty;
3198
3202
  var __defProps$b = Object.defineProperties;
3199
3203
  var __getOwnPropDescs$b = Object.getOwnPropertyDescriptors;
3200
- var __getOwnPropSymbols$h = Object.getOwnPropertySymbols;
3201
- var __hasOwnProp$h = Object.prototype.hasOwnProperty;
3202
- var __propIsEnum$h = Object.prototype.propertyIsEnumerable;
3203
- var __defNormalProp$h = (obj, key, value) => key in obj ? __defProp$h(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
3204
- var __spreadValues$h = (a, b) => {
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$h.call(b, prop))
3207
- __defNormalProp$h(a, prop, b[prop]);
3208
- if (__getOwnPropSymbols$h)
3209
- for (var prop of __getOwnPropSymbols$h(b)) {
3210
- if (__propIsEnum$h.call(b, prop))
3211
- __defNormalProp$h(a, prop, b[prop]);
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$h({}, props), { progress, target, onClick: onOpen })), open && !!props.preview && /* @__PURE__ */ React.createElement(BadgeCard, __spreadProps$b(__spreadValues$h({}, props), { onClose })), open && !props.preview && /* @__PURE__ */ React.createElement(Overlay, null, /* @__PURE__ */ React.createElement(BadgeCard, __spreadProps$b(__spreadValues$h({}, props), { onClose }))));
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$g = Object.defineProperty;
3272
+ var __defProp$i = Object.defineProperty;
3269
3273
  var __defProps$a = Object.defineProperties;
3270
3274
  var __getOwnPropDescs$a = Object.getOwnPropertyDescriptors;
3271
- var __getOwnPropSymbols$g = Object.getOwnPropertySymbols;
3272
- var __hasOwnProp$g = Object.prototype.hasOwnProperty;
3273
- var __propIsEnum$g = Object.prototype.propertyIsEnumerable;
3274
- var __defNormalProp$g = (obj, key, value) => key in obj ? __defProp$g(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
3275
- var __spreadValues$g = (a, b) => {
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$g.call(b, prop))
3278
- __defNormalProp$g(a, prop, b[prop]);
3279
- if (__getOwnPropSymbols$g)
3280
- for (var prop of __getOwnPropSymbols$g(b)) {
3281
- if (__propIsEnum$g.call(b, prop))
3282
- __defNormalProp$g(a, prop, b[prop]);
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$g({}, o), { criteriaName: c.displayName })));
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$f = Object.defineProperty;
3352
+ var __defProp$h = Object.defineProperty;
3349
3353
  var __defProps$9 = Object.defineProperties;
3350
3354
  var __getOwnPropDescs$9 = Object.getOwnPropertyDescriptors;
3351
- var __getOwnPropSymbols$f = Object.getOwnPropertySymbols;
3352
- var __hasOwnProp$f = Object.prototype.hasOwnProperty;
3353
- var __propIsEnum$f = Object.prototype.propertyIsEnumerable;
3354
- var __defNormalProp$f = (obj, key, value) => key in obj ? __defProp$f(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
3355
- var __spreadValues$f = (a, b) => {
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$f.call(b, prop))
3358
- __defNormalProp$f(a, prop, b[prop]);
3359
- if (__getOwnPropSymbols$f)
3360
- for (var prop of __getOwnPropSymbols$f(b)) {
3361
- if (__propIsEnum$f.call(b, prop))
3362
- __defNormalProp$f(a, prop, b[prop]);
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$f({}, filters);
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$f({ key: i }, b), { compact: list, readonly: props.readonly }));
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$f({ key: i }, b), { compact: list }));
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$f({ key: i }, b), { compact: list }));
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$f({ key: i }, b), { compact: list }));
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$f({ key: i }, b), { compact: list }));
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 DateSelection = (props) => {
3575
- const today = new Date();
3576
- const [month, setMonth] = React__default.useState(calend(props.date || today));
3577
- 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 })));
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 MonthSelection = (props) => {
3580
- const month = props.month;
3581
- const previousMonth = () => props.setMonth(new Date(month.getFullYear(), month.getMonth() - 1, 1));
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
- const DaySelection = (props) => {
3586
- const today = new Date();
3587
- const Days = [];
3588
- const [start, end] = weeks(props.month, 6);
3589
- for (let cur = start; cur <= end; cur = nextDate$1(cur)) {
3590
- const isToday = isSameDate(today, cur);
3591
- const isActive = isSameDate(props.date, cur);
3592
- const isCurrentMonth = cur.getMonth() === props.month.getMonth();
3593
- const onClick = () => props.setDate(isActive ? null : cur);
3594
- Days.push(
3595
- /* @__PURE__ */ React__default.createElement(
3596
- DaySelectionOption,
3597
- {
3598
- key: cur.toString(),
3599
- today: isToday,
3600
- active: isActive,
3601
- currentMonth: isCurrentMonth,
3602
- onClick
3603
- },
3604
- cur.getDate()
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 DaySelectionOption = (props) => {
3613
- 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();
3614
- return /* @__PURE__ */ React__default.createElement("span", { onClick: props.onClick, className }, props.children);
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 WEEKDAYS = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"];
3617
- const weeks = (date, weeks2) => {
3618
- const start = new Date(date.getFullYear(), date.getMonth(), date.getDate() - date.getDay());
3619
- const end = new Date(start.getFullYear(), start.getMonth(), start.getDate() + weeks2 * 7 - 1);
3620
- return [start, end];
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$e = Object.defineProperty;
4028
+ var __defProp$f = Object.defineProperty;
3783
4029
  var __defProps$8 = Object.defineProperties;
3784
4030
  var __getOwnPropDescs$8 = Object.getOwnPropertyDescriptors;
3785
- var __getOwnPropSymbols$e = Object.getOwnPropertySymbols;
3786
- var __hasOwnProp$e = Object.prototype.hasOwnProperty;
3787
- var __propIsEnum$e = Object.prototype.propertyIsEnumerable;
3788
- var __defNormalProp$e = (obj, key, value) => key in obj ? __defProp$e(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
3789
- var __spreadValues$e = (a, b) => {
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$e.call(b, prop))
3792
- __defNormalProp$e(a, prop, b[prop]);
3793
- if (__getOwnPropSymbols$e)
3794
- for (var prop of __getOwnPropSymbols$e(b)) {
3795
- if (__propIsEnum$e.call(b, prop))
3796
- __defNormalProp$e(a, prop, b[prop]);
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$e({}, 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);
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$e({}, props));
4078
+ return /* @__PURE__ */ React__default.createElement(Embed, __spreadValues$f({}, props));
3833
4079
  case props.format === "image":
3834
- return /* @__PURE__ */ React__default.createElement(Image, __spreadValues$e({}, props));
4080
+ return /* @__PURE__ */ React__default.createElement(Image, __spreadValues$f({}, props));
3835
4081
  case props.questionType === "radio":
3836
- return /* @__PURE__ */ React__default.createElement(RadioQuestion, __spreadValues$e({}, props));
4082
+ return /* @__PURE__ */ React__default.createElement(RadioQuestion, __spreadValues$f({}, props));
3837
4083
  case props.questionType === "checkbox":
3838
- return /* @__PURE__ */ React__default.createElement(CheckboxQuestion, __spreadValues$e({}, props));
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$e({}, props));
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$e({}, props));
4088
+ return /* @__PURE__ */ React__default.createElement(FileUploadQuestion, __spreadValues$f({}, props));
3843
4089
  case props.questionType === "text":
3844
- return /* @__PURE__ */ React__default.createElement(TextQuestion, __spreadValues$e({}, props));
4090
+ return /* @__PURE__ */ React__default.createElement(TextQuestion, __spreadValues$f({}, props));
3845
4091
  case props.questionType === "date":
3846
- return /* @__PURE__ */ React__default.createElement(DateQuestion, __spreadValues$e({}, props));
4092
+ return /* @__PURE__ */ React__default.createElement(DateQuestion, __spreadValues$f({}, props));
3847
4093
  case props.questionType === "time":
3848
- return /* @__PURE__ */ React__default.createElement(TimeQuestion, __spreadValues$e({}, props));
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$d = Object.defineProperty;
4451
+ var __defProp$e = Object.defineProperty;
4206
4452
  var __defProps$7 = Object.defineProperties;
4207
4453
  var __getOwnPropDescs$7 = Object.getOwnPropertyDescriptors;
4208
- var __getOwnPropSymbols$d = Object.getOwnPropertySymbols;
4209
- var __hasOwnProp$d = Object.prototype.hasOwnProperty;
4210
- var __propIsEnum$d = Object.prototype.propertyIsEnumerable;
4211
- var __defNormalProp$d = (obj, key, value) => key in obj ? __defProp$d(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
4212
- var __spreadValues$d = (a, b) => {
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$d.call(b, prop))
4215
- __defNormalProp$d(a, prop, b[prop]);
4216
- if (__getOwnPropSymbols$d)
4217
- for (var prop of __getOwnPropSymbols$d(b)) {
4218
- if (__propIsEnum$d.call(b, prop))
4219
- __defNormalProp$d(a, prop, b[prop]);
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
- const bg = props.preview ? "" : "bg-gray-100";
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-300 hover:text-slate-500"
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-md" }, "Back")
4333
- ), !!props.displayName && /* @__PURE__ */ React__default.createElement("h2", { className: "h-max font-semibold text-2xl" }, props.displayName), !!props.description && /* @__PURE__ */ React__default.createElement("p", { className: "h-max max-h-[14rem] overflow-y-auto whitespace-pre-line" }, props.description), !!props.eta && /* @__PURE__ */ React__default.createElement("p", { className: "text-sm h-max font-semibold" }, "Estimated Completion Time: ", props.eta)), /* @__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("form", { className: "w-full max-w-[64rem] m-auto grid grid-cols-1 gap-y-12", onSubmit }, items.map((item) => {
4334
- return /* @__PURE__ */ React__default.createElement(FormItem, __spreadProps$7(__spreadValues$d({ key: item.itemId }, item), { minText: 0, disabled: !!props.preview }));
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
- Button,
4594
+ "button",
4350
4595
  {
4351
4596
  type: "submit",
4352
- color: "blue",
4353
- size: "md",
4354
- spacing: "md",
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
- Button,
4601
+ "button",
4361
4602
  {
4362
4603
  type: "button",
4363
- color: "dark-blue",
4364
- size: "md",
4365
- spacing: "md",
4366
- border: "rounded",
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 ? "text-sky-200" : "text-slate-200";
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) }, /* @__PURE__ */ React__default.createElement(Icon$1, { name: "circle" })));
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-sm text-monochrome-500" }, "Poor");
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-sm text-monochrome-500" }, "Amazing");
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 text-monochrome-500" });
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-md text-slate-600 font-semibold" }, "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(
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] text-slate-600 grid grid-cols-5 justify-self-center items-center`
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$c = Object.defineProperty;
4414
- var __getOwnPropSymbols$c = Object.getOwnPropertySymbols;
4415
- var __hasOwnProp$c = Object.prototype.hasOwnProperty;
4416
- var __propIsEnum$c = Object.prototype.propertyIsEnumerable;
4417
- var __defNormalProp$c = (obj, key, value) => key in obj ? __defProp$c(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
4418
- var __spreadValues$c = (a, b) => {
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$c.call(b, prop))
4421
- __defNormalProp$c(a, prop, b[prop]);
4422
- if (__getOwnPropSymbols$c)
4423
- for (var prop of __getOwnPropSymbols$c(b)) {
4424
- if (__propIsEnum$c.call(b, prop))
4425
- __defNormalProp$c(a, prop, b[prop]);
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$c({ disabled: props.disabled, active: props.active, onClick }, config));
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$b = Object.defineProperty;
4746
+ var __defProp$c = Object.defineProperty;
4510
4747
  var __defProps$6 = Object.defineProperties;
4511
4748
  var __getOwnPropDescs$6 = Object.getOwnPropertyDescriptors;
4512
- var __getOwnPropSymbols$b = Object.getOwnPropertySymbols;
4513
- var __hasOwnProp$b = Object.prototype.hasOwnProperty;
4514
- var __propIsEnum$b = Object.prototype.propertyIsEnumerable;
4515
- var __defNormalProp$b = (obj, key, value) => key in obj ? __defProp$b(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
4516
- var __spreadValues$b = (a, b) => {
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$b.call(b, prop))
4519
- __defNormalProp$b(a, prop, b[prop]);
4520
- if (__getOwnPropSymbols$b)
4521
- for (var prop of __getOwnPropSymbols$b(b)) {
4522
- if (__propIsEnum$b.call(b, prop))
4523
- __defNormalProp$b(a, prop, b[prop]);
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$b({}, Link.props), { menu: true })));
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$a = Object.defineProperty;
4879
+ var __defProp$b = Object.defineProperty;
4643
4880
  var __defProps$5 = Object.defineProperties;
4644
4881
  var __getOwnPropDescs$5 = Object.getOwnPropertyDescriptors;
4645
- var __getOwnPropSymbols$a = Object.getOwnPropertySymbols;
4646
- var __hasOwnProp$a = Object.prototype.hasOwnProperty;
4647
- var __propIsEnum$a = Object.prototype.propertyIsEnumerable;
4648
- var __defNormalProp$a = (obj, key, value) => key in obj ? __defProp$a(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
4649
- var __spreadValues$a = (a, b) => {
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$a.call(b, prop))
4652
- __defNormalProp$a(a, prop, b[prop]);
4653
- if (__getOwnPropSymbols$a)
4654
- for (var prop of __getOwnPropSymbols$a(b)) {
4655
- if (__propIsEnum$a.call(b, prop))
4656
- __defNormalProp$a(a, prop, b[prop]);
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$a({}, 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(
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$9 = Object.defineProperty;
5035
+ var __defProp$a = Object.defineProperty;
4799
5036
  var __defProps$4 = Object.defineProperties;
4800
5037
  var __getOwnPropDescs$4 = Object.getOwnPropertyDescriptors;
4801
- var __getOwnPropSymbols$9 = Object.getOwnPropertySymbols;
4802
- var __hasOwnProp$9 = Object.prototype.hasOwnProperty;
4803
- var __propIsEnum$9 = Object.prototype.propertyIsEnumerable;
4804
- var __defNormalProp$9 = (obj, key, value) => key in obj ? __defProp$9(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
4805
- var __spreadValues$9 = (a, b) => {
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$9.call(b, prop))
4808
- __defNormalProp$9(a, prop, b[prop]);
4809
- if (__getOwnPropSymbols$9)
4810
- for (var prop of __getOwnPropSymbols$9(b)) {
4811
- if (__propIsEnum$9.call(b, prop))
4812
- __defNormalProp$9(a, prop, b[prop]);
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$9({}, props)));
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$9({}, organization), {
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$8 = Object.defineProperty;
5149
- var __getOwnPropSymbols$8 = Object.getOwnPropertySymbols;
5150
- var __hasOwnProp$8 = Object.prototype.hasOwnProperty;
5151
- var __propIsEnum$8 = Object.prototype.propertyIsEnumerable;
5152
- var __defNormalProp$8 = (obj, key, value) => key in obj ? __defProp$8(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
5153
- var __spreadValues$8 = (a, b) => {
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$8.call(b, prop))
5156
- __defNormalProp$8(a, prop, b[prop]);
5157
- if (__getOwnPropSymbols$8)
5158
- for (var prop of __getOwnPropSymbols$8(b)) {
5159
- if (__propIsEnum$8.call(b, prop))
5160
- __defNormalProp$8(a, prop, b[prop]);
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$8({}, props));
5405
+ return /* @__PURE__ */ React__default.createElement(DropDownInput, __spreadValues$9({}, props));
5169
5406
  default:
5170
- return /* @__PURE__ */ React__default.createElement(Input, __spreadValues$8({}, props));
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$7 = Object.defineProperty;
5515
+ var __defProp$8 = Object.defineProperty;
5279
5516
  var __defProps$3 = Object.defineProperties;
5280
5517
  var __getOwnPropDescs$3 = Object.getOwnPropertyDescriptors;
5281
- var __getOwnPropSymbols$7 = Object.getOwnPropertySymbols;
5282
- var __hasOwnProp$7 = Object.prototype.hasOwnProperty;
5283
- var __propIsEnum$7 = Object.prototype.propertyIsEnumerable;
5284
- var __defNormalProp$7 = (obj, key, value) => key in obj ? __defProp$7(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
5285
- var __spreadValues$7 = (a, b) => {
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$7.call(b, prop))
5288
- __defNormalProp$7(a, prop, b[prop]);
5289
- if (__getOwnPropSymbols$7)
5290
- for (var prop of __getOwnPropSymbols$7(b)) {
5291
- if (__propIsEnum$7.call(b, prop))
5292
- __defNormalProp$7(a, prop, b[prop]);
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$7({}, responses), { [key]: value }));
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$6 = Object.defineProperty;
5659
+ var __defProp$7 = Object.defineProperty;
5423
5660
  var __defProps$2 = Object.defineProperties;
5424
5661
  var __getOwnPropDescs$2 = Object.getOwnPropertyDescriptors;
5425
- var __getOwnPropSymbols$6 = Object.getOwnPropertySymbols;
5426
- var __hasOwnProp$6 = Object.prototype.hasOwnProperty;
5427
- var __propIsEnum$6 = Object.prototype.propertyIsEnumerable;
5428
- var __defNormalProp$6 = (obj, key, value) => key in obj ? __defProp$6(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
5429
- var __spreadValues$6 = (a, b) => {
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$6.call(b, prop))
5432
- __defNormalProp$6(a, prop, b[prop]);
5433
- if (__getOwnPropSymbols$6)
5434
- for (var prop of __getOwnPropSymbols$6(b)) {
5435
- if (__propIsEnum$6.call(b, prop))
5436
- __defNormalProp$6(a, prop, b[prop]);
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$6({ onSubmit: props.onSubmit }, props.form), { onClose })));
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 getColor = (label) => {
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(React__default.Fragment, null, /* @__PURE__ */ React__default.createElement("div", null, /* @__PURE__ */ React__default.createElement("label", { className: "relative inline-flex items-center cursor-pointer" }, /* @__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 peer",
5724
+ className: "peer sr-only",
5495
5725
  checked: hide,
5496
5726
  onChange: () => setHide(!hide)
5497
5727
  }
5498
- ), /* @__PURE__ */ React__default.createElement("div", { className: "w-11 h-6 bg-gray-200 rounded-full peer peer-focus:ring-4 peer-focus:ring-blue-300 dark:peer-focus:ring-blue-800 dark:bg-gray-700 peer-checked:after:translate-x-full peer-checked:after:border-white after:content-[''] after:absolute after:top-0.5 after:left-[2px] after:bg-white after:border-gray-300 after:border after:rounded-full after:h-5 after:w-5 after:transition-all dark:border-gray-600 peer-checked:bg-blue-600" }), /* @__PURE__ */ React__default.createElement(
5499
- "span",
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
- className: "ml-3 text-sm font-bold text-gray-700",
5502
- onChange: () => setHide(!hide)
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
- "Hide Stopwatch?"
5505
- ))), /* @__PURE__ */ React__default.createElement("div", { className: `shadow-2xl shadow-gray-400 h-30 w-48 grid grid-cols-1 justify-items-center text-slate-600 text-md gap-4 p-4 box-border ${visibility}` }, /* @__PURE__ */ React__default.createElement("div", { className: "shadow-xl w-36 text-center text-lg p-2" }, props.time), /* @__PURE__ */ React__default.createElement("div", { className: "grid grid-cols-2 gap-2" }, ctaList && ctaList.length && ctaList.map((ctaObj, i) => {
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-2" }, entries.map(([categoryId, max]) => {
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-gray-400",
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 criteriaKeys = Object.keys(targetKeys);
5672
- const sealEarned = criteriaKeys.length > 0 && criteriaKeys.every((id) => {
5673
- var _a2;
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, sectionTitle, statusLabel) => {
5918
+ const renderBadgePool = (badgePool) => {
5680
5919
  if (badgePool.length === 0)
5681
5920
  return null;
5682
- return /* @__PURE__ */ React.createElement("div", { className: "space-y-8 pt-4" }, /* @__PURE__ */ React.createElement("div", { className: "flex items-center gap-x-2 border-b border-zinc-100 pb-2" }, /* @__PURE__ */ React.createElement("h2", { className: "text-[10px] font-black uppercase text-zinc-400 tracking-widest" }, sectionTitle), /* @__PURE__ */ React.createElement("span", { className: "bg-zinc-100 text-zinc-500 text-[10px] px-2 py-0.5 rounded-full font-bold" }, badgePool.length)), level2Ids.map((l2Id) => {
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-4" }, /* @__PURE__ */ React.createElement("h3", { className: "font-bold text-base text-zinc-800 flex items-center gap-x-2" }, /* @__PURE__ */ React.createElement("div", { className: "h-4 w-1 bg-blue-600 rounded-full" }), ((_a2 = props.categoryNames) == null ? void 0 : _a2[l2Id]) || l2Id), /* @__PURE__ */ React.createElement("div", { className: layout === "grid" ? "grid grid-cols-3 gap-4" : "space-y-3" }, groupBadges.map((b) => /* @__PURE__ */ React.createElement("div", { key: b.badgeId, className: `p-4 bg-white rounded-xl border border-zinc-200 shadow-sm ${layout === "grid" ? "flex flex-col" : "flex items-center justify-between"}` }, /* @__PURE__ */ React.createElement("div", { className: "flex items-center gap-x-3" }, /* @__PURE__ */ React.createElement(BadgeEmblem, { size: "sm", iconURL: b.iconURL }), /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement("p", { className: "text-xs font-bold text-zinc-800" }, b.displayName), statusLabel && /* @__PURE__ */ React.createElement("p", { className: "text-[9px] text-amber-500 font-black uppercase mt-0.5" }, statusLabel))), /* @__PURE__ */ React.createElement("span", { className: "font-black text-blue-600 text-xs" }, b.weight, " pts")))));
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: "p-6 space-y-10 border-t border-zinc-100 bg-zinc-50/30 animate-in fade-in duration-500" }, /* @__PURE__ */ React.createElement("div", { className: "grid grid-cols-3 gap-4 bg-white p-5 rounded-xl border border-zinc-100 shadow-sm text-sm" }, /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement("p", { className: "text-zinc-400 uppercase text-[9px] font-black mb-1" }, "Student"), /* @__PURE__ */ React.createElement("p", { className: "font-bold text-zinc-800" }, safeRender(props.studentName) || "Guest User"), /* @__PURE__ */ React.createElement("p", { className: "text-zinc-500 text-[11px] mt-0.5" }, safeRender(props.studentEmail))), /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement("p", { className: "text-zinc-400 uppercase text-[9px] font-black mb-1" }, "Organization"), /* @__PURE__ */ React.createElement("p", { className: "font-bold text-zinc-800" }, safeRender(props.schoolName) || "Not Provided"), /* @__PURE__ */ React.createElement("p", { className: "text-zinc-500 text-[11px] mt-0.5" }, props.gradeLevel ? `Grade ${safeRender(props.gradeLevel)}` : "")), /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement("p", { className: "text-zinc-400 uppercase text-[9px] font-black mb-1" }, "Status"), /* @__PURE__ */ React.createElement("p", { className: "text-blue-500 font-bold text-[10px] uppercase" }, "Verified Record"), /* @__PURE__ */ React.createElement("p", { className: "text-zinc-400 text-[10px] mt-0.5" }, props.today || new Date().toLocaleDateString()))), /* @__PURE__ */ React.createElement("section", { className: "space-y-6" }, /* @__PURE__ */ React.createElement("div", { className: "space-y-2" }, /* @__PURE__ */ React.createElement("h1", { className: "text-2xl font-black text-zinc-900 tracking-tight" }, props.title || "Untitled Pathway"), /* @__PURE__ */ React.createElement("p", { className: "text-sm text-zinc-500 max-w-3xl leading-relaxed" }, props.description || "No description provided for this pathway.")), /* @__PURE__ */ React.createElement("div", { className: "grid grid-cols-3 gap-4" }, /* @__PURE__ */ React.createElement("div", { className: "bg-white border border-zinc-200 p-4 rounded-xl shadow-sm flex flex-col items-center justify-center text-center" }, /* @__PURE__ */ React.createElement("span", { className: "text-2xl font-black text-blue-600" }, totalPointsEarned.toLocaleString()), /* @__PURE__ */ React.createElement("span", { className: "text-[10px] font-bold text-zinc-400 uppercase tracking-widest mt-1" }, "Total Pts")), /* @__PURE__ */ React.createElement("div", { className: "bg-white border border-zinc-200 p-4 rounded-xl shadow-sm flex flex-col items-center justify-center text-center" }, /* @__PURE__ */ React.createElement("span", { className: "text-2xl font-black text-blue-600" }, badgesEarnedCount), /* @__PURE__ */ React.createElement("span", { className: "text-[10px] font-bold text-zinc-400 uppercase tracking-widest mt-1" }, "Badges Earned")), /* @__PURE__ */ React.createElement("div", { className: "bg-white border border-zinc-200 p-4 rounded-xl shadow-sm flex flex-col items-center justify-center text-center" }, /* @__PURE__ */ React.createElement("span", { className: `text-2xl font-black ${sealEarned ? "text-emerald-500" : "text-zinc-300"}` }, sealEarned ? "Yes" : "No"), /* @__PURE__ */ React.createElement("span", { className: "text-[10px] font-bold text-zinc-400 uppercase tracking-widest mt-1" }, "Seal Earned")))), /* @__PURE__ */ React.createElement("section", null, /* @__PURE__ */ React.createElement("p", { className: "text-[10px] font-black uppercase text-zinc-400 tracking-widest mb-3" }, "Criteria & Progress"), /* @__PURE__ */ React.createElement("div", { className: "p-5 border border-zinc-100 rounded-xl bg-white shadow-sm" }, /* @__PURE__ */ React.createElement(PathwayProgressBarChart, { targets: props.mappedTargets, points: props.mappedPoints, height: "md" }))), /* @__PURE__ */ React.createElement("section", { className: "space-y-12" }, /* @__PURE__ */ React.createElement("div", { className: "flex justify-between items-center border-b border-zinc-200 pb-3" }, /* @__PURE__ */ React.createElement("p", { className: "text-[10px] font-black uppercase text-zinc-400 tracking-widest" }, "Activity History"), /* @__PURE__ */ React.createElement("div", { className: "flex bg-white border border-zinc-200 p-1 rounded-md text-[10px] font-bold uppercase" }, /* @__PURE__ */ React.createElement("button", { onClick: () => setLayout("list"), className: `px-3 py-1.5 rounded ${layout === "list" ? "bg-zinc-100 text-blue-600" : "text-zinc-400"}` }, "List View"), /* @__PURE__ */ React.createElement("button", { onClick: () => setLayout("grid"), className: `px-3 py-1.5 rounded ${layout === "grid" ? "bg-zinc-100 text-blue-600" : "text-zinc-400"}` }, "Grid View"))), renderBadgePool(completedBadges, "Completed Activity"), renderBadgePool(inProgressBadges, "In Progress", "Started")));
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$5 = Object.defineProperty;
5956
+ var __defProp$6 = Object.defineProperty;
5694
5957
  var __defProps$1 = Object.defineProperties;
5695
5958
  var __getOwnPropDescs$1 = Object.getOwnPropertyDescriptors;
5696
- var __getOwnPropSymbols$5 = Object.getOwnPropertySymbols;
5697
- var __hasOwnProp$5 = Object.prototype.hasOwnProperty;
5698
- var __propIsEnum$5 = Object.prototype.propertyIsEnumerable;
5699
- var __defNormalProp$5 = (obj, key, value) => key in obj ? __defProp$5(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
5700
- var __spreadValues$5 = (a, b) => {
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$5.call(b, prop))
5703
- __defNormalProp$5(a, prop, b[prop]);
5704
- if (__getOwnPropSymbols$5)
5705
- for (var prop of __getOwnPropSymbols$5(b)) {
5706
- if (__propIsEnum$5.call(b, prop))
5707
- __defNormalProp$5(a, prop, b[prop]);
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$5({}, props), {
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$5({}, 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(
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$5({}, sharedProps))));
6038
+ )))) : /* @__PURE__ */ React.createElement(PathwayTranscript, __spreadValues$6({}, sharedProps))));
5776
6039
  };
5777
6040
 
5778
- var __defProp$4 = Object.defineProperty;
5779
- var __getOwnPropSymbols$4 = Object.getOwnPropertySymbols;
5780
- var __hasOwnProp$4 = Object.prototype.hasOwnProperty;
5781
- var __propIsEnum$4 = Object.prototype.propertyIsEnumerable;
5782
- var __defNormalProp$4 = (obj, key, value) => key in obj ? __defProp$4(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
5783
- var __spreadValues$4 = (a, b) => {
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$4.call(b, prop))
5786
- __defNormalProp$4(a, prop, b[prop]);
5787
- if (__getOwnPropSymbols$4)
5788
- for (var prop of __getOwnPropSymbols$4(b)) {
5789
- if (__propIsEnum$4.call(b, prop))
5790
- __defNormalProp$4(a, prop, b[prop]);
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$4({}, props)));
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$3 = Object.defineProperty;
6102
+ var __defProp$4 = Object.defineProperty;
5840
6103
  var __defProps = Object.defineProperties;
5841
6104
  var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
5842
- var __getOwnPropSymbols$3 = Object.getOwnPropertySymbols;
5843
- var __hasOwnProp$3 = Object.prototype.hasOwnProperty;
5844
- var __propIsEnum$3 = Object.prototype.propertyIsEnumerable;
5845
- var __defNormalProp$3 = (obj, key, value) => key in obj ? __defProp$3(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
5846
- var __spreadValues$3 = (a, b) => {
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$3.call(b, prop))
5849
- __defNormalProp$3(a, prop, b[prop]);
5850
- if (__getOwnPropSymbols$3)
5851
- for (var prop of __getOwnPropSymbols$3(b)) {
5852
- if (__propIsEnum$3.call(b, prop))
5853
- __defNormalProp$3(a, prop, b[prop]);
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$3({ key: i }, p), { compact: list }));
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$3({ key: i }, p), { compact: list }));
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$3({ key: i }, p), { compact: list }));
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$3({ key: i }, p), { compact: list }));
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$3({ key: i }, p), { compact: list }));
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: "bg-sky-blue-400/15 border border-sky-blue-400/30",
5916
- mint: "bg-mint-400/15 border border-mint-400/30",
5917
- gold: "bg-gold-400/15 border border-gold-400/30",
5918
- slate: "bg-slate-100 border border-slate-200"
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 Pill = (props) => {
5921
- const accentClassName = ACCENT_CLASSNAMES$1[props.accent || "slate"];
5922
- 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);
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