@photonhealth/elements 0.23.0 → 0.23.2

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
@@ -41990,7 +41990,7 @@ function clickOutside(el, accessor) {
41990
41990
  onCleanup(() => document.body.removeEventListener("click", onClick));
41991
41991
  }
41992
41992
 
41993
- var _tmpl$$x = /* @__PURE__ */ template(`<div class=relative>`), _tmpl$2$l$1 = /* @__PURE__ */ template(`<ul role=listbox tabindex=-1>`), _tmpl$3$e$1 = /* @__PURE__ */ template(`<div>`), _tmpl$4$d$1 = /* @__PURE__ */ template(`<li class="relative cursor-default select-none py-2 px-3 text-gray-400"role=option aria-disabled=true tabindex=-1><span class="block truncate">`), _tmpl$5$8 = /* @__PURE__ */ template(`<li role=option tabindex=-1><span class="w-full truncate">`), _tmpl$6$4$1 = /* @__PURE__ */ template(`<button class="absolute inset-y-0 right-8 flex items-center px-1"aria-label="Clear selection"type=button><span class="text-sm text-gray-400">Clear`), _tmpl$7$2$1 = /* @__PURE__ */ template(`<button class="absolute inset-y-0 right-0 flex items-center rounded-r-md px-2"aria-label="Show options">`);
41993
+ var _tmpl$$x = /* @__PURE__ */ template(`<div class=relative>`), _tmpl$2$l$1 = /* @__PURE__ */ template(`<ul role=listbox tabindex=-1>`), _tmpl$3$e$1 = /* @__PURE__ */ template(`<div>`), _tmpl$4$d = /* @__PURE__ */ template(`<li class="relative cursor-default select-none py-2 px-3 text-gray-400"role=option aria-disabled=true tabindex=-1><span class="block truncate">`), _tmpl$5$8$1 = /* @__PURE__ */ template(`<li role=option tabindex=-1><span class="w-full truncate">`), _tmpl$6$4$1 = /* @__PURE__ */ template(`<button class="absolute inset-y-0 right-8 flex items-center px-1"aria-label="Clear selection"type=button><span class="text-sm text-gray-400">Clear`), _tmpl$7$2$1 = /* @__PURE__ */ template(`<button class="absolute inset-y-0 right-0 flex items-center rounded-r-md px-2"aria-label="Show options">`);
41994
41994
  const ComboBoxContext = createContext([{
41995
41995
  open: false,
41996
41996
  selected: {},
@@ -42087,7 +42087,7 @@ function ComboOption(props) {
42087
42087
  const active = () => state.active === props.key;
42088
42088
  if (props.disabled) {
42089
42089
  return (() => {
42090
- var _el$4 = _tmpl$4$d$1(), _el$5 = _el$4.firstChild;
42090
+ var _el$4 = _tmpl$4$d(), _el$5 = _el$4.firstChild;
42091
42091
  insert(_el$5, (() => {
42092
42092
  var _c$ = memo$1(() => !!props.render);
42093
42093
  return () => _c$() ? createComponent(Dynamic, {
@@ -42106,7 +42106,7 @@ function ComboOption(props) {
42106
42106
  })();
42107
42107
  }
42108
42108
  return (() => {
42109
- var _el$6 = _tmpl$5$8(), _el$7 = _el$6.firstChild;
42109
+ var _el$6 = _tmpl$5$8$1(), _el$7 = _el$6.firstChild;
42110
42110
  _el$6.addEventListener("mouseleave", () => setActive(""));
42111
42111
  _el$6.addEventListener("mouseenter", () => setActive(props.key));
42112
42112
  _el$6.$$click = () => setSelected(props.value);
@@ -53264,6 +53264,8 @@ const ListPharmaciesQuery = gql`
53264
53264
  }
53265
53265
  `;
53266
53266
 
53267
+ const formatPatientWeight = (weight, weightUnit = "lb") => `Patient weight: ${weight} ${weightUnit}`;
53268
+
53267
53269
  const DraftPrescriptionsContext = createContext();
53268
53270
  const transformPrescriptionFormData = (prescription, patientId) => ({
53269
53271
  externalId: prescription.externalId,
@@ -53284,16 +53286,24 @@ function isTreatmentInDraftPrescriptions(treatmentId, draftedPrescriptions) {
53284
53286
  }
53285
53287
  const createPrefillPrescriptionsOnApi = async ({
53286
53288
  client,
53287
- props
53289
+ props,
53290
+ rxNotesPrefill
53288
53291
  }) => {
53289
53292
  let rxToCreate = [];
53290
53293
  if (props.templateIdsPrefill.length > 0) {
53291
53294
  const dedupedTemplateIds = Array.from(new Set(props.templateIdsPrefill));
53292
- const templatedCreateRxList = dedupedTemplateIds.map((templateId) => ({
53293
- ...props.templateOverrides?.[templateId],
53294
- patientId: props.patientId,
53295
- templateId
53296
- }));
53295
+ const templatedCreateRxList = dedupedTemplateIds.map((templateId) => {
53296
+ const templateOverrideNotes = props.templateOverrides?.[templateId]?.notes;
53297
+ const notes = templateOverrideNotes ? `${templateOverrideNotes}
53298
+
53299
+ ${rxNotesPrefill}` : rxNotesPrefill;
53300
+ return {
53301
+ ...props.templateOverrides?.[templateId],
53302
+ patientId: props.patientId,
53303
+ templateId,
53304
+ notes
53305
+ };
53306
+ });
53297
53307
  rxToCreate = rxToCreate.concat(templatedCreateRxList);
53298
53308
  }
53299
53309
  if (props.prescriptionIdsPrefill.length > 0) {
@@ -53333,6 +53343,14 @@ const DraftPrescriptionsProvider = (props) => {
53333
53343
  const [isLoadingPrefills, setIsLoadingPrefills] = createSignal(false);
53334
53344
  const [draftPrescriptions, setDraftPrescriptions] = createSignal([]);
53335
53345
  const prescriptionIds = createMemo(() => draftPrescriptions().map((prescription) => prescription.id));
53346
+ const rxNotesPrefill = createMemo(() => {
53347
+ let notesPrefill = "";
53348
+ if (props.additionalNotes) notesPrefill = `${props.additionalNotes}
53349
+
53350
+ `;
53351
+ if (props.weight) notesPrefill = `${notesPrefill}${formatPatientWeight(props.weight, props.weightUnit)}`;
53352
+ return notesPrefill || void 0;
53353
+ });
53336
53354
  createEffect(async () => {
53337
53355
  if (
53338
53356
  // must have templateIds or prescriptionIds to create prescriptions
@@ -53345,7 +53363,8 @@ const DraftPrescriptionsProvider = (props) => {
53345
53363
  try {
53346
53364
  const newRxs = await createPrefillPrescriptionsOnApi({
53347
53365
  client,
53348
- props
53366
+ props,
53367
+ rxNotesPrefill: rxNotesPrefill()
53349
53368
  });
53350
53369
  if (newRxs) {
53351
53370
  setDraftPrescriptions((prev) => [...prev, ...newRxs]);
@@ -53484,6 +53503,7 @@ const DraftPrescriptionsProvider = (props) => {
53484
53503
  draftPrescriptions,
53485
53504
  prescriptionIds,
53486
53505
  isLoadingPrefills,
53506
+ rxNotesPrefill,
53487
53507
  // actions
53488
53508
  setDraftPrescriptions,
53489
53509
  tryCreatePrescription,
@@ -58382,7 +58402,7 @@ function checkHasPermission(subset, superset) {
58382
58402
  return subset.every((permission) => superset.includes(permission));
58383
58403
  }
58384
58404
 
58385
- const version$1 = "0.23.0";
58405
+ const version$1 = "0.23.2";
58386
58406
  const pkg = {
58387
58407
  version: version$1};
58388
58408
 
@@ -58600,7 +58620,7 @@ customElement("photon-client", {
58600
58620
  }
58601
58621
  }, Component$a);
58602
58622
 
58603
- const tailwind = " :host {} /*\n! tailwindcss v3.4.3 | MIT License | https://tailwindcss.com\n*/ /*\n1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)\n2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)\n*/\n*,\n::before,\n::after {\n box-sizing: border-box; /* 1 */\n border-width: 0; /* 2 */\n border-style: solid; /* 2 */\n border-color: #e5e7eb; /* 2 */\n}\n\n::before,\n::after {\n --tw-content: '';\n}\n\n/*\n1. Use a consistent sensible line-height in all browsers.\n2. Prevent adjustments of font size after orientation changes in iOS.\n3. Use a more readable tab size.\n4. Use the user's configured `sans` font-family by default.\n5. Use the user's configured `sans` font-feature-settings by default.\n6. Use the user's configured `sans` font-variation-settings by default.\n7. Disable tap highlights on iOS\n*/\nhtml,\n:host {\n line-height: 1.5; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n -moz-tab-size: 4; /* 3 */\n -o-tab-size: 4;\n tab-size: 4; /* 3 */\n font-family: ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\"; /* 4 */\n font-feature-settings: normal; /* 5 */\n font-variation-settings: normal; /* 6 */\n -webkit-tap-highlight-color: transparent; /* 7 */\n}\n\n/*\n1. Remove the margin in all browsers.\n2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.\n*/\nbody {\n margin: 0; /* 1 */\n line-height: inherit; /* 2 */\n}\n\n/*\n1. Add the correct height in Firefox.\n2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)\n3. Ensure horizontal rules are visible by default.\n*/\nhr {\n height: 0; /* 1 */\n color: inherit; /* 2 */\n border-top-width: 1px; /* 3 */\n}\n\n/*\nAdd the correct text decoration in Chrome, Edge, and Safari.\n*/\nabbr:where([title]) {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n}\n\n/*\nRemove the default font size and weight for headings.\n*/\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n font-size: inherit;\n font-weight: inherit;\n}\n\n/*\nReset links to optimize for opt-in styling instead of opt-out.\n*/\na {\n color: inherit;\n text-decoration: inherit;\n}\n\n/*\nAdd the correct font weight in Edge and Safari.\n*/\nb,\nstrong {\n font-weight: bolder;\n}\n\n/*\n1. Use the user's configured `mono` font-family by default.\n2. Use the user's configured `mono` font-feature-settings by default.\n3. Use the user's configured `mono` font-variation-settings by default.\n4. Correct the odd `em` font sizing in all browsers.\n*/\ncode,\nkbd,\nsamp,\npre {\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace; /* 1 */\n font-feature-settings: normal; /* 2 */\n font-variation-settings: normal; /* 3 */\n font-size: 1em; /* 4 */\n}\n\n/*\nAdd the correct font size in all browsers.\n*/\nsmall {\n font-size: 80%;\n}\n\n/*\nPrevent `sub` and `sup` elements from affecting the line height in all browsers.\n*/\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/*\n1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)\n2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)\n3. Remove gaps between table borders by default.\n*/\ntable {\n text-indent: 0; /* 1 */\n border-color: inherit; /* 2 */\n border-collapse: collapse; /* 3 */\n}\n\n/*\n1. Change the font styles in all browsers.\n2. Remove the margin in Firefox and Safari.\n3. Remove default padding in all browsers.\n*/\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-feature-settings: inherit; /* 1 */\n font-variation-settings: inherit; /* 1 */\n font-size: 100%; /* 1 */\n font-weight: inherit; /* 1 */\n line-height: inherit; /* 1 */\n letter-spacing: inherit; /* 1 */\n color: inherit; /* 1 */\n margin: 0; /* 2 */\n padding: 0; /* 3 */\n}\n\n/*\nRemove the inheritance of text transform in Edge and Firefox.\n*/\nbutton,\nselect {\n text-transform: none;\n}\n\n/*\n1. Correct the inability to style clickable types in iOS and Safari.\n2. Remove default button styles.\n*/\nbutton,\ninput:where([type=button]),\ninput:where([type=reset]),\ninput:where([type=submit]) {\n -webkit-appearance: button; /* 1 */\n background-color: transparent; /* 2 */\n background-image: none; /* 2 */\n}\n\n/*\nUse the modern Firefox focus style for all focusable elements.\n*/\n:-moz-focusring {\n outline: auto;\n}\n\n/*\nRemove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)\n*/\n:-moz-ui-invalid {\n box-shadow: none;\n}\n\n/*\nAdd the correct vertical alignment in Chrome and Firefox.\n*/\nprogress {\n vertical-align: baseline;\n}\n\n/*\nCorrect the cursor style of increment and decrement buttons in Safari.\n*/\n::-webkit-inner-spin-button,\n::-webkit-outer-spin-button {\n height: auto;\n}\n\n/*\n1. Correct the odd appearance in Chrome and Safari.\n2. Correct the outline style in Safari.\n*/\n[type=search] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/*\nRemove the inner padding in Chrome and Safari on macOS.\n*/\n::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/*\n1. Correct the inability to style clickable types in iOS and Safari.\n2. Change font properties to `inherit` in Safari.\n*/\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/*\nAdd the correct display in Chrome and Safari.\n*/\nsummary {\n display: list-item;\n}\n\n/*\nRemoves the default spacing and border for appropriate elements.\n*/\nblockquote,\ndl,\ndd,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\nhr,\nfigure,\np,\npre {\n margin: 0;\n}\n\nfieldset {\n margin: 0;\n padding: 0;\n}\n\nlegend {\n padding: 0;\n}\n\nol,\nul,\nmenu {\n list-style: none;\n margin: 0;\n padding: 0;\n}\n\n/*\nReset default styling for dialogs.\n*/\ndialog {\n padding: 0;\n}\n\n/*\nPrevent resizing textareas horizontally by default.\n*/\ntextarea {\n resize: vertical;\n}\n\n/*\n1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)\n2. Set the default placeholder color to the user's configured gray 400 color.\n*/\ninput::-moz-placeholder, textarea::-moz-placeholder {\n opacity: 1; /* 1 */\n color: #9ca3af; /* 2 */\n}\ninput::placeholder,\ntextarea::placeholder {\n opacity: 1; /* 1 */\n color: #9ca3af; /* 2 */\n}\n\n/*\nSet the default cursor for buttons.\n*/\nbutton,\n[role=button] {\n cursor: pointer;\n}\n\n/*\nMake sure disabled buttons don't get the pointer cursor.\n*/\n:disabled {\n cursor: default;\n}\n\n/*\n1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)\n2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)\n This can trigger a poorly considered lint error in some tools but is included by design.\n*/\nimg,\nsvg,\nvideo,\ncanvas,\naudio,\niframe,\nembed,\nobject {\n display: block; /* 1 */\n vertical-align: middle; /* 2 */\n}\n\n/*\nConstrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)\n*/\nimg,\nvideo {\n max-width: 100%;\n height: auto;\n}\n\n/* Make elements with the HTML hidden attribute stay hidden by default */\n[hidden] {\n display: none;\n}\n\ninput:where([type=text]), input:where(:not([type])), input:where([type=email]), input:where([type=url]), input:where([type=password]), input:where([type=number]), input:where([type=date]), input:where([type=datetime-local]), input:where([type=month]), input:where([type=search]), input:where([type=tel]), input:where([type=time]), input:where([type=week]), select:where([multiple]), textarea, select {\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n background-color: #fff;\n border-color: #6b7280;\n border-width: 1px;\n border-radius: 0px;\n padding-top: 0.5rem;\n padding-right: 0.75rem;\n padding-bottom: 0.5rem;\n padding-left: 0.75rem;\n font-size: 1rem;\n line-height: 1.5rem;\n --tw-shadow: 0 0 #0000;\n}\n\ninput:where([type=text]):focus, input:where(:not([type])):focus, input:where([type=email]):focus, input:where([type=url]):focus, input:where([type=password]):focus, input:where([type=number]):focus, input:where([type=date]):focus, input:where([type=datetime-local]):focus, input:where([type=month]):focus, input:where([type=search]):focus, input:where([type=tel]):focus, input:where([type=time]):focus, input:where([type=week]):focus, select:where([multiple]):focus, textarea:focus, select:focus {\n outline: 2px solid transparent;\n outline-offset: 2px;\n --tw-ring-inset: var(--tw-empty,/*!*/ /*!*/);\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: #175CD3;\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n border-color: #175CD3;\n}\n\ninput::-moz-placeholder, textarea::-moz-placeholder {\n color: #6b7280;\n opacity: 1;\n}\n\ninput::placeholder, textarea::placeholder {\n color: #6b7280;\n opacity: 1;\n}\n\n::-webkit-datetime-edit-fields-wrapper {\n padding: 0;\n}\n\n::-webkit-date-and-time-value {\n min-height: 1.5em;\n text-align: inherit;\n}\n\n::-webkit-datetime-edit {\n display: inline-flex;\n}\n\n::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {\n padding-top: 0;\n padding-bottom: 0;\n}\n\nselect {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e\");\n background-position: right 0.5rem center;\n background-repeat: no-repeat;\n background-size: 1.5em 1.5em;\n padding-right: 2.5rem;\n -webkit-print-color-adjust: exact;\n print-color-adjust: exact;\n}\n\nselect:where([multiple]), select:where([size]:not([size=\"1\"])) {\n background-image: initial;\n background-position: initial;\n background-repeat: unset;\n background-size: initial;\n padding-right: 0.75rem;\n -webkit-print-color-adjust: unset;\n print-color-adjust: unset;\n}\n\ninput:where([type=checkbox]), input:where([type=radio]) {\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n padding: 0;\n -webkit-print-color-adjust: exact;\n print-color-adjust: exact;\n display: inline-block;\n vertical-align: middle;\n background-origin: border-box;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n flex-shrink: 0;\n height: 1rem;\n width: 1rem;\n color: #175CD3;\n background-color: #fff;\n border-color: #6b7280;\n border-width: 1px;\n --tw-shadow: 0 0 #0000;\n}\n\ninput:where([type=checkbox]) {\n border-radius: 0px;\n}\n\ninput:where([type=radio]) {\n border-radius: 100%;\n}\n\ninput:where([type=checkbox]):focus, input:where([type=radio]):focus {\n outline: 2px solid transparent;\n outline-offset: 2px;\n --tw-ring-inset: var(--tw-empty,/*!*/ /*!*/);\n --tw-ring-offset-width: 2px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: #175CD3;\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n}\n\ninput:where([type=checkbox]):checked, input:where([type=radio]):checked {\n border-color: transparent;\n background-color: currentColor;\n background-size: 100% 100%;\n background-position: center;\n background-repeat: no-repeat;\n}\n\ninput:where([type=checkbox]):checked {\n background-image: url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e\");\n}\n\n@media (forced-colors: active) {\n input:where([type=checkbox]):checked {\n -webkit-appearance: auto;\n -moz-appearance: auto;\n appearance: auto;\n }\n}\ninput:where([type=radio]):checked {\n background-image: url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e\");\n}\n\n@media (forced-colors: active) {\n input:where([type=radio]):checked {\n -webkit-appearance: auto;\n -moz-appearance: auto;\n appearance: auto;\n }\n}\ninput:where([type=checkbox]):checked:hover, input:where([type=checkbox]):checked:focus, input:where([type=radio]):checked:hover, input:where([type=radio]):checked:focus {\n border-color: transparent;\n background-color: currentColor;\n}\n\ninput:where([type=checkbox]):indeterminate {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3e%3cpath stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3e%3c/svg%3e\");\n border-color: transparent;\n background-color: currentColor;\n background-size: 100% 100%;\n background-position: center;\n background-repeat: no-repeat;\n}\n\n@media (forced-colors: active) {\n input:where([type=checkbox]):indeterminate {\n -webkit-appearance: auto;\n -moz-appearance: auto;\n appearance: auto;\n }\n}\ninput:where([type=checkbox]):indeterminate:hover, input:where([type=checkbox]):indeterminate:focus {\n border-color: transparent;\n background-color: currentColor;\n}\n\ninput:where([type=file]) {\n background: unset;\n border-color: inherit;\n border-width: 0;\n border-radius: 0;\n padding: 0;\n font-size: unset;\n line-height: inherit;\n}\n\ninput:where([type=file]):focus {\n outline: 1px solid ButtonText;\n outline: 1px auto -webkit-focus-ring-color;\n}\n\n*, ::before, ::after {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(21 112 239 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n --tw-contain-size: ;\n --tw-contain-layout: ;\n --tw-contain-paint: ;\n --tw-contain-style: ;\n}\n\n::backdrop {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(21 112 239 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n --tw-contain-size: ;\n --tw-contain-layout: ;\n --tw-contain-paint: ;\n --tw-contain-style: ;\n}\n\n.container {\n width: 100%;\n}\n\n@media (min-width: 475px) {\n .container {\n max-width: 475px;\n }\n}\n@media (min-width: 640px) {\n .container {\n max-width: 640px;\n }\n}\n@media (min-width: 768px) {\n .container {\n max-width: 768px;\n }\n}\n@media (min-width: 1024px) {\n .container {\n max-width: 1024px;\n }\n}\n@media (min-width: 1280px) {\n .container {\n max-width: 1280px;\n }\n}\n@media (min-width: 1536px) {\n .container {\n max-width: 1536px;\n }\n}\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border-width: 0;\n}\n\n.pointer-events-none {\n pointer-events: none;\n}\n\n.visible {\n visibility: visible;\n}\n\n.invisible {\n visibility: hidden;\n}\n\n.fixed {\n position: fixed;\n}\n\n.absolute {\n position: absolute;\n}\n\n.relative {\n position: relative;\n}\n\n.sticky {\n position: sticky;\n}\n\n.inset-0 {\n inset: 0px;\n}\n\n.inset-y-0 {\n top: 0px;\n bottom: 0px;\n}\n\n.-bottom-8 {\n bottom: -2rem;\n}\n\n.bottom-full {\n bottom: 100%;\n}\n\n.left-0 {\n left: 0px;\n}\n\n.right-0 {\n right: 0px;\n}\n\n.right-8 {\n right: 2rem;\n}\n\n.top-0 {\n top: 0px;\n}\n\n.top-full {\n top: 100%;\n}\n\n.isolate {\n isolation: isolate;\n}\n\n.z-10 {\n z-index: 10;\n}\n\n.z-100 {\n z-index: 100;\n}\n\n.z-20 {\n z-index: 20;\n}\n\n.z-2000 {\n z-index: 2000;\n}\n\n.z-50 {\n z-index: 50;\n}\n\n.col-span-2 {\n grid-column: span 2/span 2;\n}\n\n.col-span-3 {\n grid-column: span 3/span 3;\n}\n\n.m-0 {\n margin: 0px;\n}\n\n.m-3 {\n margin: 0.75rem;\n}\n\n.m-auto {\n margin: auto;\n}\n\n.-mx-4 {\n margin-left: -1rem;\n margin-right: -1rem;\n}\n\n.-my-2 {\n margin-top: -0.5rem;\n margin-bottom: -0.5rem;\n}\n\n.mx-2 {\n margin-left: 0.5rem;\n margin-right: 0.5rem;\n}\n\n.mx-auto {\n margin-left: auto;\n margin-right: auto;\n}\n\n.my-1 {\n margin-top: 0.25rem;\n margin-bottom: 0.25rem;\n}\n\n.my-8 {\n margin-top: 2rem;\n margin-bottom: 2rem;\n}\n\n.my-px {\n margin-top: 1px;\n margin-bottom: 1px;\n}\n\n.-mb-px {\n margin-bottom: -1px;\n}\n\n.mb-0 {\n margin-bottom: 0px;\n}\n\n.mb-1 {\n margin-bottom: 0.25rem;\n}\n\n.mb-10 {\n margin-bottom: 2.5rem;\n}\n\n.mb-2 {\n margin-bottom: 0.5rem;\n}\n\n.mb-3 {\n margin-bottom: 0.75rem;\n}\n\n.mb-4 {\n margin-bottom: 1rem;\n}\n\n.mb-8 {\n margin-bottom: 2rem;\n}\n\n.ml-0 {\n margin-left: 0px;\n}\n\n.ml-0\\.5 {\n margin-left: 0.125rem;\n}\n\n.ml-1 {\n margin-left: 0.25rem;\n}\n\n.ml-2 {\n margin-left: 0.5rem;\n}\n\n.ml-3 {\n margin-left: 0.75rem;\n}\n\n.ml-auto {\n margin-left: auto;\n}\n\n.mr-1 {\n margin-right: 0.25rem;\n}\n\n.mr-2 {\n margin-right: 0.5rem;\n}\n\n.mr-4 {\n margin-right: 1rem;\n}\n\n.mt-0 {\n margin-top: 0px;\n}\n\n.mt-1 {\n margin-top: 0.25rem;\n}\n\n.mt-2 {\n margin-top: 0.5rem;\n}\n\n.mt-3 {\n margin-top: 0.75rem;\n}\n\n.mt-4 {\n margin-top: 1rem;\n}\n\n.mt-5 {\n margin-top: 1.25rem;\n}\n\n.mt-6 {\n margin-top: 1.5rem;\n}\n\n.mt-8 {\n margin-top: 2rem;\n}\n\n.box-border {\n box-sizing: border-box;\n}\n\n.block {\n display: block;\n}\n\n.inline-block {\n display: inline-block;\n}\n\n.inline {\n display: inline;\n}\n\n.flex {\n display: flex;\n}\n\n.inline-flex {\n display: inline-flex;\n}\n\n.table {\n display: table;\n}\n\n.flow-root {\n display: flow-root;\n}\n\n.grid {\n display: grid;\n}\n\n.contents {\n display: contents;\n}\n\n.hidden {\n display: none;\n}\n\n.h-10 {\n height: 2.5rem;\n}\n\n.h-11 {\n height: 2.75rem;\n}\n\n.h-12 {\n height: 3rem;\n}\n\n.h-4 {\n height: 1rem;\n}\n\n.h-5 {\n height: 1.25rem;\n}\n\n.h-6 {\n height: 1.5rem;\n}\n\n.h-8 {\n height: 2rem;\n}\n\n.h-\\[21px\\] {\n height: 21px;\n}\n\n.h-\\[28px\\] {\n height: 28px;\n}\n\n.h-full {\n height: 100%;\n}\n\n.h-px {\n height: 1px;\n}\n\n.max-h-60 {\n max-height: 15rem;\n}\n\n.max-h-80 {\n max-height: 20rem;\n}\n\n.min-h-full {\n min-height: 100%;\n}\n\n.w-10 {\n width: 2.5rem;\n}\n\n.w-11 {\n width: 2.75rem;\n}\n\n.w-12 {\n width: 3rem;\n}\n\n.w-20 {\n width: 5rem;\n}\n\n.w-4 {\n width: 1rem;\n}\n\n.w-5 {\n width: 1.25rem;\n}\n\n.w-6 {\n width: 1.5rem;\n}\n\n.w-8 {\n width: 2rem;\n}\n\n.w-96 {\n width: 24rem;\n}\n\n.w-\\[44px\\] {\n width: 44px;\n}\n\n.w-full {\n width: 100%;\n}\n\n.w-max {\n width: -moz-max-content;\n width: max-content;\n}\n\n.w-screen {\n width: 100vw;\n}\n\n.min-w-0 {\n min-width: 0px;\n}\n\n.min-w-\\[40\\%\\] {\n min-width: 40%;\n}\n\n.min-w-full {\n min-width: 100%;\n}\n\n.max-w-lg {\n max-width: 32rem;\n}\n\n.max-w-md {\n max-width: 28rem;\n}\n\n.max-w-sm {\n max-width: 24rem;\n}\n\n.flex-1 {\n flex: 1 1 0%;\n}\n\n.flex-auto {\n flex: 1 1 auto;\n}\n\n.flex-shrink-0 {\n flex-shrink: 0;\n}\n\n.shrink-0 {\n flex-shrink: 0;\n}\n\n.flex-grow {\n flex-grow: 1;\n}\n\n.grow {\n flex-grow: 1;\n}\n\n.table-auto {\n table-layout: auto;\n}\n\n.table-fixed {\n table-layout: fixed;\n}\n\n.transform {\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n@keyframes spin {\n to {\n transform: rotate(360deg);\n }\n}\n.animate-spin {\n animation: spin 1s linear infinite;\n}\n\n.cursor-default {\n cursor: default;\n}\n\n.cursor-help {\n cursor: help;\n}\n\n.cursor-not-allowed {\n cursor: not-allowed;\n}\n\n.cursor-pointer {\n cursor: pointer;\n}\n\n.touch-pan-y {\n --tw-pan-y: pan-y;\n touch-action: var(--tw-pan-x) var(--tw-pan-y) var(--tw-pinch-zoom);\n}\n\n.select-none {\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n}\n\n.resize-none {\n resize: none;\n}\n\n.resize-y {\n resize: vertical;\n}\n\n.resize {\n resize: both;\n}\n\n.grid-flow-col {\n grid-auto-flow: column;\n}\n\n.grid-cols-1 {\n grid-template-columns: repeat(1, minmax(0, 1fr));\n}\n\n.grid-cols-2 {\n grid-template-columns: repeat(2, minmax(0, 1fr));\n}\n\n.grid-cols-3 {\n grid-template-columns: repeat(3, minmax(0, 1fr));\n}\n\n.grid-cols-4 {\n grid-template-columns: repeat(4, minmax(0, 1fr));\n}\n\n.grid-cols-subgrid {\n grid-template-columns: subgrid;\n}\n\n.flex-row {\n flex-direction: row;\n}\n\n.flex-col {\n flex-direction: column;\n}\n\n.place-items-start {\n place-items: start;\n}\n\n.items-start {\n align-items: flex-start;\n}\n\n.items-end {\n align-items: flex-end;\n}\n\n.items-center {\n align-items: center;\n}\n\n.items-stretch {\n align-items: stretch;\n}\n\n.justify-start {\n justify-content: flex-start;\n}\n\n.justify-end {\n justify-content: flex-end;\n}\n\n.justify-center {\n justify-content: center;\n}\n\n.justify-between {\n justify-content: space-between;\n}\n\n.gap-1 {\n gap: 0.25rem;\n}\n\n.gap-2 {\n gap: 0.5rem;\n}\n\n.gap-3 {\n gap: 0.75rem;\n}\n\n.gap-4 {\n gap: 1rem;\n}\n\n.gap-6 {\n gap: 1.5rem;\n}\n\n.gap-8 {\n gap: 2rem;\n}\n\n.gap-x-1 {\n -moz-column-gap: 0.25rem;\n column-gap: 0.25rem;\n}\n\n.gap-x-2 {\n -moz-column-gap: 0.5rem;\n column-gap: 0.5rem;\n}\n\n.gap-x-3 {\n -moz-column-gap: 0.75rem;\n column-gap: 0.75rem;\n}\n\n.gap-x-4 {\n -moz-column-gap: 1rem;\n column-gap: 1rem;\n}\n\n.gap-y-10 {\n row-gap: 2.5rem;\n}\n\n.gap-y-2 {\n row-gap: 0.5rem;\n}\n\n.gap-y-4 {\n row-gap: 1rem;\n}\n\n.space-x-2 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-x-reverse: 0;\n margin-right: calc(0.5rem * var(--tw-space-x-reverse));\n margin-left: calc(0.5rem * (1 - var(--tw-space-x-reverse)));\n}\n\n.space-x-4 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-x-reverse: 0;\n margin-right: calc(1rem * var(--tw-space-x-reverse));\n margin-left: calc(1rem * (1 - var(--tw-space-x-reverse)));\n}\n\n.space-y-2 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(0.5rem * (1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(0.5rem * var(--tw-space-y-reverse));\n}\n\n.space-y-3 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(0.75rem * (1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(0.75rem * var(--tw-space-y-reverse));\n}\n\n.space-y-4 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(1rem * (1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(1rem * var(--tw-space-y-reverse));\n}\n\n.space-y-5 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(1.25rem * (1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(1.25rem * var(--tw-space-y-reverse));\n}\n\n.divide-y > :not([hidden]) ~ :not([hidden]) {\n --tw-divide-y-reverse: 0;\n border-top-width: calc(1px * (1 - var(--tw-divide-y-reverse)));\n border-bottom-width: calc(1px * var(--tw-divide-y-reverse));\n}\n\n.divide-gray-200 > :not([hidden]) ~ :not([hidden]) {\n --tw-divide-opacity: 1;\n border-color: rgb(229, 231, 235, var(--tw-divide-opacity));\n}\n\n.divide-gray-300 > :not([hidden]) ~ :not([hidden]) {\n --tw-divide-opacity: 1;\n border-color: rgb(209, 213, 219, var(--tw-divide-opacity));\n}\n\n.self-start {\n align-self: flex-start;\n}\n\n.self-center {\n align-self: center;\n}\n\n.overflow-auto {\n overflow: auto;\n}\n\n.overflow-hidden {\n overflow: hidden;\n}\n\n.overflow-x-auto {\n overflow-x: auto;\n}\n\n.overflow-y-auto {\n overflow-y: auto;\n}\n\n.overflow-x-hidden {\n overflow-x: hidden;\n}\n\n.overscroll-contain {\n overscroll-behavior: contain;\n}\n\n.truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.overflow-ellipsis {\n text-overflow: ellipsis;\n}\n\n.text-ellipsis {\n text-overflow: ellipsis;\n}\n\n.whitespace-normal {\n white-space: normal;\n}\n\n.whitespace-nowrap {\n white-space: nowrap;\n}\n\n.text-pretty {\n text-wrap: pretty;\n}\n\n.break-words {\n overflow-wrap: break-word;\n}\n\n.rounded {\n border-radius: 0.25rem;\n}\n\n.rounded-full {\n border-radius: 9999px;\n}\n\n.rounded-lg {\n border-radius: 0.5rem;\n}\n\n.rounded-md {\n border-radius: 0.375rem;\n}\n\n.rounded-xl {\n border-radius: 0.75rem;\n}\n\n.rounded-r-md {\n border-top-right-radius: 0.375rem;\n border-bottom-right-radius: 0.375rem;\n}\n\n.border {\n border-width: 1px;\n}\n\n.border-0 {\n border-width: 0px;\n}\n\n.border-2 {\n border-width: 2px;\n}\n\n.border-b {\n border-bottom-width: 1px;\n}\n\n.border-b-2 {\n border-bottom-width: 2px;\n}\n\n.border-t {\n border-top-width: 1px;\n}\n\n.border-solid {\n border-style: solid;\n}\n\n.border-none {\n border-style: none;\n}\n\n.border-blue-200 {\n --tw-border-opacity: 1;\n border-color: rgb(132, 202, 255, var(--tw-border-opacity));\n}\n\n.border-blue-300 {\n --tw-border-opacity: 1;\n border-color: rgb(83, 177, 253, var(--tw-border-opacity));\n}\n\n.border-blue-400 {\n --tw-border-opacity: 1;\n border-color: rgb(46, 144, 250, var(--tw-border-opacity));\n}\n\n.border-blue-500 {\n --tw-border-opacity: 1;\n border-color: rgb(21, 112, 239, var(--tw-border-opacity));\n}\n\n.border-blue-600 {\n --tw-border-opacity: 1;\n border-color: rgb(23, 92, 211, var(--tw-border-opacity));\n}\n\n.border-gray-200 {\n --tw-border-opacity: 1;\n border-color: rgb(229, 231, 235, var(--tw-border-opacity));\n}\n\n.border-gray-300 {\n --tw-border-opacity: 1;\n border-color: rgb(209, 213, 219, var(--tw-border-opacity));\n}\n\n.border-green-200 {\n --tw-border-opacity: 1;\n border-color: rgb(187, 247, 208, var(--tw-border-opacity));\n}\n\n.border-green-300 {\n --tw-border-opacity: 1;\n border-color: rgb(134, 239, 172, var(--tw-border-opacity));\n}\n\n.border-green-400 {\n --tw-border-opacity: 1;\n border-color: rgb(74, 222, 128, var(--tw-border-opacity));\n}\n\n.border-green-600 {\n --tw-border-opacity: 1;\n border-color: rgb(22, 163, 74, var(--tw-border-opacity));\n}\n\n.border-indigo-300 {\n --tw-border-opacity: 1;\n border-color: rgb(165, 180, 252, var(--tw-border-opacity));\n}\n\n.border-pink-300 {\n --tw-border-opacity: 1;\n border-color: rgb(249, 168, 212, var(--tw-border-opacity));\n}\n\n.border-purple-300 {\n --tw-border-opacity: 1;\n border-color: rgb(216, 180, 254, var(--tw-border-opacity));\n}\n\n.border-red-200 {\n --tw-border-opacity: 1;\n border-color: rgb(254, 202, 202, var(--tw-border-opacity));\n}\n\n.border-red-300 {\n --tw-border-opacity: 1;\n border-color: rgb(252, 165, 165, var(--tw-border-opacity));\n}\n\n.border-red-400 {\n --tw-border-opacity: 1;\n border-color: rgb(248, 113, 113, var(--tw-border-opacity));\n}\n\n.border-red-600 {\n --tw-border-opacity: 1;\n border-color: rgb(220, 38, 38, var(--tw-border-opacity));\n}\n\n.border-slate-600 {\n --tw-border-opacity: 1;\n border-color: rgb(71, 85, 105, var(--tw-border-opacity));\n}\n\n.border-transparent {\n border-color: transparent;\n}\n\n.border-yellow-200 {\n --tw-border-opacity: 1;\n border-color: rgb(254, 240, 138, var(--tw-border-opacity));\n}\n\n.border-yellow-300 {\n --tw-border-opacity: 1;\n border-color: rgb(253, 224, 71, var(--tw-border-opacity));\n}\n\n.border-yellow-600 {\n --tw-border-opacity: 1;\n border-color: rgb(202, 138, 4, var(--tw-border-opacity));\n}\n\n.bg-\\[\\#F9FAFB\\] {\n --tw-bg-opacity: 1;\n background-color: rgb(249, 250, 251, var(--tw-bg-opacity));\n}\n\n.bg-\\[\\#FFFAEB\\] {\n --tw-bg-opacity: 1;\n background-color: rgb(255, 250, 235, var(--tw-bg-opacity));\n}\n\n.bg-blue-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(178, 221, 255, var(--tw-bg-opacity));\n}\n\n.bg-blue-50 {\n --tw-bg-opacity: 1;\n background-color: rgb(209, 233, 255, var(--tw-bg-opacity));\n}\n\n.bg-blue-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(21, 112, 239, var(--tw-bg-opacity));\n}\n\n.bg-blue-600 {\n --tw-bg-opacity: 1;\n background-color: rgb(23, 92, 211, var(--tw-bg-opacity));\n}\n\n.bg-gray-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(243, 244, 246, var(--tw-bg-opacity));\n}\n\n.bg-gray-200 {\n --tw-bg-opacity: 1;\n background-color: rgb(229, 231, 235, var(--tw-bg-opacity));\n}\n\n.bg-gray-50 {\n --tw-bg-opacity: 1;\n background-color: rgb(249, 250, 251, var(--tw-bg-opacity));\n}\n\n.bg-gray-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(107, 114, 128, var(--tw-bg-opacity));\n}\n\n.bg-gray-900 {\n --tw-bg-opacity: 1;\n background-color: rgb(17, 24, 39, var(--tw-bg-opacity));\n}\n\n.bg-green-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(220, 252, 231, var(--tw-bg-opacity));\n}\n\n.bg-green-50 {\n --tw-bg-opacity: 1;\n background-color: rgb(240, 253, 244, var(--tw-bg-opacity));\n}\n\n.bg-indigo-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(224, 231, 255, var(--tw-bg-opacity));\n}\n\n.bg-photon-blue {\n --tw-bg-opacity: 1;\n background-color: rgb(49, 130, 206, var(--tw-bg-opacity));\n}\n\n.bg-pink-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(252, 231, 243, var(--tw-bg-opacity));\n}\n\n.bg-purple-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(243, 232, 255, var(--tw-bg-opacity));\n}\n\n.bg-red-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(254, 226, 226, var(--tw-bg-opacity));\n}\n\n.bg-red-50 {\n --tw-bg-opacity: 1;\n background-color: rgb(254, 242, 242, var(--tw-bg-opacity));\n}\n\n.bg-red-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(239, 68, 68, var(--tw-bg-opacity));\n}\n\n.bg-slate-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(241, 245, 249, var(--tw-bg-opacity));\n}\n\n.bg-slate-50 {\n --tw-bg-opacity: 1;\n background-color: rgb(248, 250, 252, var(--tw-bg-opacity));\n}\n\n.bg-transparent {\n background-color: transparent;\n}\n\n.bg-white {\n --tw-bg-opacity: 1;\n background-color: rgb(255, 255, 255, var(--tw-bg-opacity));\n}\n\n.bg-yellow-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(254, 249, 195, var(--tw-bg-opacity));\n}\n\n.bg-yellow-50 {\n --tw-bg-opacity: 1;\n background-color: rgb(254, 252, 232, var(--tw-bg-opacity));\n}\n\n.bg-opacity-75 {\n --tw-bg-opacity: 0.75;\n}\n\n.fill-blue-500 {\n fill: #1570EF;\n}\n\n.fill-green-500 {\n fill: #22c55e;\n}\n\n.p-0 {\n padding: 0px;\n}\n\n.p-2 {\n padding: 0.5rem;\n}\n\n.p-4 {\n padding: 1rem;\n}\n\n.px-1 {\n padding-left: 0.25rem;\n padding-right: 0.25rem;\n}\n\n.px-1\\.5 {\n padding-left: 0.375rem;\n padding-right: 0.375rem;\n}\n\n.px-2 {\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n}\n\n.px-2\\.5 {\n padding-left: 0.625rem;\n padding-right: 0.625rem;\n}\n\n.px-3 {\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n}\n\n.px-3\\.5 {\n padding-left: 0.875rem;\n padding-right: 0.875rem;\n}\n\n.px-4 {\n padding-left: 1rem;\n padding-right: 1rem;\n}\n\n.py-0 {\n padding-top: 0px;\n padding-bottom: 0px;\n}\n\n.py-0\\.5 {\n padding-top: 0.125rem;\n padding-bottom: 0.125rem;\n}\n\n.py-1 {\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n}\n\n.py-1\\.5 {\n padding-top: 0.375rem;\n padding-bottom: 0.375rem;\n}\n\n.py-2 {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n}\n\n.py-2\\.5 {\n padding-top: 0.625rem;\n padding-bottom: 0.625rem;\n}\n\n.py-3 {\n padding-top: 0.75rem;\n padding-bottom: 0.75rem;\n}\n\n.py-3\\.5 {\n padding-top: 0.875rem;\n padding-bottom: 0.875rem;\n}\n\n.py-4 {\n padding-top: 1rem;\n padding-bottom: 1rem;\n}\n\n.pb-1 {\n padding-bottom: 0.25rem;\n}\n\n.pb-2 {\n padding-bottom: 0.5rem;\n}\n\n.pb-4 {\n padding-bottom: 1rem;\n}\n\n.pl-1 {\n padding-left: 0.25rem;\n}\n\n.pl-10 {\n padding-left: 2.5rem;\n}\n\n.pl-2 {\n padding-left: 0.5rem;\n}\n\n.pl-3 {\n padding-left: 0.75rem;\n}\n\n.pl-5 {\n padding-left: 1.25rem;\n}\n\n.pl-\\[19\\.75px\\] {\n padding-left: 19.75px;\n}\n\n.pr-2 {\n padding-right: 0.5rem;\n}\n\n.pr-3 {\n padding-right: 0.75rem;\n}\n\n.pr-4 {\n padding-right: 1rem;\n}\n\n.pr-5 {\n padding-right: 1.25rem;\n}\n\n.pt-1 {\n padding-top: 0.25rem;\n}\n\n.pt-2 {\n padding-top: 0.5rem;\n}\n\n.pt-3 {\n padding-top: 0.75rem;\n}\n\n.pt-4 {\n padding-top: 1rem;\n}\n\n.text-left {\n text-align: left;\n}\n\n.text-center {\n text-align: center;\n}\n\n.text-end {\n text-align: end;\n}\n\n.align-top {\n vertical-align: top;\n}\n\n.align-middle {\n vertical-align: middle;\n}\n\n.font-mono {\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\n}\n\n.font-sans {\n font-family: ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n}\n\n.text-3xl {\n font-size: 1.875rem;\n line-height: 2.25rem;\n}\n\n.text-base {\n font-size: 1rem;\n line-height: 1.5rem;\n}\n\n.text-lg {\n font-size: 1.125rem;\n line-height: 1.75rem;\n}\n\n.text-sm {\n font-size: 0.875rem;\n line-height: 1.25rem;\n}\n\n.text-sm\\/6 {\n font-size: 0.875rem;\n line-height: 1.5rem;\n}\n\n.text-xl {\n font-size: 1.25rem;\n line-height: 1.75rem;\n}\n\n.text-xs {\n font-size: 0.75rem;\n line-height: 1rem;\n}\n\n.font-bold {\n font-weight: 700;\n}\n\n.font-extrabold {\n font-weight: 800;\n}\n\n.font-light {\n font-weight: 300;\n}\n\n.font-medium {\n font-weight: 500;\n}\n\n.font-normal {\n font-weight: 400;\n}\n\n.font-semibold {\n font-weight: 600;\n}\n\n.uppercase {\n text-transform: uppercase;\n}\n\n.capitalize {\n text-transform: capitalize;\n}\n\n.italic {\n font-style: italic;\n}\n\n.leading-6 {\n line-height: 1.5rem;\n}\n\n.leading-none {\n line-height: 1;\n}\n\n.leading-snug {\n line-height: 1.375;\n}\n\n.text-\\[\\#DC6803\\] {\n --tw-text-opacity: 1;\n color: rgb(220, 104, 3, var(--tw-text-opacity));\n}\n\n.text-black {\n --tw-text-opacity: 1;\n color: rgb(0, 0, 0, var(--tw-text-opacity));\n}\n\n.text-blue-500 {\n --tw-text-opacity: 1;\n color: rgb(21, 112, 239, var(--tw-text-opacity));\n}\n\n.text-blue-600 {\n --tw-text-opacity: 1;\n color: rgb(23, 92, 211, var(--tw-text-opacity));\n}\n\n.text-blue-700 {\n --tw-text-opacity: 1;\n color: rgb(24, 73, 169, var(--tw-text-opacity));\n}\n\n.text-blue-800 {\n --tw-text-opacity: 1;\n color: rgb(25, 65, 133, var(--tw-text-opacity));\n}\n\n.text-blue-900 {\n --tw-text-opacity: 1;\n color: rgb(16, 42, 86, var(--tw-text-opacity));\n}\n\n.text-current {\n color: currentColor;\n}\n\n.text-gray-200 {\n --tw-text-opacity: 1;\n color: rgb(229, 231, 235, var(--tw-text-opacity));\n}\n\n.text-gray-400 {\n --tw-text-opacity: 1;\n color: rgb(156, 163, 175, var(--tw-text-opacity));\n}\n\n.text-gray-50 {\n --tw-text-opacity: 1;\n color: rgb(249, 250, 251, var(--tw-text-opacity));\n}\n\n.text-gray-500 {\n --tw-text-opacity: 1;\n color: rgb(107, 114, 128, var(--tw-text-opacity));\n}\n\n.text-gray-600 {\n --tw-text-opacity: 1;\n color: rgb(75, 85, 99, var(--tw-text-opacity));\n}\n\n.text-gray-700 {\n --tw-text-opacity: 1;\n color: rgb(55, 65, 81, var(--tw-text-opacity));\n}\n\n.text-gray-900 {\n --tw-text-opacity: 1;\n color: rgb(17, 24, 39, var(--tw-text-opacity));\n}\n\n.text-green-500 {\n --tw-text-opacity: 1;\n color: rgb(34, 197, 94, var(--tw-text-opacity));\n}\n\n.text-green-600 {\n --tw-text-opacity: 1;\n color: rgb(22, 163, 74, var(--tw-text-opacity));\n}\n\n.text-green-700 {\n --tw-text-opacity: 1;\n color: rgb(21, 128, 61, var(--tw-text-opacity));\n}\n\n.text-green-800 {\n --tw-text-opacity: 1;\n color: rgb(22, 101, 52, var(--tw-text-opacity));\n}\n\n.text-indigo-700 {\n --tw-text-opacity: 1;\n color: rgb(67, 56, 202, var(--tw-text-opacity));\n}\n\n.text-pink-700 {\n --tw-text-opacity: 1;\n color: rgb(190, 24, 93, var(--tw-text-opacity));\n}\n\n.text-purple-700 {\n --tw-text-opacity: 1;\n color: rgb(126, 34, 206, var(--tw-text-opacity));\n}\n\n.text-red-400 {\n --tw-text-opacity: 1;\n color: rgb(248, 113, 113, var(--tw-text-opacity));\n}\n\n.text-red-500 {\n --tw-text-opacity: 1;\n color: rgb(239, 68, 68, var(--tw-text-opacity));\n}\n\n.text-red-600 {\n --tw-text-opacity: 1;\n color: rgb(220, 38, 38, var(--tw-text-opacity));\n}\n\n.text-red-700 {\n --tw-text-opacity: 1;\n color: rgb(185, 28, 28, var(--tw-text-opacity));\n}\n\n.text-red-800 {\n --tw-text-opacity: 1;\n color: rgb(153, 27, 27, var(--tw-text-opacity));\n}\n\n.text-slate-500 {\n --tw-text-opacity: 1;\n color: rgb(100, 116, 139, var(--tw-text-opacity));\n}\n\n.text-slate-600 {\n --tw-text-opacity: 1;\n color: rgb(71, 85, 105, var(--tw-text-opacity));\n}\n\n.text-teal-600 {\n --tw-text-opacity: 1;\n color: rgb(13, 148, 136, var(--tw-text-opacity));\n}\n\n.text-transparent {\n color: transparent;\n}\n\n.text-white {\n --tw-text-opacity: 1;\n color: rgb(255, 255, 255, var(--tw-text-opacity));\n}\n\n.text-yellow-600 {\n --tw-text-opacity: 1;\n color: rgb(202, 138, 4, var(--tw-text-opacity));\n}\n\n.text-yellow-800 {\n --tw-text-opacity: 1;\n color: rgb(133, 77, 14, var(--tw-text-opacity));\n}\n\n.underline {\n text-decoration-line: underline;\n}\n\n.opacity-0 {\n opacity: 0;\n}\n\n.opacity-100 {\n opacity: 1;\n}\n\n.opacity-35 {\n opacity: 0.35;\n}\n\n.opacity-50 {\n opacity: 0.5;\n}\n\n.shadow {\n --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-shadow);\n}\n\n.shadow-card {\n --tw-shadow: 0px 0px 1px rgba(48, 49, 51, 0.05),0px 2px 4px rgba(48, 49, 51, 0.1);\n --tw-shadow-colored: 0px 0px 1px var(--tw-shadow-color), 0px 2px 4px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-shadow);\n}\n\n.shadow-lg {\n --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-shadow);\n}\n\n.shadow-sm {\n --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);\n --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-shadow);\n}\n\n.shadow-xl {\n --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-shadow);\n}\n\n.ring-1 {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));\n}\n\n.ring-2 {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));\n}\n\n.ring-inset {\n --tw-ring-inset: inset;\n}\n\n.ring-black {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(0 0 0 / var(--tw-ring-opacity));\n}\n\n.ring-blue-300 {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(83 177 253 / var(--tw-ring-opacity));\n}\n\n.ring-gray-200 {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(229 231 235 / var(--tw-ring-opacity));\n}\n\n.ring-gray-300 {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(209 213 219 / var(--tw-ring-opacity));\n}\n\n.ring-gray-900\\/5 {\n --tw-ring-color: rgb(17 24 39 / 0.05);\n}\n\n.ring-red-300 {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(252 165 165 / var(--tw-ring-opacity));\n}\n\n.ring-sky-500\\/40 {\n --tw-ring-color: rgb(14 165 233 / 0.4);\n}\n\n.ring-opacity-5 {\n --tw-ring-opacity: 0.05;\n}\n\n.blur {\n --tw-blur: blur(8px);\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n\n.filter {\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n\n.transition {\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n\n.transition-all {\n transition-property: all;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n\n.transition-opacity {\n transition-property: opacity;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n\n.duration-100 {\n transition-duration: 100ms;\n}\n\n.ease-in {\n transition-timing-function: cubic-bezier(0.4, 0, 1, 1);\n}\n\n.ease-in-out {\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.ease-out {\n transition-timing-function: cubic-bezier(0, 0, 0.2, 1);\n}\n\n.theme-photon, [data-theme=photon] {\n --twc-primaryText: 210 20% 98%;\n --twc-primary500: 238.70000000000005 83.5% 66.7%;\n --twc-primary600: 243.39999999999998 75.4% 58.6%;\n --twc-secondaryText: 220.89999999999998 39.3% 11%;\n --twc-secondary50: 225.89999999999998 100% 96.7%;\n --twc-secondary100: 226.5 100% 93.9%;\n}\n\n.theme-weekend, [data-theme=weekend] {\n --twc-primaryText: 210 20% 98%;\n --twc-primary500: 198.60000000000002 88.7% 48.4%;\n --twc-primary600: 200.39999999999998 98% 39.4%;\n --twc-secondaryText: 220.89999999999998 39.3% 11%;\n --twc-secondary50: 204 100% 97.1%;\n --twc-secondary100: 204 93.8% 93.7%;\n}\n\n.\\[overflow-wrap\\:anywhere\\] {\n overflow-wrap: anywhere;\n}\n\n.placeholder\\:text-gray-400::-moz-placeholder {\n --tw-text-opacity: 1;\n color: rgb(156, 163, 175, var(--tw-text-opacity));\n}\n\n.placeholder\\:text-gray-400::placeholder {\n --tw-text-opacity: 1;\n color: rgb(156, 163, 175, var(--tw-text-opacity));\n}\n\n.placeholder\\:text-red-300::-moz-placeholder {\n --tw-text-opacity: 1;\n color: rgb(252, 165, 165, var(--tw-text-opacity));\n}\n\n.placeholder\\:text-red-300::placeholder {\n --tw-text-opacity: 1;\n color: rgb(252, 165, 165, var(--tw-text-opacity));\n}\n\n.even\\:bg-gray-50:nth-child(even) {\n --tw-bg-opacity: 1;\n background-color: rgb(249, 250, 251, var(--tw-bg-opacity));\n}\n\n.hover\\:cursor-pointer:hover {\n cursor: pointer;\n}\n\n.hover\\:border-gray-300:hover {\n --tw-border-opacity: 1;\n border-color: rgb(209, 213, 219, var(--tw-border-opacity));\n}\n\n.hover\\:bg-blue-100:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(178, 221, 255, var(--tw-bg-opacity));\n}\n\n.hover\\:bg-blue-50:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(209, 233, 255, var(--tw-bg-opacity));\n}\n\n.hover\\:bg-blue-600:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(23, 92, 211, var(--tw-bg-opacity));\n}\n\n.hover\\:bg-blue-700:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(24, 73, 169, var(--tw-bg-opacity));\n}\n\n.hover\\:bg-gray-50:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(249, 250, 251, var(--tw-bg-opacity));\n}\n\n.hover\\:bg-photon-blue-dark:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(43, 108, 176, var(--tw-bg-opacity));\n}\n\n.hover\\:bg-red-600:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(220, 38, 38, var(--tw-bg-opacity));\n}\n\n.hover\\:text-amber-500:hover {\n --tw-text-opacity: 1;\n color: rgb(245, 158, 11, var(--tw-text-opacity));\n}\n\n.hover\\:text-blue-500:hover {\n --tw-text-opacity: 1;\n color: rgb(21, 112, 239, var(--tw-text-opacity));\n}\n\n.hover\\:text-gray-500:hover {\n --tw-text-opacity: 1;\n color: rgb(107, 114, 128, var(--tw-text-opacity));\n}\n\n.hover\\:text-gray-600:hover {\n --tw-text-opacity: 1;\n color: rgb(75, 85, 99, var(--tw-text-opacity));\n}\n\n.hover\\:text-gray-700:hover {\n --tw-text-opacity: 1;\n color: rgb(55, 65, 81, var(--tw-text-opacity));\n}\n\n.hover\\:text-gray-900:hover {\n --tw-text-opacity: 1;\n color: rgb(17, 24, 39, var(--tw-text-opacity));\n}\n\n.hover\\:text-red-500:hover {\n --tw-text-opacity: 1;\n color: rgb(239, 68, 68, var(--tw-text-opacity));\n}\n\n.hover\\:underline:hover {\n text-decoration-line: underline;\n}\n\n.hover\\:ring-gray-400:hover {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(156 163 175 / var(--tw-ring-opacity));\n}\n\n.focus\\:outline-none:focus {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n\n.focus\\:outline-0:focus {\n outline-width: 0px;\n}\n\n.focus\\:ring-1:focus {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));\n}\n\n.focus\\:ring-2:focus {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));\n}\n\n.focus\\:ring-inset:focus {\n --tw-ring-inset: inset;\n}\n\n.focus\\:ring-blue-300:focus {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(83 177 253 / var(--tw-ring-opacity));\n}\n\n.focus\\:ring-blue-500:focus {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(21 112 239 / var(--tw-ring-opacity));\n}\n\n.focus\\:ring-blue-600:focus {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(23 92 211 / var(--tw-ring-opacity));\n}\n\n.focus\\:ring-gray-300:focus {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(209 213 219 / var(--tw-ring-opacity));\n}\n\n.focus\\:ring-red-500:focus {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(239 68 68 / var(--tw-ring-opacity));\n}\n\n.focus\\:ring-sky-500\\/40:focus {\n --tw-ring-color: rgb(14 165 233 / 0.4);\n}\n\n.focus\\:ring-offset-2:focus {\n --tw-ring-offset-width: 2px;\n}\n\n.focus-visible\\:outline:focus-visible {\n outline-style: solid;\n}\n\n.focus-visible\\:outline-2:focus-visible {\n outline-width: 2px;\n}\n\n.focus-visible\\:outline-offset-2:focus-visible {\n outline-offset: 2px;\n}\n\n.active\\:bg-gray-100:active {\n --tw-bg-opacity: 1;\n background-color: rgb(243, 244, 246, var(--tw-bg-opacity));\n}\n\n.disabled\\:cursor-not-allowed:disabled {\n cursor: not-allowed;\n}\n\n.disabled\\:bg-gray-500:disabled {\n --tw-bg-opacity: 1;\n background-color: rgb(107, 114, 128, var(--tw-bg-opacity));\n}\n\n.disabled\\:opacity-50:disabled {\n opacity: 0.5;\n}\n\n.disabled\\:hover\\:bg-transparent:hover:disabled {\n background-color: transparent;\n}\n\n.disabled\\:hover\\:text-gray-700:hover:disabled {\n --tw-text-opacity: 1;\n color: rgb(55, 65, 81, var(--tw-text-opacity));\n}\n\n.group:hover .group-hover\\:bg-blue-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(178, 221, 255, var(--tw-bg-opacity));\n}\n\n.group:hover .group-hover\\:text-blue-600 {\n --tw-text-opacity: 1;\n color: rgb(23, 92, 211, var(--tw-text-opacity));\n}\n\n.group:hover .group-hover\\:text-blue-900 {\n --tw-text-opacity: 1;\n color: rgb(16, 42, 86, var(--tw-text-opacity));\n}\n\n.group:hover .group-hover\\:opacity-100 {\n opacity: 1;\n}\n\n@media (min-width: 475px) {\n .xs\\:mx-auto {\n margin-left: auto;\n margin-right: auto;\n }\n .xs\\:w-auto {\n width: auto;\n }\n .xs\\:w-fit {\n width: -moz-fit-content;\n width: fit-content;\n }\n .xs\\:flex-row {\n flex-direction: row;\n }\n .xs\\:flex-row-reverse {\n flex-direction: row-reverse;\n }\n .xs\\:justify-start {\n justify-content: flex-start;\n }\n .xs\\:text-base {\n font-size: 1rem;\n line-height: 1.5rem;\n }\n}\n@media (min-width: 640px) {\n .sm\\:-mx-6 {\n margin-left: -1.5rem;\n margin-right: -1.5rem;\n }\n .sm\\:my-8 {\n margin-top: 2rem;\n margin-bottom: 2rem;\n }\n .sm\\:mt-5 {\n margin-top: 1.25rem;\n }\n .sm\\:mt-6 {\n margin-top: 1.5rem;\n }\n .sm\\:block {\n display: block;\n }\n .sm\\:inline {\n display: inline;\n }\n .sm\\:grid {\n display: grid;\n }\n .sm\\:hidden {\n display: none;\n }\n .sm\\:h-12 {\n height: 3rem;\n }\n .sm\\:w-\\[600px\\] {\n width: 600px;\n }\n .sm\\:w-auto {\n width: auto;\n }\n .sm\\:max-w-lg {\n max-width: 32rem;\n }\n .sm\\:max-w-md {\n max-width: 28rem;\n }\n .sm\\:max-w-sm {\n max-width: 24rem;\n }\n .sm\\:grid-cols-2 {\n grid-template-columns: repeat(2, minmax(0, 1fr));\n }\n .sm\\:grid-cols-6 {\n grid-template-columns: repeat(6, minmax(0, 1fr));\n }\n .sm\\:flex-row {\n flex-direction: row;\n }\n .sm\\:items-center {\n align-items: center;\n }\n .sm\\:gap-2 {\n gap: 0.5rem;\n }\n .sm\\:gap-4 {\n gap: 1rem;\n }\n .sm\\:space-x-6 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-x-reverse: 0;\n margin-right: calc(1.5rem * var(--tw-space-x-reverse));\n margin-left: calc(1.5rem * (1 - var(--tw-space-x-reverse)));\n }\n .sm\\:p-0 {\n padding: 0px;\n }\n .sm\\:p-6 {\n padding: 1.5rem;\n }\n .sm\\:px-4 {\n padding-left: 1rem;\n padding-right: 1rem;\n }\n .sm\\:px-6 {\n padding-left: 1.5rem;\n padding-right: 1.5rem;\n }\n .sm\\:py-4 {\n padding-top: 1rem;\n padding-bottom: 1rem;\n }\n .sm\\:pr-6 {\n padding-right: 1.5rem;\n }\n .sm\\:pt-6 {\n padding-top: 1.5rem;\n }\n .sm\\:text-base {\n font-size: 1rem;\n line-height: 1.5rem;\n }\n .sm\\:text-sm {\n font-size: 0.875rem;\n line-height: 1.25rem;\n }\n .sm\\:leading-6 {\n line-height: 1.5rem;\n }\n}\n@media (min-width: 768px) {\n .md\\:mt-8 {\n margin-top: 2rem;\n }\n .md\\:\\!block {\n display: block !important;\n }\n .md\\:flex {\n display: flex;\n }\n .md\\:\\!hidden {\n display: none !important;\n }\n .md\\:grid-cols-8 {\n grid-template-columns: repeat(8, minmax(0, 1fr));\n }\n .md\\:flex-row {\n flex-direction: row;\n }\n .md\\:items-center {\n align-items: center;\n }\n .md\\:gap-1 {\n gap: 0.25rem;\n }\n .md\\:space-x-8 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-x-reverse: 0;\n margin-right: calc(2rem * var(--tw-space-x-reverse));\n margin-left: calc(2rem * (1 - var(--tw-space-x-reverse)));\n }\n .md\\:px-4 {\n padding-left: 1rem;\n padding-right: 1rem;\n }\n .md\\:px-8 {\n padding-left: 2rem;\n padding-right: 2rem;\n }\n .md\\:py-3 {\n padding-top: 0.75rem;\n padding-bottom: 0.75rem;\n }\n .md\\:text-right {\n text-align: right;\n }\n .md\\:text-3xl {\n font-size: 1.875rem;\n line-height: 2.25rem;\n }\n .md\\:text-xl {\n font-size: 1.25rem;\n line-height: 1.75rem;\n }\n}\n@media (min-width: 1024px) {\n .lg\\:-mx-8 {\n margin-left: -2rem;\n margin-right: -2rem;\n }\n .lg\\:px-8 {\n padding-left: 2rem;\n padding-right: 2rem;\n }\n}\n@media (prefers-color-scheme: dark) {\n .dark\\:bg-gray-700 {\n --tw-bg-opacity: 1;\n background-color: rgb(55, 65, 81, var(--tw-bg-opacity));\n }\n .dark\\:text-gray-600 {\n --tw-text-opacity: 1;\n color: rgb(75, 85, 99, var(--tw-text-opacity));\n }\n}";
58623
+ const tailwind = " :host {} /*\n! tailwindcss v3.4.3 | MIT License | https://tailwindcss.com\n*/ /*\n1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)\n2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)\n*/\n*,\n::before,\n::after {\n box-sizing: border-box; /* 1 */\n border-width: 0; /* 2 */\n border-style: solid; /* 2 */\n border-color: #e5e7eb; /* 2 */\n}\n\n::before,\n::after {\n --tw-content: '';\n}\n\n/*\n1. Use a consistent sensible line-height in all browsers.\n2. Prevent adjustments of font size after orientation changes in iOS.\n3. Use a more readable tab size.\n4. Use the user's configured `sans` font-family by default.\n5. Use the user's configured `sans` font-feature-settings by default.\n6. Use the user's configured `sans` font-variation-settings by default.\n7. Disable tap highlights on iOS\n*/\nhtml,\n:host {\n line-height: 1.5; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n -moz-tab-size: 4; /* 3 */\n -o-tab-size: 4;\n tab-size: 4; /* 3 */\n font-family: ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\"; /* 4 */\n font-feature-settings: normal; /* 5 */\n font-variation-settings: normal; /* 6 */\n -webkit-tap-highlight-color: transparent; /* 7 */\n}\n\n/*\n1. Remove the margin in all browsers.\n2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.\n*/\nbody {\n margin: 0; /* 1 */\n line-height: inherit; /* 2 */\n}\n\n/*\n1. Add the correct height in Firefox.\n2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)\n3. Ensure horizontal rules are visible by default.\n*/\nhr {\n height: 0; /* 1 */\n color: inherit; /* 2 */\n border-top-width: 1px; /* 3 */\n}\n\n/*\nAdd the correct text decoration in Chrome, Edge, and Safari.\n*/\nabbr:where([title]) {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n}\n\n/*\nRemove the default font size and weight for headings.\n*/\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n font-size: inherit;\n font-weight: inherit;\n}\n\n/*\nReset links to optimize for opt-in styling instead of opt-out.\n*/\na {\n color: inherit;\n text-decoration: inherit;\n}\n\n/*\nAdd the correct font weight in Edge and Safari.\n*/\nb,\nstrong {\n font-weight: bolder;\n}\n\n/*\n1. Use the user's configured `mono` font-family by default.\n2. Use the user's configured `mono` font-feature-settings by default.\n3. Use the user's configured `mono` font-variation-settings by default.\n4. Correct the odd `em` font sizing in all browsers.\n*/\ncode,\nkbd,\nsamp,\npre {\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace; /* 1 */\n font-feature-settings: normal; /* 2 */\n font-variation-settings: normal; /* 3 */\n font-size: 1em; /* 4 */\n}\n\n/*\nAdd the correct font size in all browsers.\n*/\nsmall {\n font-size: 80%;\n}\n\n/*\nPrevent `sub` and `sup` elements from affecting the line height in all browsers.\n*/\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/*\n1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)\n2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)\n3. Remove gaps between table borders by default.\n*/\ntable {\n text-indent: 0; /* 1 */\n border-color: inherit; /* 2 */\n border-collapse: collapse; /* 3 */\n}\n\n/*\n1. Change the font styles in all browsers.\n2. Remove the margin in Firefox and Safari.\n3. Remove default padding in all browsers.\n*/\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-feature-settings: inherit; /* 1 */\n font-variation-settings: inherit; /* 1 */\n font-size: 100%; /* 1 */\n font-weight: inherit; /* 1 */\n line-height: inherit; /* 1 */\n letter-spacing: inherit; /* 1 */\n color: inherit; /* 1 */\n margin: 0; /* 2 */\n padding: 0; /* 3 */\n}\n\n/*\nRemove the inheritance of text transform in Edge and Firefox.\n*/\nbutton,\nselect {\n text-transform: none;\n}\n\n/*\n1. Correct the inability to style clickable types in iOS and Safari.\n2. Remove default button styles.\n*/\nbutton,\ninput:where([type=button]),\ninput:where([type=reset]),\ninput:where([type=submit]) {\n -webkit-appearance: button; /* 1 */\n background-color: transparent; /* 2 */\n background-image: none; /* 2 */\n}\n\n/*\nUse the modern Firefox focus style for all focusable elements.\n*/\n:-moz-focusring {\n outline: auto;\n}\n\n/*\nRemove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)\n*/\n:-moz-ui-invalid {\n box-shadow: none;\n}\n\n/*\nAdd the correct vertical alignment in Chrome and Firefox.\n*/\nprogress {\n vertical-align: baseline;\n}\n\n/*\nCorrect the cursor style of increment and decrement buttons in Safari.\n*/\n::-webkit-inner-spin-button,\n::-webkit-outer-spin-button {\n height: auto;\n}\n\n/*\n1. Correct the odd appearance in Chrome and Safari.\n2. Correct the outline style in Safari.\n*/\n[type=search] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/*\nRemove the inner padding in Chrome and Safari on macOS.\n*/\n::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/*\n1. Correct the inability to style clickable types in iOS and Safari.\n2. Change font properties to `inherit` in Safari.\n*/\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/*\nAdd the correct display in Chrome and Safari.\n*/\nsummary {\n display: list-item;\n}\n\n/*\nRemoves the default spacing and border for appropriate elements.\n*/\nblockquote,\ndl,\ndd,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\nhr,\nfigure,\np,\npre {\n margin: 0;\n}\n\nfieldset {\n margin: 0;\n padding: 0;\n}\n\nlegend {\n padding: 0;\n}\n\nol,\nul,\nmenu {\n list-style: none;\n margin: 0;\n padding: 0;\n}\n\n/*\nReset default styling for dialogs.\n*/\ndialog {\n padding: 0;\n}\n\n/*\nPrevent resizing textareas horizontally by default.\n*/\ntextarea {\n resize: vertical;\n}\n\n/*\n1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)\n2. Set the default placeholder color to the user's configured gray 400 color.\n*/\ninput::-moz-placeholder, textarea::-moz-placeholder {\n opacity: 1; /* 1 */\n color: #9ca3af; /* 2 */\n}\ninput::placeholder,\ntextarea::placeholder {\n opacity: 1; /* 1 */\n color: #9ca3af; /* 2 */\n}\n\n/*\nSet the default cursor for buttons.\n*/\nbutton,\n[role=button] {\n cursor: pointer;\n}\n\n/*\nMake sure disabled buttons don't get the pointer cursor.\n*/\n:disabled {\n cursor: default;\n}\n\n/*\n1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)\n2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)\n This can trigger a poorly considered lint error in some tools but is included by design.\n*/\nimg,\nsvg,\nvideo,\ncanvas,\naudio,\niframe,\nembed,\nobject {\n display: block; /* 1 */\n vertical-align: middle; /* 2 */\n}\n\n/*\nConstrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)\n*/\nimg,\nvideo {\n max-width: 100%;\n height: auto;\n}\n\n/* Make elements with the HTML hidden attribute stay hidden by default */\n[hidden] {\n display: none;\n}\n\ninput:where([type=text]), input:where(:not([type])), input:where([type=email]), input:where([type=url]), input:where([type=password]), input:where([type=number]), input:where([type=date]), input:where([type=datetime-local]), input:where([type=month]), input:where([type=search]), input:where([type=tel]), input:where([type=time]), input:where([type=week]), select:where([multiple]), textarea, select {\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n background-color: #fff;\n border-color: #6b7280;\n border-width: 1px;\n border-radius: 0px;\n padding-top: 0.5rem;\n padding-right: 0.75rem;\n padding-bottom: 0.5rem;\n padding-left: 0.75rem;\n font-size: 1rem;\n line-height: 1.5rem;\n --tw-shadow: 0 0 #0000;\n}\n\ninput:where([type=text]):focus, input:where(:not([type])):focus, input:where([type=email]):focus, input:where([type=url]):focus, input:where([type=password]):focus, input:where([type=number]):focus, input:where([type=date]):focus, input:where([type=datetime-local]):focus, input:where([type=month]):focus, input:where([type=search]):focus, input:where([type=tel]):focus, input:where([type=time]):focus, input:where([type=week]):focus, select:where([multiple]):focus, textarea:focus, select:focus {\n outline: 2px solid transparent;\n outline-offset: 2px;\n --tw-ring-inset: var(--tw-empty,/*!*/ /*!*/);\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: #175CD3;\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n border-color: #175CD3;\n}\n\ninput::-moz-placeholder, textarea::-moz-placeholder {\n color: #6b7280;\n opacity: 1;\n}\n\ninput::placeholder, textarea::placeholder {\n color: #6b7280;\n opacity: 1;\n}\n\n::-webkit-datetime-edit-fields-wrapper {\n padding: 0;\n}\n\n::-webkit-date-and-time-value {\n min-height: 1.5em;\n text-align: inherit;\n}\n\n::-webkit-datetime-edit {\n display: inline-flex;\n}\n\n::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {\n padding-top: 0;\n padding-bottom: 0;\n}\n\nselect {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e\");\n background-position: right 0.5rem center;\n background-repeat: no-repeat;\n background-size: 1.5em 1.5em;\n padding-right: 2.5rem;\n -webkit-print-color-adjust: exact;\n print-color-adjust: exact;\n}\n\nselect:where([multiple]), select:where([size]:not([size=\"1\"])) {\n background-image: initial;\n background-position: initial;\n background-repeat: unset;\n background-size: initial;\n padding-right: 0.75rem;\n -webkit-print-color-adjust: unset;\n print-color-adjust: unset;\n}\n\ninput:where([type=checkbox]), input:where([type=radio]) {\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n padding: 0;\n -webkit-print-color-adjust: exact;\n print-color-adjust: exact;\n display: inline-block;\n vertical-align: middle;\n background-origin: border-box;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n flex-shrink: 0;\n height: 1rem;\n width: 1rem;\n color: #175CD3;\n background-color: #fff;\n border-color: #6b7280;\n border-width: 1px;\n --tw-shadow: 0 0 #0000;\n}\n\ninput:where([type=checkbox]) {\n border-radius: 0px;\n}\n\ninput:where([type=radio]) {\n border-radius: 100%;\n}\n\ninput:where([type=checkbox]):focus, input:where([type=radio]):focus {\n outline: 2px solid transparent;\n outline-offset: 2px;\n --tw-ring-inset: var(--tw-empty,/*!*/ /*!*/);\n --tw-ring-offset-width: 2px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: #175CD3;\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n}\n\ninput:where([type=checkbox]):checked, input:where([type=radio]):checked {\n border-color: transparent;\n background-color: currentColor;\n background-size: 100% 100%;\n background-position: center;\n background-repeat: no-repeat;\n}\n\ninput:where([type=checkbox]):checked {\n background-image: url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e\");\n}\n\n@media (forced-colors: active) {\n input:where([type=checkbox]):checked {\n -webkit-appearance: auto;\n -moz-appearance: auto;\n appearance: auto;\n }\n}\ninput:where([type=radio]):checked {\n background-image: url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e\");\n}\n\n@media (forced-colors: active) {\n input:where([type=radio]):checked {\n -webkit-appearance: auto;\n -moz-appearance: auto;\n appearance: auto;\n }\n}\ninput:where([type=checkbox]):checked:hover, input:where([type=checkbox]):checked:focus, input:where([type=radio]):checked:hover, input:where([type=radio]):checked:focus {\n border-color: transparent;\n background-color: currentColor;\n}\n\ninput:where([type=checkbox]):indeterminate {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3e%3cpath stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3e%3c/svg%3e\");\n border-color: transparent;\n background-color: currentColor;\n background-size: 100% 100%;\n background-position: center;\n background-repeat: no-repeat;\n}\n\n@media (forced-colors: active) {\n input:where([type=checkbox]):indeterminate {\n -webkit-appearance: auto;\n -moz-appearance: auto;\n appearance: auto;\n }\n}\ninput:where([type=checkbox]):indeterminate:hover, input:where([type=checkbox]):indeterminate:focus {\n border-color: transparent;\n background-color: currentColor;\n}\n\ninput:where([type=file]) {\n background: unset;\n border-color: inherit;\n border-width: 0;\n border-radius: 0;\n padding: 0;\n font-size: unset;\n line-height: inherit;\n}\n\ninput:where([type=file]):focus {\n outline: 1px solid ButtonText;\n outline: 1px auto -webkit-focus-ring-color;\n}\n\n*, ::before, ::after {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(21 112 239 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n --tw-contain-size: ;\n --tw-contain-layout: ;\n --tw-contain-paint: ;\n --tw-contain-style: ;\n}\n\n::backdrop {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(21 112 239 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n --tw-contain-size: ;\n --tw-contain-layout: ;\n --tw-contain-paint: ;\n --tw-contain-style: ;\n}\n\n.container {\n width: 100%;\n}\n\n@media (min-width: 475px) {\n .container {\n max-width: 475px;\n }\n}\n@media (min-width: 640px) {\n .container {\n max-width: 640px;\n }\n}\n@media (min-width: 768px) {\n .container {\n max-width: 768px;\n }\n}\n@media (min-width: 1024px) {\n .container {\n max-width: 1024px;\n }\n}\n@media (min-width: 1280px) {\n .container {\n max-width: 1280px;\n }\n}\n@media (min-width: 1536px) {\n .container {\n max-width: 1536px;\n }\n}\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border-width: 0;\n}\n\n.pointer-events-none {\n pointer-events: none;\n}\n\n.visible {\n visibility: visible;\n}\n\n.invisible {\n visibility: hidden;\n}\n\n.fixed {\n position: fixed;\n}\n\n.absolute {\n position: absolute;\n}\n\n.relative {\n position: relative;\n}\n\n.sticky {\n position: sticky;\n}\n\n.inset-0 {\n inset: 0px;\n}\n\n.inset-y-0 {\n top: 0px;\n bottom: 0px;\n}\n\n.-bottom-8 {\n bottom: -2rem;\n}\n\n.bottom-full {\n bottom: 100%;\n}\n\n.left-0 {\n left: 0px;\n}\n\n.right-0 {\n right: 0px;\n}\n\n.right-8 {\n right: 2rem;\n}\n\n.top-0 {\n top: 0px;\n}\n\n.top-full {\n top: 100%;\n}\n\n.isolate {\n isolation: isolate;\n}\n\n.z-10 {\n z-index: 10;\n}\n\n.z-100 {\n z-index: 100;\n}\n\n.z-20 {\n z-index: 20;\n}\n\n.z-2000 {\n z-index: 2000;\n}\n\n.z-50 {\n z-index: 50;\n}\n\n.col-span-2 {\n grid-column: span 2/span 2;\n}\n\n.col-span-3 {\n grid-column: span 3/span 3;\n}\n\n.m-0 {\n margin: 0px;\n}\n\n.m-3 {\n margin: 0.75rem;\n}\n\n.m-auto {\n margin: auto;\n}\n\n.-mx-4 {\n margin-left: -1rem;\n margin-right: -1rem;\n}\n\n.-my-2 {\n margin-top: -0.5rem;\n margin-bottom: -0.5rem;\n}\n\n.mx-2 {\n margin-left: 0.5rem;\n margin-right: 0.5rem;\n}\n\n.mx-auto {\n margin-left: auto;\n margin-right: auto;\n}\n\n.my-1 {\n margin-top: 0.25rem;\n margin-bottom: 0.25rem;\n}\n\n.my-2 {\n margin-top: 0.5rem;\n margin-bottom: 0.5rem;\n}\n\n.my-8 {\n margin-top: 2rem;\n margin-bottom: 2rem;\n}\n\n.my-px {\n margin-top: 1px;\n margin-bottom: 1px;\n}\n\n.\\!mt-8 {\n margin-top: 2rem !important;\n}\n\n.-mb-px {\n margin-bottom: -1px;\n}\n\n.mb-0 {\n margin-bottom: 0px;\n}\n\n.mb-1 {\n margin-bottom: 0.25rem;\n}\n\n.mb-10 {\n margin-bottom: 2.5rem;\n}\n\n.mb-2 {\n margin-bottom: 0.5rem;\n}\n\n.mb-3 {\n margin-bottom: 0.75rem;\n}\n\n.mb-4 {\n margin-bottom: 1rem;\n}\n\n.mb-8 {\n margin-bottom: 2rem;\n}\n\n.ml-0 {\n margin-left: 0px;\n}\n\n.ml-0\\.5 {\n margin-left: 0.125rem;\n}\n\n.ml-1 {\n margin-left: 0.25rem;\n}\n\n.ml-2 {\n margin-left: 0.5rem;\n}\n\n.ml-3 {\n margin-left: 0.75rem;\n}\n\n.ml-auto {\n margin-left: auto;\n}\n\n.mr-1 {\n margin-right: 0.25rem;\n}\n\n.mr-2 {\n margin-right: 0.5rem;\n}\n\n.mr-4 {\n margin-right: 1rem;\n}\n\n.mt-0 {\n margin-top: 0px;\n}\n\n.mt-1 {\n margin-top: 0.25rem;\n}\n\n.mt-2 {\n margin-top: 0.5rem;\n}\n\n.mt-3 {\n margin-top: 0.75rem;\n}\n\n.mt-4 {\n margin-top: 1rem;\n}\n\n.mt-5 {\n margin-top: 1.25rem;\n}\n\n.mt-6 {\n margin-top: 1.5rem;\n}\n\n.mt-8 {\n margin-top: 2rem;\n}\n\n.box-border {\n box-sizing: border-box;\n}\n\n.block {\n display: block;\n}\n\n.inline-block {\n display: inline-block;\n}\n\n.inline {\n display: inline;\n}\n\n.flex {\n display: flex;\n}\n\n.inline-flex {\n display: inline-flex;\n}\n\n.table {\n display: table;\n}\n\n.flow-root {\n display: flow-root;\n}\n\n.grid {\n display: grid;\n}\n\n.contents {\n display: contents;\n}\n\n.hidden {\n display: none;\n}\n\n.h-10 {\n height: 2.5rem;\n}\n\n.h-11 {\n height: 2.75rem;\n}\n\n.h-12 {\n height: 3rem;\n}\n\n.h-4 {\n height: 1rem;\n}\n\n.h-5 {\n height: 1.25rem;\n}\n\n.h-6 {\n height: 1.5rem;\n}\n\n.h-8 {\n height: 2rem;\n}\n\n.h-\\[21px\\] {\n height: 21px;\n}\n\n.h-\\[28px\\] {\n height: 28px;\n}\n\n.h-full {\n height: 100%;\n}\n\n.h-px {\n height: 1px;\n}\n\n.max-h-60 {\n max-height: 15rem;\n}\n\n.max-h-80 {\n max-height: 20rem;\n}\n\n.min-h-full {\n min-height: 100%;\n}\n\n.w-10 {\n width: 2.5rem;\n}\n\n.w-11 {\n width: 2.75rem;\n}\n\n.w-12 {\n width: 3rem;\n}\n\n.w-20 {\n width: 5rem;\n}\n\n.w-4 {\n width: 1rem;\n}\n\n.w-5 {\n width: 1.25rem;\n}\n\n.w-6 {\n width: 1.5rem;\n}\n\n.w-8 {\n width: 2rem;\n}\n\n.w-96 {\n width: 24rem;\n}\n\n.w-\\[44px\\] {\n width: 44px;\n}\n\n.w-full {\n width: 100%;\n}\n\n.w-max {\n width: -moz-max-content;\n width: max-content;\n}\n\n.w-screen {\n width: 100vw;\n}\n\n.min-w-0 {\n min-width: 0px;\n}\n\n.min-w-\\[40\\%\\] {\n min-width: 40%;\n}\n\n.min-w-full {\n min-width: 100%;\n}\n\n.max-w-lg {\n max-width: 32rem;\n}\n\n.max-w-md {\n max-width: 28rem;\n}\n\n.max-w-sm {\n max-width: 24rem;\n}\n\n.flex-1 {\n flex: 1 1 0%;\n}\n\n.flex-auto {\n flex: 1 1 auto;\n}\n\n.flex-shrink-0 {\n flex-shrink: 0;\n}\n\n.shrink-0 {\n flex-shrink: 0;\n}\n\n.flex-grow {\n flex-grow: 1;\n}\n\n.grow {\n flex-grow: 1;\n}\n\n.table-auto {\n table-layout: auto;\n}\n\n.table-fixed {\n table-layout: fixed;\n}\n\n.transform {\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n@keyframes spin {\n to {\n transform: rotate(360deg);\n }\n}\n.animate-spin {\n animation: spin 1s linear infinite;\n}\n\n.cursor-default {\n cursor: default;\n}\n\n.cursor-help {\n cursor: help;\n}\n\n.cursor-not-allowed {\n cursor: not-allowed;\n}\n\n.cursor-pointer {\n cursor: pointer;\n}\n\n.touch-pan-y {\n --tw-pan-y: pan-y;\n touch-action: var(--tw-pan-x) var(--tw-pan-y) var(--tw-pinch-zoom);\n}\n\n.select-none {\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n}\n\n.resize-none {\n resize: none;\n}\n\n.resize-y {\n resize: vertical;\n}\n\n.resize {\n resize: both;\n}\n\n.grid-flow-col {\n grid-auto-flow: column;\n}\n\n.grid-cols-1 {\n grid-template-columns: repeat(1, minmax(0, 1fr));\n}\n\n.grid-cols-2 {\n grid-template-columns: repeat(2, minmax(0, 1fr));\n}\n\n.grid-cols-3 {\n grid-template-columns: repeat(3, minmax(0, 1fr));\n}\n\n.grid-cols-4 {\n grid-template-columns: repeat(4, minmax(0, 1fr));\n}\n\n.grid-cols-subgrid {\n grid-template-columns: subgrid;\n}\n\n.flex-row {\n flex-direction: row;\n}\n\n.flex-col {\n flex-direction: column;\n}\n\n.place-items-start {\n place-items: start;\n}\n\n.items-start {\n align-items: flex-start;\n}\n\n.items-end {\n align-items: flex-end;\n}\n\n.items-center {\n align-items: center;\n}\n\n.items-stretch {\n align-items: stretch;\n}\n\n.justify-start {\n justify-content: flex-start;\n}\n\n.justify-end {\n justify-content: flex-end;\n}\n\n.justify-center {\n justify-content: center;\n}\n\n.justify-between {\n justify-content: space-between;\n}\n\n.gap-1 {\n gap: 0.25rem;\n}\n\n.gap-2 {\n gap: 0.5rem;\n}\n\n.gap-3 {\n gap: 0.75rem;\n}\n\n.gap-4 {\n gap: 1rem;\n}\n\n.gap-6 {\n gap: 1.5rem;\n}\n\n.gap-8 {\n gap: 2rem;\n}\n\n.gap-x-1 {\n -moz-column-gap: 0.25rem;\n column-gap: 0.25rem;\n}\n\n.gap-x-2 {\n -moz-column-gap: 0.5rem;\n column-gap: 0.5rem;\n}\n\n.gap-x-3 {\n -moz-column-gap: 0.75rem;\n column-gap: 0.75rem;\n}\n\n.gap-x-4 {\n -moz-column-gap: 1rem;\n column-gap: 1rem;\n}\n\n.gap-y-10 {\n row-gap: 2.5rem;\n}\n\n.gap-y-2 {\n row-gap: 0.5rem;\n}\n\n.gap-y-4 {\n row-gap: 1rem;\n}\n\n.space-x-2 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-x-reverse: 0;\n margin-right: calc(0.5rem * var(--tw-space-x-reverse));\n margin-left: calc(0.5rem * (1 - var(--tw-space-x-reverse)));\n}\n\n.space-x-4 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-x-reverse: 0;\n margin-right: calc(1rem * var(--tw-space-x-reverse));\n margin-left: calc(1rem * (1 - var(--tw-space-x-reverse)));\n}\n\n.space-y-2 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(0.5rem * (1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(0.5rem * var(--tw-space-y-reverse));\n}\n\n.space-y-3 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(0.75rem * (1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(0.75rem * var(--tw-space-y-reverse));\n}\n\n.space-y-4 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(1rem * (1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(1rem * var(--tw-space-y-reverse));\n}\n\n.space-y-5 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(1.25rem * (1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(1.25rem * var(--tw-space-y-reverse));\n}\n\n.divide-y > :not([hidden]) ~ :not([hidden]) {\n --tw-divide-y-reverse: 0;\n border-top-width: calc(1px * (1 - var(--tw-divide-y-reverse)));\n border-bottom-width: calc(1px * var(--tw-divide-y-reverse));\n}\n\n.divide-gray-200 > :not([hidden]) ~ :not([hidden]) {\n --tw-divide-opacity: 1;\n border-color: rgb(229, 231, 235, var(--tw-divide-opacity));\n}\n\n.divide-gray-300 > :not([hidden]) ~ :not([hidden]) {\n --tw-divide-opacity: 1;\n border-color: rgb(209, 213, 219, var(--tw-divide-opacity));\n}\n\n.self-start {\n align-self: flex-start;\n}\n\n.self-center {\n align-self: center;\n}\n\n.overflow-auto {\n overflow: auto;\n}\n\n.overflow-hidden {\n overflow: hidden;\n}\n\n.overflow-x-auto {\n overflow-x: auto;\n}\n\n.overflow-y-auto {\n overflow-y: auto;\n}\n\n.overflow-x-hidden {\n overflow-x: hidden;\n}\n\n.overscroll-contain {\n overscroll-behavior: contain;\n}\n\n.truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.overflow-ellipsis {\n text-overflow: ellipsis;\n}\n\n.text-ellipsis {\n text-overflow: ellipsis;\n}\n\n.whitespace-normal {\n white-space: normal;\n}\n\n.whitespace-nowrap {\n white-space: nowrap;\n}\n\n.text-pretty {\n text-wrap: pretty;\n}\n\n.break-words {\n overflow-wrap: break-word;\n}\n\n.rounded {\n border-radius: 0.25rem;\n}\n\n.rounded-full {\n border-radius: 9999px;\n}\n\n.rounded-lg {\n border-radius: 0.5rem;\n}\n\n.rounded-md {\n border-radius: 0.375rem;\n}\n\n.rounded-xl {\n border-radius: 0.75rem;\n}\n\n.rounded-r-md {\n border-top-right-radius: 0.375rem;\n border-bottom-right-radius: 0.375rem;\n}\n\n.border {\n border-width: 1px;\n}\n\n.border-0 {\n border-width: 0px;\n}\n\n.border-2 {\n border-width: 2px;\n}\n\n.border-b {\n border-bottom-width: 1px;\n}\n\n.border-b-2 {\n border-bottom-width: 2px;\n}\n\n.border-t {\n border-top-width: 1px;\n}\n\n.border-solid {\n border-style: solid;\n}\n\n.border-none {\n border-style: none;\n}\n\n.border-blue-200 {\n --tw-border-opacity: 1;\n border-color: rgb(132, 202, 255, var(--tw-border-opacity));\n}\n\n.border-blue-300 {\n --tw-border-opacity: 1;\n border-color: rgb(83, 177, 253, var(--tw-border-opacity));\n}\n\n.border-blue-400 {\n --tw-border-opacity: 1;\n border-color: rgb(46, 144, 250, var(--tw-border-opacity));\n}\n\n.border-blue-500 {\n --tw-border-opacity: 1;\n border-color: rgb(21, 112, 239, var(--tw-border-opacity));\n}\n\n.border-blue-600 {\n --tw-border-opacity: 1;\n border-color: rgb(23, 92, 211, var(--tw-border-opacity));\n}\n\n.border-gray-200 {\n --tw-border-opacity: 1;\n border-color: rgb(229, 231, 235, var(--tw-border-opacity));\n}\n\n.border-gray-300 {\n --tw-border-opacity: 1;\n border-color: rgb(209, 213, 219, var(--tw-border-opacity));\n}\n\n.border-green-200 {\n --tw-border-opacity: 1;\n border-color: rgb(187, 247, 208, var(--tw-border-opacity));\n}\n\n.border-green-300 {\n --tw-border-opacity: 1;\n border-color: rgb(134, 239, 172, var(--tw-border-opacity));\n}\n\n.border-green-400 {\n --tw-border-opacity: 1;\n border-color: rgb(74, 222, 128, var(--tw-border-opacity));\n}\n\n.border-green-600 {\n --tw-border-opacity: 1;\n border-color: rgb(22, 163, 74, var(--tw-border-opacity));\n}\n\n.border-indigo-300 {\n --tw-border-opacity: 1;\n border-color: rgb(165, 180, 252, var(--tw-border-opacity));\n}\n\n.border-pink-300 {\n --tw-border-opacity: 1;\n border-color: rgb(249, 168, 212, var(--tw-border-opacity));\n}\n\n.border-purple-300 {\n --tw-border-opacity: 1;\n border-color: rgb(216, 180, 254, var(--tw-border-opacity));\n}\n\n.border-red-200 {\n --tw-border-opacity: 1;\n border-color: rgb(254, 202, 202, var(--tw-border-opacity));\n}\n\n.border-red-300 {\n --tw-border-opacity: 1;\n border-color: rgb(252, 165, 165, var(--tw-border-opacity));\n}\n\n.border-red-400 {\n --tw-border-opacity: 1;\n border-color: rgb(248, 113, 113, var(--tw-border-opacity));\n}\n\n.border-red-600 {\n --tw-border-opacity: 1;\n border-color: rgb(220, 38, 38, var(--tw-border-opacity));\n}\n\n.border-slate-600 {\n --tw-border-opacity: 1;\n border-color: rgb(71, 85, 105, var(--tw-border-opacity));\n}\n\n.border-transparent {\n border-color: transparent;\n}\n\n.border-yellow-200 {\n --tw-border-opacity: 1;\n border-color: rgb(254, 240, 138, var(--tw-border-opacity));\n}\n\n.border-yellow-300 {\n --tw-border-opacity: 1;\n border-color: rgb(253, 224, 71, var(--tw-border-opacity));\n}\n\n.border-yellow-600 {\n --tw-border-opacity: 1;\n border-color: rgb(202, 138, 4, var(--tw-border-opacity));\n}\n\n.bg-\\[\\#F9FAFB\\] {\n --tw-bg-opacity: 1;\n background-color: rgb(249, 250, 251, var(--tw-bg-opacity));\n}\n\n.bg-\\[\\#FFFAEB\\] {\n --tw-bg-opacity: 1;\n background-color: rgb(255, 250, 235, var(--tw-bg-opacity));\n}\n\n.bg-blue-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(178, 221, 255, var(--tw-bg-opacity));\n}\n\n.bg-blue-50 {\n --tw-bg-opacity: 1;\n background-color: rgb(209, 233, 255, var(--tw-bg-opacity));\n}\n\n.bg-blue-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(21, 112, 239, var(--tw-bg-opacity));\n}\n\n.bg-blue-600 {\n --tw-bg-opacity: 1;\n background-color: rgb(23, 92, 211, var(--tw-bg-opacity));\n}\n\n.bg-gray-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(243, 244, 246, var(--tw-bg-opacity));\n}\n\n.bg-gray-200 {\n --tw-bg-opacity: 1;\n background-color: rgb(229, 231, 235, var(--tw-bg-opacity));\n}\n\n.bg-gray-50 {\n --tw-bg-opacity: 1;\n background-color: rgb(249, 250, 251, var(--tw-bg-opacity));\n}\n\n.bg-gray-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(107, 114, 128, var(--tw-bg-opacity));\n}\n\n.bg-gray-900 {\n --tw-bg-opacity: 1;\n background-color: rgb(17, 24, 39, var(--tw-bg-opacity));\n}\n\n.bg-green-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(220, 252, 231, var(--tw-bg-opacity));\n}\n\n.bg-green-50 {\n --tw-bg-opacity: 1;\n background-color: rgb(240, 253, 244, var(--tw-bg-opacity));\n}\n\n.bg-indigo-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(224, 231, 255, var(--tw-bg-opacity));\n}\n\n.bg-photon-blue {\n --tw-bg-opacity: 1;\n background-color: rgb(49, 130, 206, var(--tw-bg-opacity));\n}\n\n.bg-pink-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(252, 231, 243, var(--tw-bg-opacity));\n}\n\n.bg-purple-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(243, 232, 255, var(--tw-bg-opacity));\n}\n\n.bg-red-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(254, 226, 226, var(--tw-bg-opacity));\n}\n\n.bg-red-50 {\n --tw-bg-opacity: 1;\n background-color: rgb(254, 242, 242, var(--tw-bg-opacity));\n}\n\n.bg-red-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(239, 68, 68, var(--tw-bg-opacity));\n}\n\n.bg-slate-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(241, 245, 249, var(--tw-bg-opacity));\n}\n\n.bg-slate-50 {\n --tw-bg-opacity: 1;\n background-color: rgb(248, 250, 252, var(--tw-bg-opacity));\n}\n\n.bg-transparent {\n background-color: transparent;\n}\n\n.bg-white {\n --tw-bg-opacity: 1;\n background-color: rgb(255, 255, 255, var(--tw-bg-opacity));\n}\n\n.bg-yellow-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(254, 249, 195, var(--tw-bg-opacity));\n}\n\n.bg-yellow-50 {\n --tw-bg-opacity: 1;\n background-color: rgb(254, 252, 232, var(--tw-bg-opacity));\n}\n\n.bg-opacity-75 {\n --tw-bg-opacity: 0.75;\n}\n\n.fill-blue-500 {\n fill: #1570EF;\n}\n\n.fill-green-500 {\n fill: #22c55e;\n}\n\n.p-0 {\n padding: 0px;\n}\n\n.p-2 {\n padding: 0.5rem;\n}\n\n.p-4 {\n padding: 1rem;\n}\n\n.px-1 {\n padding-left: 0.25rem;\n padding-right: 0.25rem;\n}\n\n.px-1\\.5 {\n padding-left: 0.375rem;\n padding-right: 0.375rem;\n}\n\n.px-2 {\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n}\n\n.px-2\\.5 {\n padding-left: 0.625rem;\n padding-right: 0.625rem;\n}\n\n.px-3 {\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n}\n\n.px-3\\.5 {\n padding-left: 0.875rem;\n padding-right: 0.875rem;\n}\n\n.px-4 {\n padding-left: 1rem;\n padding-right: 1rem;\n}\n\n.py-0 {\n padding-top: 0px;\n padding-bottom: 0px;\n}\n\n.py-0\\.5 {\n padding-top: 0.125rem;\n padding-bottom: 0.125rem;\n}\n\n.py-1 {\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n}\n\n.py-1\\.5 {\n padding-top: 0.375rem;\n padding-bottom: 0.375rem;\n}\n\n.py-2 {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n}\n\n.py-2\\.5 {\n padding-top: 0.625rem;\n padding-bottom: 0.625rem;\n}\n\n.py-3 {\n padding-top: 0.75rem;\n padding-bottom: 0.75rem;\n}\n\n.py-3\\.5 {\n padding-top: 0.875rem;\n padding-bottom: 0.875rem;\n}\n\n.py-4 {\n padding-top: 1rem;\n padding-bottom: 1rem;\n}\n\n.pb-1 {\n padding-bottom: 0.25rem;\n}\n\n.pb-2 {\n padding-bottom: 0.5rem;\n}\n\n.pb-4 {\n padding-bottom: 1rem;\n}\n\n.pl-1 {\n padding-left: 0.25rem;\n}\n\n.pl-10 {\n padding-left: 2.5rem;\n}\n\n.pl-2 {\n padding-left: 0.5rem;\n}\n\n.pl-3 {\n padding-left: 0.75rem;\n}\n\n.pl-5 {\n padding-left: 1.25rem;\n}\n\n.pl-\\[19\\.75px\\] {\n padding-left: 19.75px;\n}\n\n.pr-2 {\n padding-right: 0.5rem;\n}\n\n.pr-3 {\n padding-right: 0.75rem;\n}\n\n.pr-4 {\n padding-right: 1rem;\n}\n\n.pr-5 {\n padding-right: 1.25rem;\n}\n\n.pt-1 {\n padding-top: 0.25rem;\n}\n\n.pt-2 {\n padding-top: 0.5rem;\n}\n\n.pt-3 {\n padding-top: 0.75rem;\n}\n\n.pt-4 {\n padding-top: 1rem;\n}\n\n.text-left {\n text-align: left;\n}\n\n.text-center {\n text-align: center;\n}\n\n.text-end {\n text-align: end;\n}\n\n.align-top {\n vertical-align: top;\n}\n\n.align-middle {\n vertical-align: middle;\n}\n\n.font-mono {\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\n}\n\n.font-sans {\n font-family: ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n}\n\n.text-3xl {\n font-size: 1.875rem;\n line-height: 2.25rem;\n}\n\n.text-base {\n font-size: 1rem;\n line-height: 1.5rem;\n}\n\n.text-lg {\n font-size: 1.125rem;\n line-height: 1.75rem;\n}\n\n.text-sm {\n font-size: 0.875rem;\n line-height: 1.25rem;\n}\n\n.text-sm\\/6 {\n font-size: 0.875rem;\n line-height: 1.5rem;\n}\n\n.text-xl {\n font-size: 1.25rem;\n line-height: 1.75rem;\n}\n\n.text-xs {\n font-size: 0.75rem;\n line-height: 1rem;\n}\n\n.font-bold {\n font-weight: 700;\n}\n\n.font-extrabold {\n font-weight: 800;\n}\n\n.font-light {\n font-weight: 300;\n}\n\n.font-medium {\n font-weight: 500;\n}\n\n.font-normal {\n font-weight: 400;\n}\n\n.font-semibold {\n font-weight: 600;\n}\n\n.uppercase {\n text-transform: uppercase;\n}\n\n.capitalize {\n text-transform: capitalize;\n}\n\n.italic {\n font-style: italic;\n}\n\n.leading-6 {\n line-height: 1.5rem;\n}\n\n.leading-none {\n line-height: 1;\n}\n\n.leading-snug {\n line-height: 1.375;\n}\n\n.text-\\[\\#DC6803\\] {\n --tw-text-opacity: 1;\n color: rgb(220, 104, 3, var(--tw-text-opacity));\n}\n\n.text-black {\n --tw-text-opacity: 1;\n color: rgb(0, 0, 0, var(--tw-text-opacity));\n}\n\n.text-blue-500 {\n --tw-text-opacity: 1;\n color: rgb(21, 112, 239, var(--tw-text-opacity));\n}\n\n.text-blue-600 {\n --tw-text-opacity: 1;\n color: rgb(23, 92, 211, var(--tw-text-opacity));\n}\n\n.text-blue-700 {\n --tw-text-opacity: 1;\n color: rgb(24, 73, 169, var(--tw-text-opacity));\n}\n\n.text-blue-800 {\n --tw-text-opacity: 1;\n color: rgb(25, 65, 133, var(--tw-text-opacity));\n}\n\n.text-blue-900 {\n --tw-text-opacity: 1;\n color: rgb(16, 42, 86, var(--tw-text-opacity));\n}\n\n.text-current {\n color: currentColor;\n}\n\n.text-gray-200 {\n --tw-text-opacity: 1;\n color: rgb(229, 231, 235, var(--tw-text-opacity));\n}\n\n.text-gray-400 {\n --tw-text-opacity: 1;\n color: rgb(156, 163, 175, var(--tw-text-opacity));\n}\n\n.text-gray-50 {\n --tw-text-opacity: 1;\n color: rgb(249, 250, 251, var(--tw-text-opacity));\n}\n\n.text-gray-500 {\n --tw-text-opacity: 1;\n color: rgb(107, 114, 128, var(--tw-text-opacity));\n}\n\n.text-gray-600 {\n --tw-text-opacity: 1;\n color: rgb(75, 85, 99, var(--tw-text-opacity));\n}\n\n.text-gray-700 {\n --tw-text-opacity: 1;\n color: rgb(55, 65, 81, var(--tw-text-opacity));\n}\n\n.text-gray-900 {\n --tw-text-opacity: 1;\n color: rgb(17, 24, 39, var(--tw-text-opacity));\n}\n\n.text-green-500 {\n --tw-text-opacity: 1;\n color: rgb(34, 197, 94, var(--tw-text-opacity));\n}\n\n.text-green-600 {\n --tw-text-opacity: 1;\n color: rgb(22, 163, 74, var(--tw-text-opacity));\n}\n\n.text-green-700 {\n --tw-text-opacity: 1;\n color: rgb(21, 128, 61, var(--tw-text-opacity));\n}\n\n.text-green-800 {\n --tw-text-opacity: 1;\n color: rgb(22, 101, 52, var(--tw-text-opacity));\n}\n\n.text-indigo-700 {\n --tw-text-opacity: 1;\n color: rgb(67, 56, 202, var(--tw-text-opacity));\n}\n\n.text-pink-700 {\n --tw-text-opacity: 1;\n color: rgb(190, 24, 93, var(--tw-text-opacity));\n}\n\n.text-purple-700 {\n --tw-text-opacity: 1;\n color: rgb(126, 34, 206, var(--tw-text-opacity));\n}\n\n.text-red-400 {\n --tw-text-opacity: 1;\n color: rgb(248, 113, 113, var(--tw-text-opacity));\n}\n\n.text-red-500 {\n --tw-text-opacity: 1;\n color: rgb(239, 68, 68, var(--tw-text-opacity));\n}\n\n.text-red-600 {\n --tw-text-opacity: 1;\n color: rgb(220, 38, 38, var(--tw-text-opacity));\n}\n\n.text-red-700 {\n --tw-text-opacity: 1;\n color: rgb(185, 28, 28, var(--tw-text-opacity));\n}\n\n.text-red-800 {\n --tw-text-opacity: 1;\n color: rgb(153, 27, 27, var(--tw-text-opacity));\n}\n\n.text-slate-500 {\n --tw-text-opacity: 1;\n color: rgb(100, 116, 139, var(--tw-text-opacity));\n}\n\n.text-slate-600 {\n --tw-text-opacity: 1;\n color: rgb(71, 85, 105, var(--tw-text-opacity));\n}\n\n.text-teal-600 {\n --tw-text-opacity: 1;\n color: rgb(13, 148, 136, var(--tw-text-opacity));\n}\n\n.text-transparent {\n color: transparent;\n}\n\n.text-white {\n --tw-text-opacity: 1;\n color: rgb(255, 255, 255, var(--tw-text-opacity));\n}\n\n.text-yellow-600 {\n --tw-text-opacity: 1;\n color: rgb(202, 138, 4, var(--tw-text-opacity));\n}\n\n.text-yellow-800 {\n --tw-text-opacity: 1;\n color: rgb(133, 77, 14, var(--tw-text-opacity));\n}\n\n.underline {\n text-decoration-line: underline;\n}\n\n.opacity-0 {\n opacity: 0;\n}\n\n.opacity-100 {\n opacity: 1;\n}\n\n.opacity-35 {\n opacity: 0.35;\n}\n\n.opacity-50 {\n opacity: 0.5;\n}\n\n.shadow {\n --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-shadow);\n}\n\n.shadow-card {\n --tw-shadow: 0px 0px 1px rgba(48, 49, 51, 0.05),0px 2px 4px rgba(48, 49, 51, 0.1);\n --tw-shadow-colored: 0px 0px 1px var(--tw-shadow-color), 0px 2px 4px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-shadow);\n}\n\n.shadow-lg {\n --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-shadow);\n}\n\n.shadow-sm {\n --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);\n --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-shadow);\n}\n\n.shadow-xl {\n --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-shadow);\n}\n\n.ring-1 {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));\n}\n\n.ring-2 {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));\n}\n\n.ring-inset {\n --tw-ring-inset: inset;\n}\n\n.ring-black {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(0 0 0 / var(--tw-ring-opacity));\n}\n\n.ring-blue-300 {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(83 177 253 / var(--tw-ring-opacity));\n}\n\n.ring-gray-200 {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(229 231 235 / var(--tw-ring-opacity));\n}\n\n.ring-gray-300 {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(209 213 219 / var(--tw-ring-opacity));\n}\n\n.ring-gray-900\\/5 {\n --tw-ring-color: rgb(17 24 39 / 0.05);\n}\n\n.ring-red-300 {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(252 165 165 / var(--tw-ring-opacity));\n}\n\n.ring-sky-500\\/40 {\n --tw-ring-color: rgb(14 165 233 / 0.4);\n}\n\n.ring-opacity-5 {\n --tw-ring-opacity: 0.05;\n}\n\n.blur {\n --tw-blur: blur(8px);\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n\n.filter {\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n\n.transition {\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n\n.transition-all {\n transition-property: all;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n\n.transition-opacity {\n transition-property: opacity;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n\n.duration-100 {\n transition-duration: 100ms;\n}\n\n.ease-in {\n transition-timing-function: cubic-bezier(0.4, 0, 1, 1);\n}\n\n.ease-in-out {\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.ease-out {\n transition-timing-function: cubic-bezier(0, 0, 0.2, 1);\n}\n\n.theme-photon, [data-theme=photon] {\n --twc-primaryText: 210 20% 98%;\n --twc-primary500: 238.70000000000005 83.5% 66.7%;\n --twc-primary600: 243.39999999999998 75.4% 58.6%;\n --twc-secondaryText: 220.89999999999998 39.3% 11%;\n --twc-secondary50: 225.89999999999998 100% 96.7%;\n --twc-secondary100: 226.5 100% 93.9%;\n}\n\n.theme-weekend, [data-theme=weekend] {\n --twc-primaryText: 210 20% 98%;\n --twc-primary500: 198.60000000000002 88.7% 48.4%;\n --twc-primary600: 200.39999999999998 98% 39.4%;\n --twc-secondaryText: 220.89999999999998 39.3% 11%;\n --twc-secondary50: 204 100% 97.1%;\n --twc-secondary100: 204 93.8% 93.7%;\n}\n\n.\\[overflow-wrap\\:anywhere\\] {\n overflow-wrap: anywhere;\n}\n\n.placeholder\\:text-gray-400::-moz-placeholder {\n --tw-text-opacity: 1;\n color: rgb(156, 163, 175, var(--tw-text-opacity));\n}\n\n.placeholder\\:text-gray-400::placeholder {\n --tw-text-opacity: 1;\n color: rgb(156, 163, 175, var(--tw-text-opacity));\n}\n\n.placeholder\\:text-red-300::-moz-placeholder {\n --tw-text-opacity: 1;\n color: rgb(252, 165, 165, var(--tw-text-opacity));\n}\n\n.placeholder\\:text-red-300::placeholder {\n --tw-text-opacity: 1;\n color: rgb(252, 165, 165, var(--tw-text-opacity));\n}\n\n.even\\:bg-gray-50:nth-child(even) {\n --tw-bg-opacity: 1;\n background-color: rgb(249, 250, 251, var(--tw-bg-opacity));\n}\n\n.hover\\:cursor-pointer:hover {\n cursor: pointer;\n}\n\n.hover\\:border-gray-300:hover {\n --tw-border-opacity: 1;\n border-color: rgb(209, 213, 219, var(--tw-border-opacity));\n}\n\n.hover\\:bg-blue-100:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(178, 221, 255, var(--tw-bg-opacity));\n}\n\n.hover\\:bg-blue-50:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(209, 233, 255, var(--tw-bg-opacity));\n}\n\n.hover\\:bg-blue-600:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(23, 92, 211, var(--tw-bg-opacity));\n}\n\n.hover\\:bg-blue-700:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(24, 73, 169, var(--tw-bg-opacity));\n}\n\n.hover\\:bg-gray-50:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(249, 250, 251, var(--tw-bg-opacity));\n}\n\n.hover\\:bg-photon-blue-dark:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(43, 108, 176, var(--tw-bg-opacity));\n}\n\n.hover\\:bg-red-600:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(220, 38, 38, var(--tw-bg-opacity));\n}\n\n.hover\\:text-amber-500:hover {\n --tw-text-opacity: 1;\n color: rgb(245, 158, 11, var(--tw-text-opacity));\n}\n\n.hover\\:text-blue-500:hover {\n --tw-text-opacity: 1;\n color: rgb(21, 112, 239, var(--tw-text-opacity));\n}\n\n.hover\\:text-gray-500:hover {\n --tw-text-opacity: 1;\n color: rgb(107, 114, 128, var(--tw-text-opacity));\n}\n\n.hover\\:text-gray-600:hover {\n --tw-text-opacity: 1;\n color: rgb(75, 85, 99, var(--tw-text-opacity));\n}\n\n.hover\\:text-gray-700:hover {\n --tw-text-opacity: 1;\n color: rgb(55, 65, 81, var(--tw-text-opacity));\n}\n\n.hover\\:text-gray-900:hover {\n --tw-text-opacity: 1;\n color: rgb(17, 24, 39, var(--tw-text-opacity));\n}\n\n.hover\\:text-red-500:hover {\n --tw-text-opacity: 1;\n color: rgb(239, 68, 68, var(--tw-text-opacity));\n}\n\n.hover\\:underline:hover {\n text-decoration-line: underline;\n}\n\n.hover\\:ring-gray-400:hover {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(156 163 175 / var(--tw-ring-opacity));\n}\n\n.focus\\:outline-none:focus {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n\n.focus\\:outline-0:focus {\n outline-width: 0px;\n}\n\n.focus\\:ring-1:focus {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));\n}\n\n.focus\\:ring-2:focus {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));\n}\n\n.focus\\:ring-inset:focus {\n --tw-ring-inset: inset;\n}\n\n.focus\\:ring-blue-300:focus {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(83 177 253 / var(--tw-ring-opacity));\n}\n\n.focus\\:ring-blue-500:focus {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(21 112 239 / var(--tw-ring-opacity));\n}\n\n.focus\\:ring-blue-600:focus {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(23 92 211 / var(--tw-ring-opacity));\n}\n\n.focus\\:ring-gray-300:focus {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(209 213 219 / var(--tw-ring-opacity));\n}\n\n.focus\\:ring-red-500:focus {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(239 68 68 / var(--tw-ring-opacity));\n}\n\n.focus\\:ring-sky-500\\/40:focus {\n --tw-ring-color: rgb(14 165 233 / 0.4);\n}\n\n.focus\\:ring-offset-2:focus {\n --tw-ring-offset-width: 2px;\n}\n\n.focus-visible\\:outline:focus-visible {\n outline-style: solid;\n}\n\n.focus-visible\\:outline-2:focus-visible {\n outline-width: 2px;\n}\n\n.focus-visible\\:outline-offset-2:focus-visible {\n outline-offset: 2px;\n}\n\n.active\\:bg-gray-100:active {\n --tw-bg-opacity: 1;\n background-color: rgb(243, 244, 246, var(--tw-bg-opacity));\n}\n\n.disabled\\:cursor-not-allowed:disabled {\n cursor: not-allowed;\n}\n\n.disabled\\:bg-gray-500:disabled {\n --tw-bg-opacity: 1;\n background-color: rgb(107, 114, 128, var(--tw-bg-opacity));\n}\n\n.disabled\\:opacity-50:disabled {\n opacity: 0.5;\n}\n\n.disabled\\:hover\\:bg-transparent:hover:disabled {\n background-color: transparent;\n}\n\n.disabled\\:hover\\:text-gray-700:hover:disabled {\n --tw-text-opacity: 1;\n color: rgb(55, 65, 81, var(--tw-text-opacity));\n}\n\n.group:hover .group-hover\\:bg-blue-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(178, 221, 255, var(--tw-bg-opacity));\n}\n\n.group:hover .group-hover\\:text-blue-600 {\n --tw-text-opacity: 1;\n color: rgb(23, 92, 211, var(--tw-text-opacity));\n}\n\n.group:hover .group-hover\\:text-blue-900 {\n --tw-text-opacity: 1;\n color: rgb(16, 42, 86, var(--tw-text-opacity));\n}\n\n.group:hover .group-hover\\:opacity-100 {\n opacity: 1;\n}\n\n@media (min-width: 475px) {\n .xs\\:mx-auto {\n margin-left: auto;\n margin-right: auto;\n }\n .xs\\:w-auto {\n width: auto;\n }\n .xs\\:w-fit {\n width: -moz-fit-content;\n width: fit-content;\n }\n .xs\\:flex-row {\n flex-direction: row;\n }\n .xs\\:flex-row-reverse {\n flex-direction: row-reverse;\n }\n .xs\\:justify-start {\n justify-content: flex-start;\n }\n .xs\\:text-base {\n font-size: 1rem;\n line-height: 1.5rem;\n }\n}\n@media (min-width: 640px) {\n .sm\\:-mx-6 {\n margin-left: -1.5rem;\n margin-right: -1.5rem;\n }\n .sm\\:my-8 {\n margin-top: 2rem;\n margin-bottom: 2rem;\n }\n .sm\\:mt-5 {\n margin-top: 1.25rem;\n }\n .sm\\:mt-6 {\n margin-top: 1.5rem;\n }\n .sm\\:block {\n display: block;\n }\n .sm\\:inline {\n display: inline;\n }\n .sm\\:grid {\n display: grid;\n }\n .sm\\:hidden {\n display: none;\n }\n .sm\\:h-12 {\n height: 3rem;\n }\n .sm\\:w-\\[600px\\] {\n width: 600px;\n }\n .sm\\:w-auto {\n width: auto;\n }\n .sm\\:max-w-lg {\n max-width: 32rem;\n }\n .sm\\:max-w-md {\n max-width: 28rem;\n }\n .sm\\:max-w-sm {\n max-width: 24rem;\n }\n .sm\\:grid-cols-2 {\n grid-template-columns: repeat(2, minmax(0, 1fr));\n }\n .sm\\:grid-cols-6 {\n grid-template-columns: repeat(6, minmax(0, 1fr));\n }\n .sm\\:flex-row {\n flex-direction: row;\n }\n .sm\\:items-center {\n align-items: center;\n }\n .sm\\:gap-2 {\n gap: 0.5rem;\n }\n .sm\\:gap-4 {\n gap: 1rem;\n }\n .sm\\:space-x-6 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-x-reverse: 0;\n margin-right: calc(1.5rem * var(--tw-space-x-reverse));\n margin-left: calc(1.5rem * (1 - var(--tw-space-x-reverse)));\n }\n .sm\\:p-0 {\n padding: 0px;\n }\n .sm\\:p-6 {\n padding: 1.5rem;\n }\n .sm\\:px-4 {\n padding-left: 1rem;\n padding-right: 1rem;\n }\n .sm\\:px-6 {\n padding-left: 1.5rem;\n padding-right: 1.5rem;\n }\n .sm\\:py-4 {\n padding-top: 1rem;\n padding-bottom: 1rem;\n }\n .sm\\:pr-6 {\n padding-right: 1.5rem;\n }\n .sm\\:pt-6 {\n padding-top: 1.5rem;\n }\n .sm\\:text-base {\n font-size: 1rem;\n line-height: 1.5rem;\n }\n .sm\\:text-sm {\n font-size: 0.875rem;\n line-height: 1.25rem;\n }\n .sm\\:leading-6 {\n line-height: 1.5rem;\n }\n}\n@media (min-width: 768px) {\n .md\\:\\!mt-8 {\n margin-top: 2rem !important;\n }\n .md\\:\\!block {\n display: block !important;\n }\n .md\\:flex {\n display: flex;\n }\n .md\\:\\!hidden {\n display: none !important;\n }\n .md\\:grid-cols-8 {\n grid-template-columns: repeat(8, minmax(0, 1fr));\n }\n .md\\:flex-row {\n flex-direction: row;\n }\n .md\\:items-center {\n align-items: center;\n }\n .md\\:gap-1 {\n gap: 0.25rem;\n }\n .md\\:space-x-8 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-x-reverse: 0;\n margin-right: calc(2rem * var(--tw-space-x-reverse));\n margin-left: calc(2rem * (1 - var(--tw-space-x-reverse)));\n }\n .md\\:px-4 {\n padding-left: 1rem;\n padding-right: 1rem;\n }\n .md\\:px-8 {\n padding-left: 2rem;\n padding-right: 2rem;\n }\n .md\\:py-3 {\n padding-top: 0.75rem;\n padding-bottom: 0.75rem;\n }\n .md\\:text-right {\n text-align: right;\n }\n .md\\:text-3xl {\n font-size: 1.875rem;\n line-height: 2.25rem;\n }\n .md\\:text-xl {\n font-size: 1.25rem;\n line-height: 1.75rem;\n }\n}\n@media (min-width: 1024px) {\n .lg\\:-mx-8 {\n margin-left: -2rem;\n margin-right: -2rem;\n }\n .lg\\:px-8 {\n padding-left: 2rem;\n padding-right: 2rem;\n }\n}\n@media (prefers-color-scheme: dark) {\n .dark\\:bg-gray-700 {\n --tw-bg-opacity: 1;\n background-color: rgb(55, 65, 81, var(--tw-bg-opacity));\n }\n .dark\\:text-gray-600 {\n --tw-text-opacity: 1;\n color: rgb(75, 85, 99, var(--tw-text-opacity));\n }\n}";
58604
58624
 
58605
58625
  var _tmpl$$q = /* @__PURE__ */ template$1(`<style>`), _tmpl$2$m = /* @__PURE__ */ template$1(`<button class="w-full disabled:bg-gray-500 bg-photon-blue hover:bg-blue-700 text-white h-10 px-4 rounded-lg font-sans hover:bg-photon-blue-dark transition ease-in-out delay-50">`);
58606
58626
  const Component$9 = (props) => {
@@ -59151,7 +59171,7 @@ const shoelaceLightStyles = "\n\n:host {}\n\n:root,\n:host,\n.sl-theme-light {\n
59151
59171
 
59152
59172
  const shoelaceDarkStyles = "\n\n:host {}\n\n:host,\n.sl-theme-dark {\n color-scheme: dark;\n --sl-color-gray-50: hsl(240 5.1% 15%);\n --sl-color-gray-100: hsl(240 5.7% 18.2%);\n --sl-color-gray-200: hsl(240 4.6% 22%);\n --sl-color-gray-300: hsl(240 5% 27.6%);\n --sl-color-gray-400: hsl(240 5% 35.5%);\n --sl-color-gray-500: hsl(240 3.7% 44%);\n --sl-color-gray-600: hsl(240 5.3% 58%);\n --sl-color-gray-700: hsl(240 5.6% 73%);\n --sl-color-gray-800: hsl(240 7.3% 84%);\n --sl-color-gray-900: hsl(240 9.1% 91.8%);\n --sl-color-gray-950: hsl(0 0% 95%);\n --sl-color-red-50: hsl(0 56% 23.9%);\n --sl-color-red-100: hsl(0.6 60% 33.9%);\n --sl-color-red-200: hsl(0.9 67.2% 37.1%);\n --sl-color-red-300: hsl(1.1 71.3% 43.7%);\n --sl-color-red-400: hsl(1 76% 52.5%);\n --sl-color-red-500: hsl(0.7 89.6% 57.2%);\n --sl-color-red-600: hsl(0 98.6% 67.9%);\n --sl-color-red-700: hsl(0 100% 72.3%);\n --sl-color-red-800: hsl(0 100% 85.6%);\n --sl-color-red-900: hsl(0 100% 90.3%);\n --sl-color-red-950: hsl(0 100% 95.9%);\n --sl-color-orange-50: hsl(15 64.2% 23.3%);\n --sl-color-orange-100: hsl(15.1 70.9% 31.1%);\n --sl-color-orange-200: hsl(15.3 75.7% 35.5%);\n --sl-color-orange-300: hsl(17.1 83.5% 42.7%);\n --sl-color-orange-400: hsl(20.1 88% 50.8%);\n --sl-color-orange-500: hsl(24.3 100% 50.5%);\n --sl-color-orange-600: hsl(27.2 100% 57.7%);\n --sl-color-orange-700: hsl(31.3 100% 68.7%);\n --sl-color-orange-800: hsl(33.8 100% 79.3%);\n --sl-color-orange-900: hsl(38.9 100% 87.7%);\n --sl-color-orange-950: hsl(46.2 100% 95%);\n --sl-color-amber-50: hsl(21.9 66.3% 21.1%);\n --sl-color-amber-100: hsl(21.5 73.6% 29.7%);\n --sl-color-amber-200: hsl(22.3 77.6% 33.3%);\n --sl-color-amber-300: hsl(25.4 84.2% 39.6%);\n --sl-color-amber-400: hsl(31.4 87.4% 46.7%);\n --sl-color-amber-500: hsl(37 96.6% 48.3%);\n --sl-color-amber-600: hsl(43.3 100% 53.4%);\n --sl-color-amber-700: hsl(46.5 100% 61.1%);\n --sl-color-amber-800: hsl(49.3 100% 73%);\n --sl-color-amber-900: hsl(51.8 100% 85%);\n --sl-color-amber-950: hsl(60 100% 94.6%);\n --sl-color-yellow-50: hsl(32.5 60% 18.2%);\n --sl-color-yellow-100: hsl(28.1 68.6% 29%);\n --sl-color-yellow-200: hsl(31.3 75.8% 30.8%);\n --sl-color-yellow-300: hsl(34.7 84.4% 35.3%);\n --sl-color-yellow-400: hsl(40.1 87.3% 43.3%);\n --sl-color-yellow-500: hsl(44.7 88% 46%);\n --sl-color-yellow-600: hsl(47.7 100% 50.9%);\n --sl-color-yellow-700: hsl(51.3 100% 59.9%);\n --sl-color-yellow-800: hsl(54.6 100% 73%);\n --sl-color-yellow-900: hsl(58.9 100% 84.2%);\n --sl-color-yellow-950: hsl(60 100% 94%);\n --sl-color-lime-50: hsl(86.5 54.4% 18%);\n --sl-color-lime-100: hsl(87.6 56.8% 23.3%);\n --sl-color-lime-200: hsl(85.8 63.2% 24.5%);\n --sl-color-lime-300: hsl(86.1 72% 29.4%);\n --sl-color-lime-400: hsl(85.5 76.8% 37.3%);\n --sl-color-lime-500: hsl(84.3 74.2% 42.1%);\n --sl-color-lime-600: hsl(82.8 81.5% 52.6%);\n --sl-color-lime-700: hsl(82 89.9% 64%);\n --sl-color-lime-800: hsl(80.9 97.9% 76.6%);\n --sl-color-lime-900: hsl(77.9 100% 85.8%);\n --sl-color-lime-950: hsl(69.5 100% 93.8%);\n --sl-color-green-50: hsl(144.3 53.6% 16%);\n --sl-color-green-100: hsl(143.2 55.4% 23.5%);\n --sl-color-green-200: hsl(141.5 58.2% 26.3%);\n --sl-color-green-300: hsl(140.8 64.2% 31.8%);\n --sl-color-green-400: hsl(140.3 68% 39.2%);\n --sl-color-green-500: hsl(141.1 64.9% 43%);\n --sl-color-green-600: hsl(141.6 72.4% 55.2%);\n --sl-color-green-700: hsl(141.7 82.7% 70.1%);\n --sl-color-green-800: hsl(141 90.9% 82.1%);\n --sl-color-green-900: hsl(142 100% 89.1%);\n --sl-color-green-950: hsl(144 100% 95.5%);\n --sl-color-emerald-50: hsl(164.3 75% 13.5%);\n --sl-color-emerald-100: hsl(163.5 72.6% 20.1%);\n --sl-color-emerald-200: hsl(162.1 73.7% 22.4%);\n --sl-color-emerald-300: hsl(161.3 77.3% 27.6%);\n --sl-color-emerald-400: hsl(159.6 77.1% 34.3%);\n --sl-color-emerald-500: hsl(159.1 73.5% 37.9%);\n --sl-color-emerald-600: hsl(157.8 66.8% 48.9%);\n --sl-color-emerald-700: hsl(156.2 76.1% 63.8%);\n --sl-color-emerald-800: hsl(152.4 84.4% 77.4%);\n --sl-color-emerald-900: hsl(149.3 100% 87%);\n --sl-color-emerald-950: hsl(158.6 100% 94.8%);\n --sl-color-teal-50: hsl(176.5 51.5% 15.4%);\n --sl-color-teal-100: hsl(175.9 54.7% 22.3%);\n --sl-color-teal-200: hsl(175.9 60.7% 23.9%);\n --sl-color-teal-300: hsl(174.5 67.3% 28.8%);\n --sl-color-teal-400: hsl(174.4 71.9% 34.9%);\n --sl-color-teal-500: hsl(173.1 71% 38.3%);\n --sl-color-teal-600: hsl(172.3 68.2% 48.1%);\n --sl-color-teal-700: hsl(170.5 81.3% 61.5%);\n --sl-color-teal-800: hsl(168.4 92.1% 75.2%);\n --sl-color-teal-900: hsl(168.3 100% 86%);\n --sl-color-teal-950: hsl(180 100% 95.5%);\n --sl-color-cyan-50: hsl(197.1 53.8% 20.3%);\n --sl-color-cyan-100: hsl(196.8 57.3% 27.2%);\n --sl-color-cyan-200: hsl(195.3 62.7% 29.4%);\n --sl-color-cyan-300: hsl(193.5 71.3% 34.1%);\n --sl-color-cyan-400: hsl(192.5 76.8% 40.6%);\n --sl-color-cyan-500: hsl(189.4 78.6% 42.6%);\n --sl-color-cyan-600: hsl(188.2 89.1% 51.7%);\n --sl-color-cyan-700: hsl(187 98.6% 66.2%);\n --sl-color-cyan-800: hsl(184.9 100% 78.3%);\n --sl-color-cyan-900: hsl(180 100% 86.6%);\n --sl-color-cyan-950: hsl(180 100% 94.8%);\n --sl-color-sky-50: hsl(203 63.8% 20.9%);\n --sl-color-sky-100: hsl(203.4 70.4% 28%);\n --sl-color-sky-200: hsl(202.7 75.8% 30.8%);\n --sl-color-sky-300: hsl(203.1 80.4% 36.1%);\n --sl-color-sky-400: hsl(202.1 80.5% 44.3%);\n --sl-color-sky-500: hsl(199.7 85.9% 47.7%);\n --sl-color-sky-600: hsl(198.7 97.9% 57.2%);\n --sl-color-sky-700: hsl(198.7 100% 70.5%);\n --sl-color-sky-800: hsl(198.8 100% 82.5%);\n --sl-color-sky-900: hsl(198.5 100% 89.9%);\n --sl-color-sky-950: hsl(186 100% 95.5%);\n --sl-color-blue-50: hsl(227.1 49.5% 22.7%);\n --sl-color-blue-100: hsl(225.8 58.9% 36.8%);\n --sl-color-blue-200: hsl(227.7 64.4% 42.9%);\n --sl-color-blue-300: hsl(226.1 72.7% 51.2%);\n --sl-color-blue-400: hsl(222.6 86.5% 56.3%);\n --sl-color-blue-500: hsl(217.8 95.8% 57.4%);\n --sl-color-blue-600: hsl(213.3 100% 65%);\n --sl-color-blue-700: hsl(210.9 100% 74.8%);\n --sl-color-blue-800: hsl(211.5 100% 83.4%);\n --sl-color-blue-900: hsl(211 100% 88.9%);\n --sl-color-blue-950: hsl(201.8 100% 95.3%);\n --sl-color-indigo-50: hsl(243.5 40.8% 27%);\n --sl-color-indigo-100: hsl(242.9 45.7% 37.6%);\n --sl-color-indigo-200: hsl(244.7 52.7% 43.1%);\n --sl-color-indigo-300: hsl(245.3 60.5% 52.4%);\n --sl-color-indigo-400: hsl(244.1 79.2% 60.4%);\n --sl-color-indigo-500: hsl(239.6 88.7% 63.8%);\n --sl-color-indigo-600: hsl(234.5 96.7% 70.9%);\n --sl-color-indigo-700: hsl(229.4 100% 78.3%);\n --sl-color-indigo-800: hsl(227.1 100% 85%);\n --sl-color-indigo-900: hsl(223.8 100% 89.9%);\n --sl-color-indigo-950: hsl(220 100% 95.1%);\n --sl-color-violet-50: hsl(265.1 57.3% 25.4%);\n --sl-color-violet-100: hsl(263.5 63.8% 39.4%);\n --sl-color-violet-200: hsl(263.4 66.2% 44.1%);\n --sl-color-violet-300: hsl(263.7 72.8% 52.4%);\n --sl-color-violet-400: hsl(262.5 87.3% 59.8%);\n --sl-color-violet-500: hsl(258.3 95.1% 63.2%);\n --sl-color-violet-600: hsl(255.1 100% 67.2%);\n --sl-color-violet-700: hsl(253 100% 81.5%);\n --sl-color-violet-800: hsl(251.7 100% 87.9%);\n --sl-color-violet-900: hsl(254.1 100% 91.7%);\n --sl-color-violet-950: hsl(257.1 100% 96.1%);\n --sl-color-purple-50: hsl(276 54.3% 20.5%);\n --sl-color-purple-100: hsl(273.6 61.8% 35.4%);\n --sl-color-purple-200: hsl(272.9 64% 41.4%);\n --sl-color-purple-300: hsl(271.9 68.1% 49.2%);\n --sl-color-purple-400: hsl(271.5 85.1% 57.8%);\n --sl-color-purple-500: hsl(270.7 96.4% 62.1%);\n --sl-color-purple-600: hsl(270.5 100% 71.9%);\n --sl-color-purple-700: hsl(270.9 100% 81.3%);\n --sl-color-purple-800: hsl(272.4 100% 87.7%);\n --sl-color-purple-900: hsl(276.7 100% 91.5%);\n --sl-color-purple-950: hsl(300 100% 96.5%);\n --sl-color-fuchsia-50: hsl(297.1 51.2% 18.6%);\n --sl-color-fuchsia-100: hsl(296.7 59.5% 31.5%);\n --sl-color-fuchsia-200: hsl(295.4 65.4% 35.1%);\n --sl-color-fuchsia-300: hsl(294.6 67.4% 42.2%);\n --sl-color-fuchsia-400: hsl(293.3 68.7% 51.2%);\n --sl-color-fuchsia-500: hsl(292.1 88.4% 57.7%);\n --sl-color-fuchsia-600: hsl(292 98.5% 59.5%);\n --sl-color-fuchsia-700: hsl(292.4 100% 79.5%);\n --sl-color-fuchsia-800: hsl(292.9 100% 86.8%);\n --sl-color-fuchsia-900: hsl(300 100% 91.5%);\n --sl-color-fuchsia-950: hsl(300 100% 96.3%);\n --sl-color-pink-50: hsl(336.2 59.6% 20%);\n --sl-color-pink-100: hsl(336.8 63.9% 34%);\n --sl-color-pink-200: hsl(336.8 68.7% 37.6%);\n --sl-color-pink-300: hsl(336.1 71.8% 44.5%);\n --sl-color-pink-400: hsl(333.9 74.9% 53.1%);\n --sl-color-pink-500: hsl(330.7 86.3% 57.7%);\n --sl-color-pink-600: hsl(328.6 91.5% 67.2%);\n --sl-color-pink-700: hsl(327.4 97.6% 78.7%);\n --sl-color-pink-800: hsl(325.1 100% 86.6%);\n --sl-color-pink-900: hsl(322.1 100% 91.3%);\n --sl-color-pink-950: hsl(315 100% 95.9%);\n --sl-color-rose-50: hsl(342.3 62.9% 21.5%);\n --sl-color-rose-100: hsl(342.8 68.9% 34.2%);\n --sl-color-rose-200: hsl(344.8 72.6% 37.3%);\n --sl-color-rose-300: hsl(346.9 75.8% 43.7%);\n --sl-color-rose-400: hsl(348.2 80.1% 52.7%);\n --sl-color-rose-500: hsl(350.4 94.8% 57.5%);\n --sl-color-rose-600: hsl(351.2 100% 58.1%);\n --sl-color-rose-700: hsl(352.3 100% 78.1%);\n --sl-color-rose-800: hsl(352 100% 86.2%);\n --sl-color-rose-900: hsl(354.5 100% 90.7%);\n --sl-color-rose-950: hsl(353.3 100% 95.7%);\n --sl-color-primary-50: var(--sl-color-sky-50);\n --sl-color-primary-100: var(--sl-color-sky-100);\n --sl-color-primary-200: var(--sl-color-sky-200);\n --sl-color-primary-300: var(--sl-color-sky-300);\n --sl-color-primary-400: var(--sl-color-sky-400);\n --sl-color-primary-500: var(--sl-color-sky-500);\n --sl-color-primary-600: var(--sl-color-sky-600);\n --sl-color-primary-700: var(--sl-color-sky-700);\n --sl-color-primary-800: var(--sl-color-sky-800);\n --sl-color-primary-900: var(--sl-color-sky-900);\n --sl-color-primary-950: var(--sl-color-sky-950);\n --sl-color-success-50: var(--sl-color-green-50);\n --sl-color-success-100: var(--sl-color-green-100);\n --sl-color-success-200: var(--sl-color-green-200);\n --sl-color-success-300: var(--sl-color-green-300);\n --sl-color-success-400: var(--sl-color-green-400);\n --sl-color-success-500: var(--sl-color-green-500);\n --sl-color-success-600: var(--sl-color-green-600);\n --sl-color-success-700: var(--sl-color-green-700);\n --sl-color-success-800: var(--sl-color-green-800);\n --sl-color-success-900: var(--sl-color-green-900);\n --sl-color-success-950: var(--sl-color-green-950);\n --sl-color-warning-50: var(--sl-color-amber-50);\n --sl-color-warning-100: var(--sl-color-amber-100);\n --sl-color-warning-200: var(--sl-color-amber-200);\n --sl-color-warning-300: var(--sl-color-amber-300);\n --sl-color-warning-400: var(--sl-color-amber-400);\n --sl-color-warning-500: var(--sl-color-amber-500);\n --sl-color-warning-600: var(--sl-color-amber-600);\n --sl-color-warning-700: var(--sl-color-amber-700);\n --sl-color-warning-800: var(--sl-color-amber-800);\n --sl-color-warning-900: var(--sl-color-amber-900);\n --sl-color-warning-950: var(--sl-color-amber-950);\n --sl-color-danger-50: var(--sl-color-red-50);\n --sl-color-danger-100: var(--sl-color-red-100);\n --sl-color-danger-200: var(--sl-color-red-200);\n --sl-color-danger-300: var(--sl-color-red-300);\n --sl-color-danger-400: var(--sl-color-red-400);\n --sl-color-danger-500: var(--sl-color-red-500);\n --sl-color-danger-600: var(--sl-color-red-600);\n --sl-color-danger-700: var(--sl-color-red-700);\n --sl-color-danger-800: var(--sl-color-red-800);\n --sl-color-danger-900: var(--sl-color-red-900);\n --sl-color-danger-950: var(--sl-color-red-950);\n --sl-color-neutral-50: var(--sl-color-gray-50);\n --sl-color-neutral-100: var(--sl-color-gray-100);\n --sl-color-neutral-200: var(--sl-color-gray-200);\n --sl-color-neutral-300: var(--sl-color-gray-300);\n --sl-color-neutral-400: var(--sl-color-gray-400);\n --sl-color-neutral-500: var(--sl-color-gray-500);\n --sl-color-neutral-600: var(--sl-color-gray-600);\n --sl-color-neutral-700: var(--sl-color-gray-700);\n --sl-color-neutral-800: var(--sl-color-gray-800);\n --sl-color-neutral-900: var(--sl-color-gray-900);\n --sl-color-neutral-950: var(--sl-color-gray-950);\n --sl-color-neutral-0: hsl(240, 5.9%, 11%);\n --sl-color-neutral-1000: hsl(0, 0%, 100%);\n --sl-border-radius-small: 0.1875rem;\n --sl-border-radius-medium: 0.25rem;\n --sl-border-radius-large: 0.5rem;\n --sl-border-radius-x-large: 1rem;\n --sl-border-radius-circle: 50%;\n --sl-border-radius-pill: 9999px;\n --sl-shadow-x-small: 0 1px 2px rgb(0 0 0 / 18%);\n --sl-shadow-small: 0 1px 2px rgb(0 0 0 / 24%);\n --sl-shadow-medium: 0 2px 4px rgb(0 0 0 / 24%);\n --sl-shadow-large: 0 2px 8px rgb(0 0 0 / 24%);\n --sl-shadow-x-large: 0 4px 16px rgb(0 0 0 / 24%);\n --sl-spacing-3x-small: 0.125rem;\n --sl-spacing-2x-small: 0.25rem;\n --sl-spacing-x-small: 0.5rem;\n --sl-spacing-small: 0.75rem;\n --sl-spacing-medium: 1rem;\n --sl-spacing-large: 1.25rem;\n --sl-spacing-x-large: 1.75rem;\n --sl-spacing-2x-large: 2.25rem;\n --sl-spacing-3x-large: 3rem;\n --sl-spacing-4x-large: 4.5rem;\n --sl-transition-x-slow: 1000ms;\n --sl-transition-slow: 500ms;\n --sl-transition-medium: 250ms;\n --sl-transition-fast: 150ms;\n --sl-transition-x-fast: 50ms;\n --sl-font-mono: SFMono-Regular, Consolas, \"Liberation Mono\", Menlo, monospace;\n --sl-font-sans: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto,\n Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\",\n \"Segoe UI Symbol\";\n --sl-font-serif: Georgia, \"Times New Roman\", serif;\n --sl-font-size-2x-small: 0.625rem;\n --sl-font-size-x-small: 0.75rem;\n --sl-font-size-small: 0.875rem;\n --sl-font-size-medium: 1rem;\n --sl-font-size-large: 1.25rem;\n --sl-font-size-x-large: 1.5rem;\n --sl-font-size-2x-large: 2.25rem;\n --sl-font-size-3x-large: 3rem;\n --sl-font-size-4x-large: 4.5rem;\n --sl-font-weight-light: 300;\n --sl-font-weight-normal: 400;\n --sl-font-weight-semibold: 500;\n --sl-font-weight-bold: 700;\n --sl-letter-spacing-denser: -0.03em;\n --sl-letter-spacing-dense: -0.015em;\n --sl-letter-spacing-normal: normal;\n --sl-letter-spacing-loose: 0.075em;\n --sl-letter-spacing-looser: 0.15em;\n --sl-line-height-denser: 1;\n --sl-line-height-dense: 1.4;\n --sl-line-height-normal: 1.8;\n --sl-line-height-loose: 2.2;\n --sl-line-height-looser: 2.6;\n --sl-focus-ring-color: var(--sl-color-primary-700);\n --sl-focus-ring-style: solid;\n --sl-focus-ring-width: 3px;\n --sl-focus-ring: var(--sl-focus-ring-style) var(--sl-focus-ring-width)\n var(--sl-focus-ring-color);\n --sl-focus-ring-offset: 1px;\n --sl-button-font-size-small: var(--sl-font-size-x-small);\n --sl-button-font-size-medium: var(--sl-font-size-small);\n --sl-button-font-size-large: var(--sl-font-size-medium);\n --sl-input-height-small: 1.875rem;\n --sl-input-height-medium: 2.5rem;\n --sl-input-height-large: 3.125rem;\n --sl-input-background-color: var(--sl-color-neutral-0);\n --sl-input-background-color-hover: var(--sl-input-background-color);\n --sl-input-background-color-focus: var(--sl-input-background-color);\n --sl-input-background-color-disabled: var(--sl-color-neutral-100);\n --sl-input-border-color: var(--sl-color-neutral-400);\n --sl-input-border-color-hover: var(--sl-color-neutral-500);\n --sl-input-border-color-focus: var(--sl-color-primary-600);\n --sl-input-border-color-disabled: var(--sl-color-neutral-400);\n --sl-input-border-width: 1px;\n --sl-input-required-content: \"*\";\n --sl-input-required-content-offset: -2px;\n --sl-input-required-content-color: var(--sl-input-label-color);\n --sl-input-border-radius-small: var(--sl-border-radius-medium);\n --sl-input-border-radius-medium: var(--sl-border-radius-medium);\n --sl-input-border-radius-large: var(--sl-border-radius-medium);\n --sl-input-font-family: var(--sl-font-sans);\n --sl-input-font-weight: var(--sl-font-weight-normal);\n --sl-input-font-size-small: var(--sl-font-size-small);\n --sl-input-font-size-medium: var(--sl-font-size-medium);\n --sl-input-font-size-large: var(--sl-font-size-large);\n --sl-input-letter-spacing: var(--sl-letter-spacing-normal);\n --sl-input-color: var(--sl-color-neutral-700);\n --sl-input-color-hover: var(--sl-color-neutral-700);\n --sl-input-color-focus: var(--sl-color-neutral-700);\n --sl-input-color-disabled: var(--sl-color-neutral-900);\n --sl-input-icon-color: var(--sl-color-neutral-500);\n --sl-input-icon-color-hover: var(--sl-color-neutral-600);\n --sl-input-icon-color-focus: var(--sl-color-neutral-600);\n --sl-input-placeholder-color: var(--sl-color-neutral-500);\n --sl-input-placeholder-color-disabled: var(--sl-color-neutral-600);\n --sl-input-spacing-small: var(--sl-spacing-small);\n --sl-input-spacing-medium: var(--sl-spacing-medium);\n --sl-input-spacing-large: var(--sl-spacing-large);\n --sl-input-focus-ring-color: hsl(198.6 88.7% 48.4% / 40%);\n --sl-input-focus-ring-offset: 0;\n --sl-input-filled-background-color: var(--sl-color-neutral-100);\n --sl-input-filled-background-color-hover: var(--sl-color-neutral-100);\n --sl-input-filled-background-color-focus: var(--sl-color-neutral-100);\n --sl-input-filled-background-color-disabled: var(--sl-color-neutral-100);\n --sl-input-filled-color: var(--sl-color-neutral-800);\n --sl-input-filled-color-hover: var(--sl-color-neutral-800);\n --sl-input-filled-color-focus: var(--sl-color-neutral-700);\n --sl-input-filled-color-disabled: var(--sl-color-neutral-800);\n --sl-input-label-font-size-small: var(--sl-font-size-small);\n --sl-input-label-font-size-medium: var(--sl-font-size-medium);\n --sl-input-label-font-size-large: var(--sl-font-size-large);\n --sl-input-label-color: inherit;\n --sl-input-help-text-font-size-small: var(--sl-font-size-x-small);\n --sl-input-help-text-font-size-medium: var(--sl-font-size-small);\n --sl-input-help-text-font-size-large: var(--sl-font-size-medium);\n --sl-input-help-text-color: var(--sl-color-neutral-600);\n --sl-toggle-size-small: 0.875rem;\n --sl-toggle-size-medium: 1.125rem;\n --sl-toggle-size-large: 1.375rem;\n --sl-overlay-background-color: hsl(0 0% 0% / 43%);\n --sl-panel-background-color: var(--sl-color-neutral-50);\n --sl-panel-border-color: var(--sl-color-neutral-200);\n --sl-panel-border-width: 1px;\n --sl-tooltip-border-radius: var(--sl-border-radius-medium);\n --sl-tooltip-background-color: var(--sl-color-neutral-800);\n --sl-tooltip-color: var(--sl-color-neutral-0);\n --sl-tooltip-font-family: var(--sl-font-sans);\n --sl-tooltip-font-weight: var(--sl-font-weight-normal);\n --sl-tooltip-font-size: var(--sl-font-size-small);\n --sl-tooltip-line-height: var(--sl-line-height-dense);\n --sl-tooltip-padding: var(--sl-spacing-2x-small) var(--sl-spacing-x-small);\n --sl-tooltip-arrow-size: 6px;\n --sl-z-index-drawer: 700;\n --sl-z-index-dialog: 800;\n --sl-z-index-dropdown: 900;\n --sl-z-index-toast: 950;\n --sl-z-index-tooltip: 1000;\n}\n\n@supports (scrollbar-gutter: stable) {\n .sl-scroll-lock {\n scrollbar-gutter: var(--sl-scroll-lock-gutter) !important;\n }\n .sl-scroll-lock body {\n overflow: hidden !important;\n }\n}\n@supports not (scrollbar-gutter: stable) {\n .sl-scroll-lock body {\n padding-right: var(--sl-scroll-lock-size) !important;\n overflow: hidden !important;\n }\n}\n.sl-toast-stack {\n position: fixed;\n top: 0;\n inset-inline-end: 0;\n z-index: var(--sl-z-index-toast);\n width: 28rem;\n max-width: 100%;\n max-height: 100%;\n overflow: auto;\n}\n\n.sl-toast-stack sl-alert {\n margin: var(--sl-spacing-medium);\n}\n\n.sl-toast-stack sl-alert::part(base) {\n box-shadow: var(--sl-shadow-large);\n}";
59153
59173
 
59154
- var _tmpl$$o = /* @__PURE__ */ template$1(`<style>`), _tmpl$2$k = /* @__PURE__ */ template$1(`<slot>`), _tmpl$3$f = /* @__PURE__ */ template$1(`<photon-login>`, true, false, false), _tmpl$4$d = /* @__PURE__ */ template$1(`<div class="w-full flex justify-center"><sl-spinner>`, true, false, false);
59174
+ var _tmpl$$o = /* @__PURE__ */ template$1(`<style>`), _tmpl$2$k = /* @__PURE__ */ template$1(`<slot>`), _tmpl$3$f = /* @__PURE__ */ template$1(`<photon-login>`, true, false, false), _tmpl$4$c = /* @__PURE__ */ template$1(`<div class="w-full flex justify-center"><sl-spinner>`, true, false, false);
59155
59175
  setBasePath("https://cdn.jsdelivr.net/npm/@shoelace-style/shoelace@2.4.0/dist/");
59156
59176
  const Component$7 = (props) => {
59157
59177
  const client = usePhoton();
@@ -59215,7 +59235,7 @@ const Component$7 = (props) => {
59215
59235
  return client && isLoading() && !props.hideLoader;
59216
59236
  },
59217
59237
  get children() {
59218
- var _el$6 = _tmpl$4$d(), _el$7 = _el$6.firstChild;
59238
+ var _el$6 = _tmpl$4$c(), _el$7 = _el$6.firstChild;
59219
59239
  _el$7.style.setProperty("font-size", "3rem");
59220
59240
  _el$7._$owner = getOwner();
59221
59241
  return _el$6;
@@ -66692,7 +66712,7 @@ const createPatientStore = () => {
66692
66712
  };
66693
66713
  const PatientStore = createPatientStore();
66694
66714
 
66695
- var _tmpl$$l = /* @__PURE__ */ template$1(`<div class="flex items-center justify-between">`), _tmpl$2$i = /* @__PURE__ */ template$1(`<div><photon-patient-dialog>`, true, false, false), _tmpl$3$e = /* @__PURE__ */ template$1(`<div><photon-add-medication-history-dialog>`, true, false, false), _tmpl$4$c = /* @__PURE__ */ template$1(`<div class="flex flex-col gap-8">`);
66715
+ var _tmpl$$l = /* @__PURE__ */ template$1(`<div class="flex items-center justify-between">`), _tmpl$2$i = /* @__PURE__ */ template$1(`<div><photon-patient-dialog>`, true, false, false), _tmpl$3$e = /* @__PURE__ */ template$1(`<div><photon-add-medication-history-dialog>`, true, false, false), _tmpl$4$b = /* @__PURE__ */ template$1(`<div class="flex flex-col gap-8">`);
66696
66716
  const hasUsableAddress$2 = (address) => {
66697
66717
  if (!address) {
66698
66718
  return false;
@@ -66792,7 +66812,7 @@ const PatientCard = (props) => {
66792
66812
  return hasPreferredPharmacy() && !hasAddress();
66793
66813
  });
66794
66814
  return (() => {
66795
- var _el$ = _tmpl$4$c();
66815
+ var _el$ = _tmpl$4$b();
66796
66816
  insert$1(_el$, createComponent(Show, {
66797
66817
  get when() {
66798
66818
  return !props?.patientId;
@@ -67099,8 +67119,6 @@ const clearForm = (actions, overrides) => {
67099
67119
  });
67100
67120
  };
67101
67121
 
67102
- const formatPatientWeight = (weight, weightUnit = "lb") => `Patient weight: ${weight} ${weightUnit}`;
67103
-
67104
67122
  var PrescriptionState = /* @__PURE__ */ ((PrescriptionState2) => {
67105
67123
  PrescriptionState2["Draft"] = "DRAFT";
67106
67124
  PrescriptionState2["Active"] = "ACTIVE";
@@ -73123,7 +73141,7 @@ const repopulateForm = (actions, draft) => {
73123
73141
  }
73124
73142
  };
73125
73143
 
73126
- var _tmpl$$i = /* @__PURE__ */ template$1(`<div class="flex flex-col gap-4">`), _tmpl$2$f = /* @__PURE__ */ template$1(`<div class=space-y-3>`), _tmpl$3$c = /* @__PURE__ */ template$1(`<photon-dialog label="Discard in-progress prescription?"confirm-text="Yes, discard"cancel-text="Go back"><p class="font-sans text-lg xs:text-base">You are editing a prescription that has not been added to your drafts. Your in-progress prescription will be discarded if you edit another prescription.`, true, false, false), _tmpl$4$b = /* @__PURE__ */ template$1(`<photon-dialog label="Delete pending prescription?"confirm-text="Yes, Delete"cancel-text="No, Cancel"><p class="font-sans text-lg xs:text-base">Deleting this prescription will remove it from your draft prescriptions. This action cannot be undone.`, true, false, false);
73144
+ var _tmpl$$i = /* @__PURE__ */ template$1(`<div class="flex flex-col gap-4">`), _tmpl$2$f = /* @__PURE__ */ template$1(`<div class=space-y-3>`), _tmpl$3$c = /* @__PURE__ */ template$1(`<photon-dialog label="Discard in-progress prescription?"confirm-text="Yes, discard"cancel-text="Go back"><p class="font-sans text-lg xs:text-base">You are editing a prescription that has not been added to your drafts. Your in-progress prescription will be discarded if you edit another prescription.`, true, false, false), _tmpl$4$a = /* @__PURE__ */ template$1(`<photon-dialog label="Delete pending prescription?"confirm-text="Yes, Delete"cancel-text="No, Cancel"><p class="font-sans text-lg xs:text-base">Deleting this prescription will remove it from your draft prescriptions. This action cannot be undone.`, true, false, false);
73127
73145
  function getPrescriptionRoutingConstraints(routingConstraints) {
73128
73146
  const map = /* @__PURE__ */ new Map();
73129
73147
  for (const constraint of routingConstraints) {
@@ -73314,7 +73332,7 @@ const DraftPrescriptions = (props) => {
73314
73332
  createRenderEffect(() => _el$3.open = editDialogOpen());
73315
73333
  return _el$3;
73316
73334
  })(), (() => {
73317
- var _el$4 = _tmpl$4$b();
73335
+ var _el$4 = _tmpl$4$a();
73318
73336
  addEventListener$1(_el$4, "photon-dialog-alt", handleDeleteCancel);
73319
73337
  addEventListener$1(_el$4, "photon-dialog-canceled", handleDeleteCancel);
73320
73338
  addEventListener$1(_el$4, "photon-dialog-confirmed", handleDeleteConfirm);
@@ -73347,7 +73365,7 @@ function toFormData(coverageOption) {
73347
73365
  }
73348
73366
 
73349
73367
  var _tmpl$$h = /* @__PURE__ */ template$1(`<div class="flex flex-col mt-4 gap-y-2">`), _tmpl$2$e = /* @__PURE__ */ template$1(`<div class="flex flex-col gap-1"><photon-medication-search label="Search for Treatment"></photon-medication-search><div class=mt-2></div><div class="sm:grid sm:grid-cols-2 sm:gap-4 mt-2"><div class="flex items-start gap-1"><div class=flex-1></div></div></div><div class="sm:grid sm:grid-cols-2 sm:gap-4"></div><div class="w-full flex flex-col justify-end mt-6 gap-2 xs:flex-row-reverse xs:justify-start">`, true, false, false);
73350
- const validators = {
73368
+ const validators$1 = {
73351
73369
  treatment: message(record(string(), any()), "Please select a treatment"),
73352
73370
  dispenseQuantity: message(min$1(number(), 0, {
73353
73371
  exclusive: true
@@ -73372,7 +73390,7 @@ const DraftPrescriptionForm = (props) => {
73372
73390
  const [searchText, setSearchText] = createSignal("");
73373
73391
  const [isLoading, setIsLoading] = createSignal(false);
73374
73392
  onMount(() => {
73375
- for (const [k, v] of Object.entries(validators)) {
73393
+ for (const [k, v] of Object.entries(validators$1)) {
73376
73394
  props.actions.registerValidator({
73377
73395
  key: k,
73378
73396
  validator: v
@@ -73411,7 +73429,7 @@ const DraftPrescriptionForm = (props) => {
73411
73429
  };
73412
73430
  const handleAddPrescription = async () => {
73413
73431
  setIsLoading(true);
73414
- const keys = Object.keys(validators);
73432
+ const keys = Object.keys(validators$1);
73415
73433
  props.actions.validate(keys);
73416
73434
  const errorsPresent = props.actions.hasErrors(keys);
73417
73435
  if (errorsPresent) {
@@ -73856,7 +73874,7 @@ const DraftPrescriptionForm = (props) => {
73856
73874
  },
73857
73875
  variant: "primary",
73858
73876
  color: "blue",
73859
- children: "Add to drafts"
73877
+ children: "Add prescription"
73860
73878
  }), null);
73861
73879
  insert$1(_el$9, createComponent(Show, {
73862
73880
  get when() {
@@ -76435,7 +76453,7 @@ const PhotonTooltip = (p) => {
76435
76453
  })()];
76436
76454
  };
76437
76455
 
76438
- var _tmpl$$f = /* @__PURE__ */ template$1(`<div class="flex items-center space-x-2 text-slate-500">`), _tmpl$2$c = /* @__PURE__ */ template$1(`<div class="w-full flex justify-center">`), _tmpl$3$b = /* @__PURE__ */ template$1(`<div class=mt-8>`), _tmpl$4$a = /* @__PURE__ */ template$1(`<div>`);
76456
+ var _tmpl$$f = /* @__PURE__ */ template$1(`<div class="flex items-center space-x-2 text-slate-500">`), _tmpl$2$c = /* @__PURE__ */ template$1(`<div class="w-full flex justify-center">`), _tmpl$3$b = /* @__PURE__ */ template$1(`<div class=mt-8>`), _tmpl$4$9 = /* @__PURE__ */ template$1(`<div>`);
76439
76457
  const PrescriptionCard = (props) => {
76440
76458
  let prescriptionFormRef;
76441
76459
  let prescriptionsCardRef;
@@ -76479,7 +76497,7 @@ const PrescriptionCard = (props) => {
76479
76497
  }), null);
76480
76498
  return _el$;
76481
76499
  })(), (() => {
76482
- var _el$2 = _tmpl$4$a();
76500
+ var _el$2 = _tmpl$4$9();
76483
76501
  insert$1(_el$2, createComponent(Show, {
76484
76502
  get when() {
76485
76503
  return isLoadingPrefills();
@@ -76594,7 +76612,7 @@ const PrescriptionCard = (props) => {
76594
76612
  });
76595
76613
  };
76596
76614
 
76597
- var _tmpl$$e = /* @__PURE__ */ template$1(`<div class="w-full flex justify-center">`), _tmpl$2$b = /* @__PURE__ */ template$1(`<div class="m-3 gap-4">`), _tmpl$3$a = /* @__PURE__ */ template$1(`<div class="flex flex-row justify-end">`), _tmpl$4$9 = /* @__PURE__ */ template$1(`<div><div><div class="flex flex-col gap-8">`), _tmpl$5$7 = /* @__PURE__ */ template$1(`<div>No errors...`);
76615
+ var _tmpl$$e = /* @__PURE__ */ template$1(`<div class="w-full flex justify-center">`), _tmpl$2$b = /* @__PURE__ */ template$1(`<div class="m-3 gap-4">`), _tmpl$3$a = /* @__PURE__ */ template$1(`<div class="flex flex-row justify-end">`), _tmpl$4$8 = /* @__PURE__ */ template$1(`<div><div><div class="flex flex-col gap-8">`), _tmpl$5$8 = /* @__PURE__ */ template$1(`<div>No errors...`);
76598
76616
  const hasUsableAddress$1 = (address) => {
76599
76617
  if (!address) {
76600
76618
  return false;
@@ -76636,7 +76654,8 @@ function PrescribeWorkflow(props) {
76636
76654
  draftPrescriptions,
76637
76655
  prescriptionIds,
76638
76656
  tryUpdatePrescriptionStates,
76639
- isLoadingPrefills
76657
+ isLoadingPrefills,
76658
+ rxNotesPrefill
76640
76659
  } = useDraftPrescriptions();
76641
76660
  const pharmacySelectionContext = usePharmacySelectionContext();
76642
76661
  const {
@@ -76671,15 +76690,6 @@ function PrescribeWorkflow(props) {
76671
76690
  return fulfillmentNeedsAddress$1(pharmacySelectionContext.fulfillmentType()) && !hasPatientAddress();
76672
76691
  });
76673
76692
  const [isScreeningAlertWarningOpen, setIsScreeningAlertWarningOpen] = createSignal(false);
76674
- let prefillNotes = "";
76675
- if (props.additionalNotes) {
76676
- prefillNotes = `${props.additionalNotes}
76677
-
76678
- `;
76679
- }
76680
- if (props.weight) {
76681
- prefillNotes = `${prefillNotes}${formatPatientWeight(props.weight, props.weightUnit)}`;
76682
- }
76683
76693
  onMount(async () => {
76684
76694
  if (props.address) {
76685
76695
  props.formActions.updateFormValue({
@@ -76689,7 +76699,7 @@ function PrescribeWorkflow(props) {
76689
76699
  }
76690
76700
  ref.addEventListener("photon-ticket-created-duplicate", () => {
76691
76701
  clearForm(props.formActions, {
76692
- notes: prefillNotes
76702
+ notes: rxNotesPrefill()
76693
76703
  });
76694
76704
  pharmacySelectionContext.setFulfillmentType(void 0);
76695
76705
  pharmacySelectionContext.setPharmacyId(void 0);
@@ -76966,7 +76976,7 @@ function PrescribeWorkflow(props) {
76966
76976
  return !props.patientId || props.patientId === props.formStore.patient?.value?.id || props.patientId === props.formStore.patient?.value?.externalId;
76967
76977
  });
76968
76978
  return (() => {
76969
- var _el$ = _tmpl$4$9(), _el$2 = _el$.firstChild, _el$3 = _el$2.firstChild;
76979
+ var _el$ = _tmpl$4$8(), _el$2 = _el$.firstChild, _el$3 = _el$2.firstChild;
76970
76980
  var _ref$ = ref;
76971
76981
  typeof _ref$ === "function" ? use$1(_ref$, _el$) : ref = _el$;
76972
76982
  insert$1(_el$, createComponent(Show, {
@@ -77121,7 +77131,9 @@ function PrescribeWorkflow(props) {
77121
77131
  get weightUnit() {
77122
77132
  return props.weightUnit;
77123
77133
  },
77124
- prefillNotes,
77134
+ get prefillNotes() {
77135
+ return rxNotesPrefill();
77136
+ },
77125
77137
  screenDraftedPrescriptions,
77126
77138
  get screeningAlerts() {
77127
77139
  return screeningAlerts();
@@ -77202,7 +77214,7 @@ function PrescribeWorkflow(props) {
77202
77214
  }
77203
77215
  }), createComponent(Show, {
77204
77216
  get when() {
77205
- return !props.hideSubmit;
77217
+ return memo$2(() => !!!props.hideSubmit)() && draftPrescriptions().length > 0;
77206
77218
  },
77207
77219
  get children() {
77208
77220
  return [createComponent(Show, {
@@ -77216,7 +77228,7 @@ function PrescribeWorkflow(props) {
77216
77228
  return errors();
77217
77229
  },
77218
77230
  get fallback() {
77219
- return _tmpl$5$7();
77231
+ return _tmpl$5$8();
77220
77232
  },
77221
77233
  children: ({
77222
77234
  key,
@@ -78072,6 +78084,15 @@ const PhotonPrescribeWorkflowComponent = (props) => {
78072
78084
  get enableCombineAndDuplicate() {
78073
78085
  return props.enableCombineAndDuplicate;
78074
78086
  },
78087
+ get additionalNotes() {
78088
+ return props.additionalNotes;
78089
+ },
78090
+ get weight() {
78091
+ return props.weight;
78092
+ },
78093
+ get weightUnit() {
78094
+ return props.weightUnit;
78095
+ },
78075
78096
  get children() {
78076
78097
  return createComponent(PharmacySelectionProvider, {
78077
78098
  get pharmacyIdProp() {
@@ -78237,7 +78258,7 @@ customElement("photon-prescribe-workflow", {
78237
78258
  groupId: void 0
78238
78259
  }, PhotonPrescribeWorkflowComponent);
78239
78260
 
78240
- var _tmpl$$c = /* @__PURE__ */ template$1(`<p class="font-sans text-l font-medium mb-2">`), _tmpl$2$a = /* @__PURE__ */ template$1(`<sl-icon-button class=self-start>`, true, false, false), _tmpl$3$9 = /* @__PURE__ */ template$1(`<style>`), _tmpl$4$8 = /* @__PURE__ */ template$1(`<div class="rounded-lg bg-white p-4 shadow-card border border-gray-200">`), _tmpl$5$6 = /* @__PURE__ */ template$1(`<div class="flex flex-row justify-between">`), _tmpl$6$6 = /* @__PURE__ */ template$1(`<slot>`);
78261
+ var _tmpl$$c = /* @__PURE__ */ template$1(`<p class="font-sans text-l font-medium mb-2">`), _tmpl$2$a = /* @__PURE__ */ template$1(`<sl-icon-button class=self-start>`, true, false, false), _tmpl$3$9 = /* @__PURE__ */ template$1(`<style>`), _tmpl$4$7 = /* @__PURE__ */ template$1(`<div class="rounded-lg bg-white p-4 shadow-card border border-gray-200">`), _tmpl$5$7 = /* @__PURE__ */ template$1(`<div class="flex flex-row justify-between">`), _tmpl$6$6 = /* @__PURE__ */ template$1(`<slot>`);
78241
78262
  const Component$6 = (props) => {
78242
78263
  const [isCollapsed, setIsCollapsed] = createSignal(true);
78243
78264
  let titleElement = null;
@@ -78265,9 +78286,9 @@ const Component$6 = (props) => {
78265
78286
  insert$1(_el$3, tailwind);
78266
78287
  return _el$3;
78267
78288
  })(), (() => {
78268
- var _el$4 = _tmpl$4$8();
78289
+ var _el$4 = _tmpl$4$7();
78269
78290
  insert$1(_el$4, titleElement || collapsableElement ? (() => {
78270
- var _el$5 = _tmpl$5$6();
78291
+ var _el$5 = _tmpl$5$7();
78271
78292
  insert$1(_el$5, titleElement, null);
78272
78293
  insert$1(_el$5, collapsableElement, null);
78273
78294
  return _el$5;
@@ -79072,187 +79093,120 @@ customElement("photon-dialog", {
79072
79093
  overlayClose: false
79073
79094
  }, Component$5);
79074
79095
 
79075
- var _tmpl$$a = /* @__PURE__ */ template$1(`<span class="text-gray-500 text-sm font-normal"> (optional)`), _tmpl$2$8 = /* @__PURE__ */ template$1(`<p class="font-sans text-lg mt-4 md:mt-8"role=heading aria-level=3>Address`), _tmpl$3$7 = /* @__PURE__ */ template$1(`<div class="flex gap-4"><div class="flex-grow min-w-[40%]"></div><div class="flex-grow min-w-[40%]">`), _tmpl$4$7 = /* @__PURE__ */ template$1(`<div class="w-full flex justify-center">`), _tmpl$5$5 = /* @__PURE__ */ template$1(`<div><p class="font-sans text-lg flex-grow"role=heading aria-level=2>Patient info</p><div class="flex flex-col"></div><button class="mb-4 mt-8 flex items-center md:!hidden"aria-controls=optional-fields-section><span class="font-sans text-lg"></span></button><div id=optional-fields-section><p class="font-sans text-sm m-0 mt-6">Preferred pharmacy`), _tmpl$6$5 = /* @__PURE__ */ template$1(`<div class="flex flex-col gap-8">`), _tmpl$7$4 = /* @__PURE__ */ template$1(`<div class="w-full h-full relative"><style>`);
79076
- const getPatientAddress = (pStore, store) => {
79077
- const patientAddress = pStore.selectedPatient.data?.address;
79078
- if (store["address_zip"]?.value && isZip(store["address_zip"]?.value) && store["address_zip"]?.value != patientAddress?.postalCode) {
79079
- return store["address_zip"]?.value;
79080
- }
79081
- if (patientAddress) {
79082
- return `${patientAddress.street1} ${patientAddress.street2 ?? ""} ${patientAddress.city}, ${patientAddress.state} ${patientAddress.postalCode}`;
79083
- }
79084
- return "";
79096
+ var _tmpl$$a = /* @__PURE__ */ template$1(`<div class="text-black text-xl md:text-3xl">`), _tmpl$2$8 = /* @__PURE__ */ template$1(`<sl-icon class=flex-shrink-0>`, true, false, false), _tmpl$3$7 = /* @__PURE__ */ template$1(`<header class="flex-shrink-0 flex items-center px-4 py-2 md:px-8 md:py-3 bg-white shadow-card"><div class="flex items-center"></div><div class="flex-1 flex justify-center items-center min-w-0 px-2"><p class="ml-1 font-sans text-lg md:text-xl font-medium truncate"></p></div><div class="flex items-center w-[44px]">`), _tmpl$4$6 = /* @__PURE__ */ template$1(`<footer class="flex-shrink-0 bg-white shadow-card px-4 py-4 md:px-8"><div class="flex flex-col xs:flex-row-reverse xs:justify-start gap-2 items-center w-full sm:w-[600px] xs:mx-auto sm:px-4">`), _tmpl$5$6 = /* @__PURE__ */ template$1(`<div class="z-50 fixed inset-0 flex flex-col bg-[#F9FAFB]"><photon-dialog confirm-text="Yes, Close"cancel-text="Keep Editing"><p class="font-sans text-lg xs:text-base"></p></photon-dialog><main class="flex-1 overflow-y-auto overscroll-contain"><div class="px-4 pt-4 pb-4 md:px-4 w-full sm:w-[600px] xs:mx-auto">`, true, false, false);
79097
+ const PhotonFormWrapper = (p) => {
79098
+ const props = mergeProps({
79099
+ closeTitle: "Lose unsaved changes?",
79100
+ closeBody: "You will not be able to recover unsaved changes.",
79101
+ checkShouldWarn: () => false
79102
+ }, p);
79103
+ let ref;
79104
+ const [closeDialogOpen, onCloseDialogOpen] = createSignal(false);
79105
+ const handleConfirm = () => {
79106
+ onCloseDialogOpen(false);
79107
+ props.onClosed();
79108
+ };
79109
+ const handleCancel = () => onCloseDialogOpen(false);
79110
+ return (() => {
79111
+ var _el$ = _tmpl$5$6(), _el$2 = _el$.firstChild, _el$3 = _el$2.firstChild, _el$0 = _el$2.nextSibling, _el$1 = _el$0.firstChild;
79112
+ var _ref$ = ref;
79113
+ typeof _ref$ === "function" ? use$1(_ref$, _el$) : ref = _el$;
79114
+ addEventListener$1(_el$2, "photon-dialog-alt", handleCancel);
79115
+ addEventListener$1(_el$2, "photon-dialog-canceled", handleCancel);
79116
+ addEventListener$1(_el$2, "photon-dialog-confirmed", handleConfirm);
79117
+ _el$2._$owner = getOwner();
79118
+ insert$1(_el$3, () => props.closeBody);
79119
+ insert$1(_el$, createComponent(Show, {
79120
+ get when() {
79121
+ return !(props.hideHeaderOnIOSWebView && IS_KNOWN_NATIVE_WEBVIEW);
79122
+ },
79123
+ get children() {
79124
+ var _el$4 = _tmpl$3$7(), _el$5 = _el$4.firstChild, _el$7 = _el$5.nextSibling, _el$9 = _el$7.firstChild;
79125
+ insert$1(_el$5, createComponent(Button, {
79126
+ variant: "naked",
79127
+ size: "sm",
79128
+ onClick: () => {
79129
+ if (props.checkShouldWarn()) {
79130
+ onCloseDialogOpen(true);
79131
+ } else {
79132
+ props.onClosed();
79133
+ }
79134
+ },
79135
+ get children() {
79136
+ var _el$6 = _tmpl$$a();
79137
+ insert$1(_el$6, createComponent(Icon, {
79138
+ name: "xMark"
79139
+ }));
79140
+ return _el$6;
79141
+ }
79142
+ }));
79143
+ insert$1(_el$7, createComponent(Show, {
79144
+ get when() {
79145
+ return props.titleIconName;
79146
+ },
79147
+ get children() {
79148
+ var _el$8 = _tmpl$2$8();
79149
+ _el$8._$owner = getOwner();
79150
+ createRenderEffect(() => _el$8.name = props.titleIconName);
79151
+ return _el$8;
79152
+ }
79153
+ }), _el$9);
79154
+ insert$1(_el$9, () => props.title);
79155
+ return _el$4;
79156
+ }
79157
+ }), _el$0);
79158
+ _el$0.style.setProperty("-webkit-overflow-scrolling", "touch");
79159
+ insert$1(_el$1, () => props.form);
79160
+ insert$1(_el$, createComponent(Show, {
79161
+ get when() {
79162
+ return props.footer;
79163
+ },
79164
+ get children() {
79165
+ var _el$10 = _tmpl$4$6(), _el$11 = _el$10.firstChild;
79166
+ insert$1(_el$11, () => props.footer);
79167
+ return _el$10;
79168
+ }
79169
+ }), null);
79170
+ createRenderEffect((_p$) => {
79171
+ var _v$ = props.closeTitle, _v$2 = closeDialogOpen();
79172
+ _v$ !== _p$.e && (_el$2.label = _p$.e = _v$);
79173
+ _v$2 !== _p$.t && (_el$2.open = _p$.t = _v$2);
79174
+ return _p$;
79175
+ }, {
79176
+ e: void 0,
79177
+ t: void 0
79178
+ });
79179
+ return _el$;
79180
+ })();
79181
+ };
79182
+ const IS_KNOWN_NATIVE_WEBVIEW = typeof window !== "undefined" && window.__photonHideHeader === true;
79183
+
79184
+ var _tmpl$$9 = /* @__PURE__ */ template$1(`<span class="text-gray-500 text-sm font-normal"> (optional)`), _tmpl$2$7 = /* @__PURE__ */ template$1(`<p class="font-sans text-lg mt-4 md:!mt-8"role=heading aria-level=3>Address`), _tmpl$3$6 = /* @__PURE__ */ template$1(`<div class="flex gap-4"><div class="flex-grow min-w-[40%]"></div><div class="flex-grow min-w-[40%]">`), _tmpl$4$5 = /* @__PURE__ */ template$1(`<div class="w-full flex justify-center">`), _tmpl$5$5 = /* @__PURE__ */ template$1(`<div><p class="font-sans text-lg flex-grow my-2"role=heading aria-level=2>Patient info</p><div class="flex flex-col"></div><button class="mb-4 mt-8 flex items-center md:!hidden"aria-controls=optional-fields-section><span class="font-sans text-lg"></span></button><div id=optional-fields-section><p class="font-sans text-sm m-0 mt-6">Preferred pharmacy`), _tmpl$6$5 = /* @__PURE__ */ template$1(`<div class="flex flex-col gap-8">`), _tmpl$7$4 = /* @__PURE__ */ template$1(`<div class="photon-patient-form w-full h-full relative">`);
79185
+ const validators = {
79186
+ firstName: message(size$2(string(), 1, Infinity), "Please enter a first name."),
79187
+ lastName: message(size$2(string(), 1, Infinity), "Please enter a last name."),
79188
+ dateOfBirth: message(notFutureDate, "Please enter a valid date of birth."),
79189
+ sex: message(enums(SEX_OPTIONS.map((o) => o.value)), "Please enter Sex at Birth."),
79190
+ phone: message(size$2(string(), 12), "Please enter a valid mobile number."),
79191
+ email: message(union([email(), empty()]), "Please enter a valid email."),
79192
+ address_street1: message(size$2(string(), 1, Infinity), "Please enter a valid Street 1."),
79193
+ address_city: message(size$2(string(), 1, Infinity), "Please enter a valid City."),
79194
+ address_state: message(size$2(string(), 2, 2), "Please enter a valid State."),
79195
+ address_zip: message(zipString(), "Please enter a valid zip code.")
79085
79196
  };
79086
79197
  const PatientForm = (props) => {
79087
79198
  let ref;
79088
- const client = usePhoton();
79089
79199
  const [showOptionalFields, setShowOptionalFields] = createSignal(false);
79090
- const {
79091
- store: pStore,
79092
- actions: pActions
79093
- } = PatientStore;
79094
- const {
79095
- store,
79096
- actions
79097
- } = createFormStore({
79098
- firstName: void 0,
79099
- lastName: void 0,
79100
- dateOfBirth: void 0,
79101
- phone: void 0,
79102
- gender: void 0,
79103
- sex: void 0,
79104
- email: void 0,
79105
- address_street1: void 0,
79106
- address_street2: void 0,
79107
- address_city: void 0,
79108
- address_state: void 0,
79109
- address_zip: void 0,
79110
- preferredPharmacy: void 0
79111
- });
79112
- actions.registerValidator({
79113
- key: "firstName",
79114
- validator: message(size$2(string(), 1, Infinity), "Please enter a first name.")
79115
- });
79116
- actions.registerValidator({
79117
- key: "lastName",
79118
- validator: message(size$2(string(), 1, Infinity), "Please enter a last name.")
79119
- });
79120
- actions.registerValidator({
79121
- key: "dateOfBirth",
79122
- validator: message(notFutureDate, "Please enter a valid date of birth.")
79123
- });
79124
- actions.registerValidator({
79125
- key: "sex",
79126
- validator: message(enums(SEX_OPTIONS.map((o) => o.value)), "Please enter Sex at Birth.")
79127
- });
79128
- actions.registerValidator({
79129
- key: "phone",
79130
- validator: message(size$2(string(), 12), "Please enter a valid mobile number.")
79131
- });
79132
- actions.registerValidator({
79133
- key: "email",
79134
- validator: message(union([email(), empty()]), "Please enter a valid email.")
79135
- });
79136
- actions.registerValidator({
79137
- key: "address_street1",
79138
- validator: message(size$2(string(), 1, Infinity), "Please enter a valid Street 1.")
79139
- });
79140
- actions.registerValidator({
79141
- key: "address_city",
79142
- validator: message(size$2(string(), 1, Infinity), "Please enter a valid City.")
79143
- });
79144
- actions.registerValidator({
79145
- key: "address_state",
79146
- validator: message(size$2(string(), 2, 2), "Please enter a valid State.")
79147
- });
79148
- actions.registerValidator({
79149
- key: "address_zip",
79150
- validator: message(zipString(), "Please enter a valid zip code.")
79151
- });
79152
79200
  onMount(() => {
79153
- if (props.patientId) {
79154
- pActions.getSelectedPatient(client.getSDK(), props.patientId);
79155
- } else {
79156
- pActions.clearSelectedPatient();
79157
- }
79158
- });
79159
- const dispatchFormUpdated = (form) => {
79160
- const event = new CustomEvent("photon-form-updated", {
79161
- composed: true,
79162
- bubbles: true,
79163
- detail: {
79164
- form,
79165
- actions,
79166
- selected: pStore,
79167
- optionalPatientAddress: props.optionalPatientAddress,
79168
- reset: () => {
79169
- actions.reset();
79170
- pActions.reset();
79171
- }
79172
- }
79173
- });
79174
- ref?.dispatchEvent(event);
79175
- };
79176
- createEffect(() => {
79177
- if (pStore.selectedPatient.data) {
79178
- actions.updateFormValue({
79179
- key: "firstName",
79180
- value: pStore.selectedPatient.data.name.first
79181
- });
79182
- actions.updateFormValue({
79183
- key: "lastName",
79184
- value: pStore.selectedPatient.data.name.last
79185
- });
79186
- actions.updateFormValue({
79187
- key: "dateOfBirth",
79188
- value: pStore.selectedPatient.data.dateOfBirth
79189
- });
79190
- actions.updateFormValue({
79191
- key: "phone",
79192
- value: pStore.selectedPatient.data.phone
79193
- });
79194
- actions.updateFormValue({
79195
- key: "gender",
79196
- value: pStore.selectedPatient.data.gender
79197
- });
79198
- actions.updateFormValue({
79199
- key: "sex",
79200
- value: pStore.selectedPatient.data.sex
79201
- });
79202
- actions.updateFormValue({
79203
- key: "email",
79204
- value: pStore.selectedPatient.data.email
79205
- });
79206
- actions.updateFormValue({
79207
- key: "address_street1",
79208
- value: pStore.selectedPatient.data.address?.street1
79209
- });
79210
- actions.updateFormValue({
79211
- key: "address_street2",
79212
- value: pStore.selectedPatient.data.address?.street2
79213
- });
79214
- actions.updateFormValue({
79215
- key: "address_city",
79216
- value: pStore.selectedPatient.data.address?.city
79217
- });
79218
- actions.updateFormValue({
79219
- key: "address_state",
79220
- value: pStore.selectedPatient.data.address?.state
79221
- });
79222
- actions.updateFormValue({
79223
- key: "address_zip",
79224
- value: pStore.selectedPatient.data.address?.postalCode
79225
- });
79226
- actions.updateFormValue({
79227
- key: "preferredPharmacy",
79228
- value: pStore.selectedPatient.data.preferredPharmacies?.[0]?.id
79201
+ for (const [k, v] of Object.entries(validators)) {
79202
+ props.actions.registerValidator({
79203
+ key: k,
79204
+ validator: v
79229
79205
  });
79230
79206
  }
79231
79207
  });
79232
- const hasAnyAddressField = createMemo(() => {
79233
- return !!(store["address_street1"]?.value || store["address_street2"]?.value || store["address_city"]?.value || store["address_state"]?.value || store["address_zip"]?.value);
79234
- });
79235
- createEffect(() => {
79236
- dispatchFormUpdated(store);
79237
- });
79238
- onCleanup(() => {
79239
- pActions.clearSelectedPatient();
79240
- actions.reset();
79241
- });
79242
- const preferredPharmacy = createMemo(() => {
79243
- const pref = pStore.selectedPatient.data?.preferredPharmacies?.[0];
79244
- if (!pref) return;
79245
- const address = pref.address;
79246
- const prefOption = {
79247
- ...pref,
79248
- address,
79249
- isPrevious: true,
79250
- isPreferred: true
79251
- };
79252
- return prefOption;
79253
- });
79254
- const formName = props.patientId ? "update_patient_form" : "new_patient_form";
79255
79208
  const trackFieldInteraction = (fieldName, hasValue, isOptional = false) => {
79209
+ const formName = props.patientId ? "update_patient_form" : "new_patient_form";
79256
79210
  dispatchAnalyticsTrackEvent("fieldInteraction", {
79257
79211
  name: "Field Interaction",
79258
79212
  formName,
@@ -79261,23 +79215,26 @@ const PatientForm = (props) => {
79261
79215
  isOptional
79262
79216
  }, ref);
79263
79217
  };
79218
+ const hasAnyAddressField = createMemo(() => {
79219
+ return !!(props.store["address_street1"]?.value || props.store["address_street2"]?.value || props.store["address_city"]?.value || props.store["address_state"]?.value || props.store["address_zip"]?.value);
79220
+ });
79221
+ const isAddressRequired = createMemo(() => !props.optionalPatientAddress || hasAnyAddressField());
79264
79222
  const AddressFields = () => {
79265
- const isAddressRequired = createMemo(() => !props.optionalPatientAddress || hasAnyAddressField());
79266
79223
  return [(() => {
79267
- var _el$ = _tmpl$2$8(); _el$.firstChild;
79224
+ var _el$ = _tmpl$2$7(); _el$.firstChild;
79268
79225
  insert$1(_el$, createComponent(Show, {
79269
79226
  get when() {
79270
- return memo$2(() => !!props.optionalPatientAddress)() && !hasAnyAddressField();
79227
+ return !isAddressRequired();
79271
79228
  },
79272
79229
  get children() {
79273
- return _tmpl$$a();
79230
+ return _tmpl$$9();
79274
79231
  }
79275
79232
  }), null);
79276
79233
  return _el$;
79277
79234
  })(), createComponent(InputGroup, {
79278
79235
  label: "Street 1",
79279
79236
  get error() {
79280
- return store["address_street1"]?.error;
79237
+ return props.store["address_street1"]?.error;
79281
79238
  },
79282
79239
  get required() {
79283
79240
  return isAddressRequired();
@@ -79285,33 +79242,33 @@ const PatientForm = (props) => {
79285
79242
  get children() {
79286
79243
  return createComponent(AddressAutocompleteInput, {
79287
79244
  get value() {
79288
- return store["address_street1"]?.value ?? pStore.selectedPatient.data?.address?.street1;
79245
+ return props.store["address_street1"]?.value;
79289
79246
  },
79290
79247
  onInput: (e) => {
79291
- actions.updateFormValue({
79248
+ props.actions.updateFormValue({
79292
79249
  key: "address_street1",
79293
79250
  value: e.currentTarget.value
79294
79251
  });
79295
79252
  },
79296
79253
  onBlur: (e) => trackFieldInteraction("address_street1", Boolean(e.currentTarget.value), true),
79297
79254
  onAddressSelect: (address) => {
79298
- actions.updateFormValue({
79255
+ props.actions.updateFormValue({
79299
79256
  key: "address_street1",
79300
79257
  value: address.street1
79301
79258
  });
79302
- actions.updateFormValue({
79259
+ props.actions.updateFormValue({
79303
79260
  key: "address_street2",
79304
79261
  value: address.street2
79305
79262
  });
79306
- actions.updateFormValue({
79263
+ props.actions.updateFormValue({
79307
79264
  key: "address_city",
79308
79265
  value: address.city
79309
79266
  });
79310
- actions.updateFormValue({
79267
+ props.actions.updateFormValue({
79311
79268
  key: "address_state",
79312
79269
  value: address.state
79313
79270
  });
79314
- actions.updateFormValue({
79271
+ props.actions.updateFormValue({
79315
79272
  key: "address_zip",
79316
79273
  value: address.postalCode
79317
79274
  });
@@ -79321,15 +79278,15 @@ const PatientForm = (props) => {
79321
79278
  }), createComponent(InputGroup, {
79322
79279
  label: "Street 2",
79323
79280
  get error() {
79324
- return store["address_street2"]?.error;
79281
+ return props.store["address_street2"]?.error;
79325
79282
  },
79326
79283
  get children() {
79327
79284
  return createComponent(Input, {
79328
79285
  get value() {
79329
- return store["address_street2"]?.value ?? pStore.selectedPatient.data?.address?.street2;
79286
+ return props.store["address_street2"]?.value;
79330
79287
  },
79331
79288
  onInput: (e) => {
79332
- actions.updateFormValue({
79289
+ props.actions.updateFormValue({
79333
79290
  key: "address_street2",
79334
79291
  value: e.currentTarget.value
79335
79292
  });
@@ -79340,7 +79297,7 @@ const PatientForm = (props) => {
79340
79297
  }), createComponent(InputGroup, {
79341
79298
  label: "City",
79342
79299
  get error() {
79343
- return store["address_city"]?.error;
79300
+ return props.store["address_city"]?.error;
79344
79301
  },
79345
79302
  get required() {
79346
79303
  return isAddressRequired();
@@ -79348,10 +79305,10 @@ const PatientForm = (props) => {
79348
79305
  get children() {
79349
79306
  return createComponent(Input, {
79350
79307
  get value() {
79351
- return store["address_city"]?.value ?? pStore.selectedPatient.data?.address?.city;
79308
+ return props.store["address_city"]?.value;
79352
79309
  },
79353
79310
  onInput: (e) => {
79354
- actions.updateFormValue({
79311
+ props.actions.updateFormValue({
79355
79312
  key: "address_city",
79356
79313
  value: e.currentTarget.value
79357
79314
  });
@@ -79360,11 +79317,11 @@ const PatientForm = (props) => {
79360
79317
  });
79361
79318
  }
79362
79319
  }), (() => {
79363
- var _el$4 = _tmpl$3$7(), _el$5 = _el$4.firstChild, _el$6 = _el$5.nextSibling;
79320
+ var _el$4 = _tmpl$3$6(), _el$5 = _el$4.firstChild, _el$6 = _el$5.nextSibling;
79364
79321
  insert$1(_el$5, createComponent(InputGroup, {
79365
79322
  label: "State",
79366
79323
  get error() {
79367
- return store["address_state"]?.error;
79324
+ return props.store["address_state"]?.error;
79368
79325
  },
79369
79326
  get required() {
79370
79327
  return isAddressRequired();
@@ -79372,10 +79329,10 @@ const PatientForm = (props) => {
79372
79329
  get children() {
79373
79330
  return createComponent(StateSelect, {
79374
79331
  get value() {
79375
- return store["address_state"]?.value ?? pStore.selectedPatient.data?.address?.state;
79332
+ return props.store["address_state"]?.value;
79376
79333
  },
79377
79334
  onChange: (e) => {
79378
- actions.updateFormValue({
79335
+ props.actions.updateFormValue({
79379
79336
  key: "address_state",
79380
79337
  value: e.currentTarget.value
79381
79338
  });
@@ -79387,7 +79344,7 @@ const PatientForm = (props) => {
79387
79344
  insert$1(_el$6, createComponent(InputGroup, {
79388
79345
  label: "Zip code",
79389
79346
  get error() {
79390
- return store["address_zip"]?.error;
79347
+ return props.store["address_zip"]?.error;
79391
79348
  },
79392
79349
  get required() {
79393
79350
  return isAddressRequired();
@@ -79395,10 +79352,10 @@ const PatientForm = (props) => {
79395
79352
  get children() {
79396
79353
  return createComponent(Input, {
79397
79354
  get value() {
79398
- return store["address_zip"]?.value ?? pStore.selectedPatient.data?.address?.postalCode;
79355
+ return props.store["address_zip"]?.value;
79399
79356
  },
79400
79357
  onInput: (e) => {
79401
- actions.updateFormValue({
79358
+ props.actions.updateFormValue({
79402
79359
  key: "address_zip",
79403
79360
  value: e.currentTarget.value
79404
79361
  });
@@ -79411,47 +79368,46 @@ const PatientForm = (props) => {
79411
79368
  })()];
79412
79369
  };
79413
79370
  return (() => {
79414
- var _el$7 = _tmpl$7$4(), _el$8 = _el$7.firstChild;
79371
+ var _el$7 = _tmpl$7$4();
79415
79372
  var _ref$ = ref;
79416
79373
  typeof _ref$ === "function" ? use$1(_ref$, _el$7) : ref = _el$7;
79417
- insert$1(_el$8, tailwind);
79418
79374
  insert$1(_el$7, createComponent(Show, {
79419
79375
  get when() {
79420
- return pStore.selectedPatient.isLoading;
79376
+ return props.initialPatientLoading;
79421
79377
  },
79422
79378
  get children() {
79423
- var _el$9 = _tmpl$4$7();
79424
- insert$1(_el$9, createComponent(Spinner, {
79379
+ var _el$8 = _tmpl$4$5();
79380
+ insert$1(_el$8, createComponent(Spinner, {
79425
79381
  color: "green"
79426
79382
  }));
79427
- return _el$9;
79383
+ return _el$8;
79428
79384
  }
79429
79385
  }), null);
79430
79386
  insert$1(_el$7, createComponent(Show, {
79431
79387
  get when() {
79432
- return !pStore.selectedPatient.isLoading;
79388
+ return !props.initialPatientLoading;
79433
79389
  },
79434
79390
  get children() {
79435
79391
  return createComponent(PhotonAuthorized, {
79436
79392
  permissions: ["write:patient"],
79437
79393
  get children() {
79438
- var _el$0 = _tmpl$6$5();
79439
- insert$1(_el$0, createComponent(Card, {
79394
+ var _el$9 = _tmpl$6$5();
79395
+ insert$1(_el$9, createComponent(Card, {
79440
79396
  get children() {
79441
- var _el$1 = _tmpl$5$5(), _el$10 = _el$1.firstChild, _el$11 = _el$10.nextSibling, _el$12 = _el$11.nextSibling, _el$13 = _el$12.firstChild, _el$14 = _el$12.nextSibling, _el$15 = _el$14.firstChild;
79442
- insert$1(_el$11, createComponent(InputGroup, {
79397
+ var _el$0 = _tmpl$5$5(), _el$1 = _el$0.firstChild, _el$10 = _el$1.nextSibling, _el$11 = _el$10.nextSibling, _el$12 = _el$11.firstChild, _el$13 = _el$11.nextSibling, _el$14 = _el$13.firstChild;
79398
+ insert$1(_el$10, createComponent(InputGroup, {
79443
79399
  label: "First name",
79444
79400
  get error() {
79445
- return store["firstName"]?.error;
79401
+ return props.store["firstName"]?.error;
79446
79402
  },
79447
79403
  required: true,
79448
79404
  get children() {
79449
79405
  return createComponent(Input, {
79450
79406
  get value() {
79451
- return store["firstName"]?.value ?? pStore.selectedPatient.data?.name.first;
79407
+ return props.store["firstName"]?.value;
79452
79408
  },
79453
79409
  onInput: (e) => {
79454
- actions.updateFormValue({
79410
+ props.actions.updateFormValue({
79455
79411
  key: "firstName",
79456
79412
  value: e.currentTarget.value
79457
79413
  });
@@ -79460,19 +79416,19 @@ const PatientForm = (props) => {
79460
79416
  });
79461
79417
  }
79462
79418
  }), null);
79463
- insert$1(_el$11, createComponent(InputGroup, {
79419
+ insert$1(_el$10, createComponent(InputGroup, {
79464
79420
  label: "Last name",
79465
79421
  get error() {
79466
- return store["lastName"]?.error;
79422
+ return props.store["lastName"]?.error;
79467
79423
  },
79468
79424
  required: true,
79469
79425
  get children() {
79470
79426
  return createComponent(Input, {
79471
79427
  get value() {
79472
- return store["lastName"]?.value ?? pStore.selectedPatient.data?.name.last;
79428
+ return props.store["lastName"]?.value;
79473
79429
  },
79474
79430
  onInput: (e) => {
79475
- actions.updateFormValue({
79431
+ props.actions.updateFormValue({
79476
79432
  key: "lastName",
79477
79433
  value: e.currentTarget.value
79478
79434
  });
@@ -79481,19 +79437,19 @@ const PatientForm = (props) => {
79481
79437
  });
79482
79438
  }
79483
79439
  }), null);
79484
- insert$1(_el$11, createComponent(InputGroup, {
79440
+ insert$1(_el$10, createComponent(InputGroup, {
79485
79441
  label: "Date of birth",
79486
79442
  get error() {
79487
- return store["dateOfBirth"]?.error;
79443
+ return props.store["dateOfBirth"]?.error;
79488
79444
  },
79489
79445
  required: true,
79490
79446
  get children() {
79491
79447
  return createComponent(DateInput, {
79492
79448
  get value() {
79493
- return store["dateOfBirth"]?.value ?? pStore.selectedPatient.data?.dateOfBirth;
79449
+ return props.store["dateOfBirth"]?.value;
79494
79450
  },
79495
79451
  onDateChange: (value) => {
79496
- actions.updateFormValue({
79452
+ props.actions.updateFormValue({
79497
79453
  key: "dateOfBirth",
79498
79454
  value
79499
79455
  });
@@ -79502,19 +79458,19 @@ const PatientForm = (props) => {
79502
79458
  });
79503
79459
  }
79504
79460
  }), null);
79505
- insert$1(_el$11, createComponent(InputGroup, {
79461
+ insert$1(_el$10, createComponent(InputGroup, {
79506
79462
  label: "Mobile number",
79507
79463
  get error() {
79508
- return store["phone"]?.error;
79464
+ return props.store["phone"]?.error;
79509
79465
  },
79510
79466
  required: true,
79511
79467
  get children() {
79512
79468
  return createComponent(PhoneInput, {
79513
79469
  get value() {
79514
- return store["phone"]?.value ?? pStore.selectedPatient.data?.phone;
79470
+ return props.store["phone"]?.value;
79515
79471
  },
79516
79472
  onPhoneChange: (value) => {
79517
- actions.updateFormValue({
79473
+ props.actions.updateFormValue({
79518
79474
  key: "phone",
79519
79475
  value
79520
79476
  });
@@ -79523,81 +79479,81 @@ const PatientForm = (props) => {
79523
79479
  });
79524
79480
  }
79525
79481
  }), null);
79526
- insert$1(_el$11, createComponent(InputGroup, {
79482
+ insert$1(_el$10, createComponent(InputGroup, {
79527
79483
  label: "Sex at birth",
79528
79484
  get error() {
79529
- return store["sex"]?.error;
79485
+ return props.store["sex"]?.error;
79530
79486
  },
79531
79487
  required: true,
79532
79488
  get children() {
79533
79489
  return createComponent(SexSelect, {
79534
79490
  get value() {
79535
- return store["sex"]?.value ?? pStore.selectedPatient.data?.sex;
79491
+ return props.store["sex"]?.value;
79536
79492
  },
79537
- onChange: (e) => actions.updateFormValue({
79493
+ onChange: (e) => props.actions.updateFormValue({
79538
79494
  key: "sex",
79539
79495
  value: e.currentTarget.value
79540
79496
  }),
79541
- onBlur: () => trackFieldInteraction("sex", Boolean(store["sex"]?.value))
79497
+ onBlur: () => trackFieldInteraction("sex", Boolean(props.store["sex"]?.value))
79542
79498
  });
79543
79499
  }
79544
79500
  }), null);
79545
- insert$1(_el$1, createComponent(Show, {
79501
+ insert$1(_el$0, createComponent(Show, {
79546
79502
  get when() {
79547
79503
  return !props.optionalPatientAddress;
79548
79504
  },
79549
79505
  get children() {
79550
79506
  return createComponent(AddressFields, {});
79551
79507
  }
79552
- }), _el$12);
79553
- _el$12.$$click = () => setShowOptionalFields((value) => !value);
79554
- insert$1(_el$13, () => showOptionalFields() ? "Hide optional fields" : "Show optional fields");
79555
- insert$1(_el$12, createComponent(Icon, {
79508
+ }), _el$11);
79509
+ _el$11.$$click = () => setShowOptionalFields((value) => !value);
79510
+ insert$1(_el$12, () => showOptionalFields() ? "Hide optional fields" : "Show optional fields");
79511
+ insert$1(_el$11, createComponent(Icon, {
79556
79512
  get name() {
79557
79513
  return showOptionalFields() ? "chevronUp" : "chevronDown";
79558
79514
  },
79559
79515
  size: "md",
79560
79516
  "class": "inline-block ml-1 mt-1"
79561
79517
  }), null);
79562
- insert$1(_el$14, createComponent(Show, {
79518
+ insert$1(_el$13, createComponent(Show, {
79563
79519
  get when() {
79564
79520
  return props.optionalPatientAddress;
79565
79521
  },
79566
79522
  get children() {
79567
79523
  return createComponent(AddressFields, {});
79568
79524
  }
79569
- }), _el$15);
79570
- insert$1(_el$14, createComponent(InputGroup, {
79525
+ }), _el$14);
79526
+ insert$1(_el$13, createComponent(InputGroup, {
79571
79527
  label: "Gender",
79572
79528
  get error() {
79573
- return store["gender"]?.error;
79529
+ return props.store["gender"]?.error;
79574
79530
  },
79575
79531
  get children() {
79576
79532
  return createComponent(GenderSelect, {
79577
79533
  get value() {
79578
- return store["gender"]?.value ?? pStore.selectedPatient.data?.gender;
79534
+ return props.store["gender"]?.value;
79579
79535
  },
79580
- onChange: (e) => actions.updateFormValue({
79536
+ onChange: (e) => props.actions.updateFormValue({
79581
79537
  key: "gender",
79582
79538
  value: e.currentTarget.value
79583
79539
  }),
79584
- onBlur: () => trackFieldInteraction("gender", Boolean(store["gender"]?.value), true)
79540
+ onBlur: () => trackFieldInteraction("gender", Boolean(props.store["gender"]?.value), true)
79585
79541
  });
79586
79542
  }
79587
- }), _el$15);
79588
- insert$1(_el$14, createComponent(InputGroup, {
79543
+ }), _el$14);
79544
+ insert$1(_el$13, createComponent(InputGroup, {
79589
79545
  label: "Email",
79590
79546
  get error() {
79591
- return store["email"]?.error;
79547
+ return props.store["email"]?.error;
79592
79548
  },
79593
79549
  get children() {
79594
79550
  return createComponent(Input, {
79595
79551
  type: "email",
79596
79552
  get value() {
79597
- return store["email"]?.value ?? pStore.selectedPatient.data?.email;
79553
+ return props.store["email"]?.value;
79598
79554
  },
79599
79555
  onInput: (e) => {
79600
- actions.updateFormValue({
79556
+ props.actions.updateFormValue({
79601
79557
  key: "email",
79602
79558
  value: e.currentTarget.value
79603
79559
  });
@@ -79605,13 +79561,13 @@ const PatientForm = (props) => {
79605
79561
  onBlur: (e) => trackFieldInteraction("email", Boolean(e.currentTarget.value), true)
79606
79562
  });
79607
79563
  }
79608
- }), _el$15);
79609
- insert$1(_el$14, createComponent(PickupPharmacySearch, {
79564
+ }), _el$14);
79565
+ insert$1(_el$13, createComponent(PickupPharmacySearch, {
79610
79566
  get address() {
79611
- return getPatientAddress(pStore, store);
79567
+ return isZip(props.store["address_zip"]?.value) ? props.store["address_zip"]?.value : void 0;
79612
79568
  },
79613
79569
  setPharmacy: (pharmacy) => {
79614
- actions.updateFormValue({
79570
+ props.actions.updateFormValue({
79615
79571
  key: "preferredPharmacy",
79616
79572
  value: pharmacy.id
79617
79573
  });
@@ -79620,23 +79576,23 @@ const PatientForm = (props) => {
79620
79576
  return props.patientId;
79621
79577
  },
79622
79578
  get initialValue() {
79623
- return preferredPharmacy();
79579
+ return props.initialPreferredPharmacy;
79624
79580
  },
79625
79581
  hidePreferred: true
79626
79582
  }), null);
79627
79583
  createRenderEffect((_p$) => {
79628
79584
  var _v$ = showOptionalFields(), _v$2 = `mb-4 ${showOptionalFields() ? "block" : "hidden md:!block"}`;
79629
- _v$ !== _p$.e && setAttribute$1(_el$12, "aria-expanded", _p$.e = _v$);
79630
- _v$2 !== _p$.t && className$1(_el$14, _p$.t = _v$2);
79585
+ _v$ !== _p$.e && setAttribute$1(_el$11, "aria-expanded", _p$.e = _v$);
79586
+ _v$2 !== _p$.t && className$1(_el$13, _p$.t = _v$2);
79631
79587
  return _p$;
79632
79588
  }, {
79633
79589
  e: void 0,
79634
79590
  t: void 0
79635
79591
  });
79636
- return _el$1;
79592
+ return _el$0;
79637
79593
  }
79638
79594
  }));
79639
- return _el$0;
79595
+ return _el$9;
79640
79596
  }
79641
79597
  });
79642
79598
  }
@@ -79644,107 +79600,44 @@ const PatientForm = (props) => {
79644
79600
  return _el$7;
79645
79601
  })();
79646
79602
  };
79647
- customElement("photon-patient-form", {
79648
- patientId: "",
79649
- optionalPatientAddress: false
79650
- }, PatientForm);
79651
79603
  delegateEvents$1(["click"]);
79652
79604
 
79653
- var _tmpl$$9 = /* @__PURE__ */ template$1(`<div class="text-black text-xl md:text-3xl">`), _tmpl$2$7 = /* @__PURE__ */ template$1(`<sl-icon class=flex-shrink-0>`, true, false, false), _tmpl$3$6 = /* @__PURE__ */ template$1(`<footer class="flex-shrink-0 bg-white shadow-card px-4 py-4 md:px-8"><div class="flex flex-col xs:flex-row-reverse xs:justify-start gap-2 items-center w-full sm:w-[600px] xs:mx-auto sm:px-4">`), _tmpl$4$6 = /* @__PURE__ */ template$1(`<div class="z-50 fixed inset-0 flex flex-col bg-[#F9FAFB]"><photon-dialog confirm-text="Yes, Close"cancel-text="Keep Editing"><p class="font-sans text-lg xs:text-base"></p></photon-dialog><header class="flex-shrink-0 flex items-center px-4 py-2 md:px-8 md:py-3 bg-white shadow-card"><div class="flex items-center"></div><div class="flex-1 flex justify-center items-center min-w-0 px-2"><p class="ml-1 font-sans text-lg md:text-xl font-medium truncate"></p></div><div class="flex items-center w-[44px]"></div></header><main class="flex-1 overflow-y-auto overscroll-contain"><div class="px-4 pt-4 pb-4 md:px-4 w-full sm:w-[600px] xs:mx-auto">`, true, false, false);
79654
- const PhotonFormWrapper = (p) => {
79655
- const props = mergeProps({
79656
- closeTitle: "Lose unsaved changes?",
79657
- closeBody: "You will not be able to recover unsaved changes.",
79658
- checkShouldWarn: () => false
79659
- }, p);
79660
- let ref;
79661
- const [closeDialogOpen, onCloseDialogOpen] = createSignal(false);
79662
- const handleConfirm = () => {
79663
- onCloseDialogOpen(false);
79664
- props.onClosed();
79665
- };
79666
- const handleCancel = () => onCloseDialogOpen(false);
79667
- return (() => {
79668
- var _el$ = _tmpl$4$6(), _el$2 = _el$.firstChild, _el$3 = _el$2.firstChild, _el$4 = _el$2.nextSibling, _el$5 = _el$4.firstChild, _el$7 = _el$5.nextSibling, _el$9 = _el$7.firstChild, _el$0 = _el$4.nextSibling, _el$1 = _el$0.firstChild;
79669
- var _ref$ = ref;
79670
- typeof _ref$ === "function" ? use$1(_ref$, _el$) : ref = _el$;
79671
- addEventListener$1(_el$2, "photon-dialog-alt", handleCancel);
79672
- addEventListener$1(_el$2, "photon-dialog-canceled", handleCancel);
79673
- addEventListener$1(_el$2, "photon-dialog-confirmed", handleConfirm);
79674
- _el$2._$owner = getOwner();
79675
- insert$1(_el$3, () => props.closeBody);
79676
- insert$1(_el$5, createComponent(Button, {
79677
- variant: "naked",
79678
- size: "sm",
79679
- onClick: () => {
79680
- if (props.checkShouldWarn()) {
79681
- onCloseDialogOpen(true);
79682
- } else {
79683
- props.onClosed();
79684
- }
79685
- },
79686
- get children() {
79687
- var _el$6 = _tmpl$$9();
79688
- insert$1(_el$6, createComponent(Icon, {
79689
- name: "xMark"
79690
- }));
79691
- return _el$6;
79692
- }
79693
- }));
79694
- insert$1(_el$7, createComponent(Show, {
79695
- get when() {
79696
- return props.titleIconName;
79697
- },
79698
- get children() {
79699
- var _el$8 = _tmpl$2$7();
79700
- _el$8._$owner = getOwner();
79701
- createRenderEffect(() => _el$8.name = props.titleIconName);
79702
- return _el$8;
79703
- }
79704
- }), _el$9);
79705
- insert$1(_el$9, () => props.title);
79706
- _el$0.style.setProperty("-webkit-overflow-scrolling", "touch");
79707
- insert$1(_el$1, () => props.form);
79708
- insert$1(_el$, createComponent(Show, {
79709
- get when() {
79710
- return props.footer;
79711
- },
79712
- get children() {
79713
- var _el$10 = _tmpl$3$6(), _el$11 = _el$10.firstChild;
79714
- insert$1(_el$11, () => props.footer);
79715
- return _el$10;
79716
- }
79717
- }), null);
79718
- createRenderEffect((_p$) => {
79719
- var _v$ = props.closeTitle, _v$2 = closeDialogOpen();
79720
- _v$ !== _p$.e && (_el$2.label = _p$.e = _v$);
79721
- _v$2 !== _p$.t && (_el$2.open = _p$.t = _v$2);
79722
- return _p$;
79723
- }, {
79724
- e: void 0,
79725
- t: void 0
79726
- });
79727
- return _el$;
79728
- })();
79729
- };
79730
-
79731
- var _tmpl$$8 = /* @__PURE__ */ template$1(`<style>`), _tmpl$2$6 = /* @__PURE__ */ template$1(`<div>`), _tmpl$3$5 = /* @__PURE__ */ template$1(`<div class="bg-red-100 border border-red-400 text-red-700 px-4 py-3 rounded relative mb-4"role=alert><span class="block sm:inline">`), _tmpl$4$5 = /* @__PURE__ */ template$1(`<photon-patient-form slot=form>`, true, false, false);
79605
+ var _tmpl$$8 = /* @__PURE__ */ template$1(`<style>`), _tmpl$2$6 = /* @__PURE__ */ template$1(`<div>`), _tmpl$3$5 = /* @__PURE__ */ template$1(`<div class="bg-red-100 border border-red-400 text-red-700 px-4 py-3 rounded relative mb-4"role=alert><span class="block sm:inline">`);
79732
79606
  const PATIENT_FIELDS = gql$1`
79733
79607
  fragment PatientFields on Patient {
79734
79608
  id
79735
79609
  }
79736
79610
  `;
79611
+ const patientToFormValues = (patient) => ({
79612
+ firstName: patient?.name.first,
79613
+ lastName: patient?.name.last,
79614
+ dateOfBirth: patient?.dateOfBirth,
79615
+ sex: patient?.sex,
79616
+ gender: patient?.gender,
79617
+ phone: patient?.phone,
79618
+ email: patient?.email,
79619
+ address_street1: patient?.address?.street1,
79620
+ address_street2: patient?.address?.street2,
79621
+ address_city: patient?.address?.city,
79622
+ address_state: patient?.address?.state,
79623
+ address_zip: patient?.address?.postalCode,
79624
+ preferredPharmacy: patient?.preferredPharmacies?.[0]?.id
79625
+ });
79737
79626
  const Component$4 = (props) => {
79738
79627
  let ref;
79739
79628
  const client = usePhoton();
79740
79629
  const [loading, setLoading] = createSignal(false);
79741
79630
  const [isCreatePrescription, setIsCreatePrescription] = createSignal(false);
79742
- const [formStore, setFormStore] = createSignal(void 0);
79743
- const [selectedStore, setSelectedStore] = createSignal(void 0);
79744
- const [actions, setActions] = createSignal(void 0);
79745
79631
  const [globalError, setGlobalError] = createSignal(void 0);
79746
- const [hasAnyAddressField, setHasAnyAddressField] = createSignal(false);
79747
79632
  const [hasPatients, setHasPatients] = createSignal(false);
79633
+ const {
79634
+ store: pStore,
79635
+ actions: pActions
79636
+ } = PatientStore;
79637
+ const {
79638
+ store,
79639
+ actions
79640
+ } = createFormStore();
79748
79641
  onMount(async () => {
79749
79642
  try {
79750
79643
  const {
@@ -79759,6 +79652,39 @@ const Component$4 = (props) => {
79759
79652
  console.log(err);
79760
79653
  }
79761
79654
  });
79655
+ onCleanup(() => {
79656
+ pActions.clearSelectedPatient();
79657
+ });
79658
+ createEffect(() => {
79659
+ const patientId = props.patientId;
79660
+ untrack(() => {
79661
+ if (patientId) {
79662
+ pActions.getSelectedPatient(client.getSDK(), patientId);
79663
+ } else {
79664
+ pActions.clearSelectedPatient();
79665
+ }
79666
+ });
79667
+ });
79668
+ createEffect(() => {
79669
+ const values = patientToFormValues(props.patientId ? pStore.selectedPatient.data : void 0);
79670
+ for (const [key, value] of Object.entries(values)) {
79671
+ actions.updateFormValue({
79672
+ key,
79673
+ value
79674
+ });
79675
+ }
79676
+ });
79677
+ const hasAnyAddressField = createMemo(() => !!(store["address_street1"]?.value || store["address_street2"]?.value || store["address_city"]?.value || store["address_state"]?.value || store["address_zip"]?.value));
79678
+ const initialPreferredPharmacy = createMemo(() => {
79679
+ const pref = pStore.selectedPatient.data?.preferredPharmacies?.[0];
79680
+ if (!pref) return;
79681
+ return {
79682
+ ...pref,
79683
+ address: pref.address,
79684
+ isPrevious: true,
79685
+ isPreferred: true
79686
+ };
79687
+ });
79762
79688
  const dispatchUpdate = (patientId, didClickCreatePatientAndPrescription = false) => {
79763
79689
  const event = new CustomEvent("photon-patient-updated", {
79764
79690
  composed: true,
@@ -79796,7 +79722,7 @@ const Component$4 = (props) => {
79796
79722
  }, ref);
79797
79723
  }
79798
79724
  });
79799
- const submitForm = async (store, actions2, pStore, didClickCreatePatientAndPrescription = false) => {
79725
+ const submitForm = async (didClickCreatePatientAndPrescription = false) => {
79800
79726
  setGlobalError(void 0);
79801
79727
  setIsCreatePrescription(didClickCreatePatientAndPrescription);
79802
79728
  setLoading(true);
@@ -79804,8 +79730,8 @@ const Component$4 = (props) => {
79804
79730
  const addressKeys = ["address_street1", "address_city", "address_state", "address_zip"];
79805
79731
  const shouldValidateAddress = !props.optionalPatientAddress || hasAnyAddressField();
79806
79732
  const keys = shouldValidateAddress ? [...baseKeys, ...addressKeys] : baseKeys;
79807
- actions2.validate(keys);
79808
- if (actions2.hasErrors(keys)) {
79733
+ actions.validate(keys);
79734
+ if (actions.hasErrors(keys)) {
79809
79735
  setLoading(false);
79810
79736
  return true;
79811
79737
  }
@@ -79875,7 +79801,7 @@ const Component$4 = (props) => {
79875
79801
  }, ref);
79876
79802
  }
79877
79803
  setLoading(false);
79878
- actions2.resetStores();
79804
+ actions.reset();
79879
79805
  props.open = false;
79880
79806
  } catch (e) {
79881
79807
  setLoading(false);
@@ -79904,7 +79830,6 @@ const Component$4 = (props) => {
79904
79830
  })(), createComponent(PhotonFormWrapper, {
79905
79831
  onClosed: () => {
79906
79832
  dispatchClosed();
79907
- actions().resetStores();
79908
79833
  props.open = false;
79909
79834
  },
79910
79835
  get title() {
@@ -79913,6 +79838,9 @@ const Component$4 = (props) => {
79913
79838
  get titleIconName() {
79914
79839
  return props?.patientId ? "pencil-square" : "person-plus";
79915
79840
  },
79841
+ get hideHeaderOnIOSWebView() {
79842
+ return props.hideHeaderOnIosWebview;
79843
+ },
79916
79844
  get footer() {
79917
79845
  return [createComponent(Show, {
79918
79846
  get when() {
@@ -79928,7 +79856,7 @@ const Component$4 = (props) => {
79928
79856
  get loading() {
79929
79857
  return memo$2(() => !!loading())() && isCreatePrescription();
79930
79858
  },
79931
- onClick: () => submitForm(formStore(), actions(), selectedStore(), true),
79859
+ onClick: () => submitForm(true),
79932
79860
  get children() {
79933
79861
  return [memo$2(() => props?.patientId ? "Save" : "Create"), " and start prescription"];
79934
79862
  }
@@ -79951,7 +79879,7 @@ const Component$4 = (props) => {
79951
79879
  get loading() {
79952
79880
  return memo$2(() => !!loading())() && !isCreatePrescription();
79953
79881
  },
79954
- onClick: () => submitForm(formStore(), actions(), selectedStore(), false),
79882
+ onClick: () => submitForm(false),
79955
79883
  get children() {
79956
79884
  return props?.patientId ? "Save" : "Create";
79957
79885
  }
@@ -79969,29 +79897,22 @@ const Component$4 = (props) => {
79969
79897
  insert$1(_el$4, globalError);
79970
79898
  return _el$3;
79971
79899
  }
79972
- }), (() => {
79973
- var _el$5 = _tmpl$4$5();
79974
- addEventListener$1(_el$5, "photon-form-updated", (e) => {
79975
- setFormStore(e.detail.form);
79976
- setActions(Object.assign({}, e.detail.actions, {
79977
- resetStores: e.detail.reset
79978
- }));
79979
- setSelectedStore(e.detail.selected);
79980
- const form = e.detail.form;
79981
- setHasAnyAddressField(!!(form["address_street1"]?.value || form["address_street2"]?.value || form["address_city"]?.value || form["address_state"]?.value || form["address_zip"]?.value));
79982
- });
79983
- _el$5._$owner = getOwner();
79984
- createRenderEffect((_p$) => {
79985
- var _v$ = props.patientId, _v$2 = props.optionalPatientAddress;
79986
- _v$ !== _p$.e && (_el$5.patientId = _p$.e = _v$);
79987
- _v$2 !== _p$.t && (_el$5.optionalPatientAddress = _p$.t = _v$2);
79988
- return _p$;
79989
- }, {
79990
- e: void 0,
79991
- t: void 0
79992
- });
79993
- return _el$5;
79994
- })()];
79900
+ }), createComponent(PatientForm, {
79901
+ store,
79902
+ actions,
79903
+ get patientId() {
79904
+ return props.patientId;
79905
+ },
79906
+ get optionalPatientAddress() {
79907
+ return props.optionalPatientAddress;
79908
+ },
79909
+ get initialPatientLoading() {
79910
+ return props.patientId ? !pStore.selectedPatient.data : false;
79911
+ },
79912
+ get initialPreferredPharmacy() {
79913
+ return initialPreferredPharmacy();
79914
+ }
79915
+ })];
79995
79916
  }
79996
79917
  })];
79997
79918
  }
@@ -80005,7 +79926,8 @@ customElement("photon-patient-dialog", {
80005
79926
  patientId: "",
80006
79927
  hideCreatePrescription: false,
80007
79928
  open: false,
80008
- optionalPatientAddress: false
79929
+ optionalPatientAddress: false,
79930
+ hideHeaderOnIosWebview: false
80009
79931
  }, Component$4);
80010
79932
 
80011
79933
  var _tmpl$$7 = /* @__PURE__ */ template$1(`<photon-patient-dialog>`, true, false, false);
@@ -84733,6 +84655,9 @@ const Component = (props) => {
84733
84655
  checkShouldWarn: () => shouldWarn(form),
84734
84656
  title: "New prescriptions",
84735
84657
  titleIconName: "prescription",
84658
+ get hideHeaderOnIOSWebView() {
84659
+ return props.hideHeaderOnIosWebview;
84660
+ },
84736
84661
  get footer() {
84737
84662
  return memo$2(() => !!hideOrderButton())() ? null : memo$2(() => !!props.enableOrder)() ? createComponent(Button, {
84738
84663
  "class": "w-full xs:w-fit",
@@ -84889,6 +84814,7 @@ customElement("photon-multirx-form-wrapper", {
84889
84814
  enableOrder: false,
84890
84815
  toastBuffer: 0,
84891
84816
  externalOrderId: void 0,
84892
- optionalPatientAddress: false
84817
+ optionalPatientAddress: false,
84818
+ hideHeaderOnIosWebview: false
84893
84819
  }, Component);
84894
84820
  //# sourceMappingURL=index.mjs.map