@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.js CHANGED
@@ -41992,7 +41992,7 @@ function clickOutside(el, accessor) {
41992
41992
  onCleanup(() => document.body.removeEventListener("click", onClick));
41993
41993
  }
41994
41994
 
41995
- 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">`);
41995
+ 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">`);
41996
41996
  const ComboBoxContext = createContext([{
41997
41997
  open: false,
41998
41998
  selected: {},
@@ -42089,7 +42089,7 @@ function ComboOption(props) {
42089
42089
  const active = () => state.active === props.key;
42090
42090
  if (props.disabled) {
42091
42091
  return (() => {
42092
- var _el$4 = _tmpl$4$d$1(), _el$5 = _el$4.firstChild;
42092
+ var _el$4 = _tmpl$4$d(), _el$5 = _el$4.firstChild;
42093
42093
  insert(_el$5, (() => {
42094
42094
  var _c$ = memo$1(() => !!props.render);
42095
42095
  return () => _c$() ? createComponent(Dynamic, {
@@ -42108,7 +42108,7 @@ function ComboOption(props) {
42108
42108
  })();
42109
42109
  }
42110
42110
  return (() => {
42111
- var _el$6 = _tmpl$5$8(), _el$7 = _el$6.firstChild;
42111
+ var _el$6 = _tmpl$5$8$1(), _el$7 = _el$6.firstChild;
42112
42112
  _el$6.addEventListener("mouseleave", () => setActive(""));
42113
42113
  _el$6.addEventListener("mouseenter", () => setActive(props.key));
42114
42114
  _el$6.$$click = () => setSelected(props.value);
@@ -53266,6 +53266,8 @@ const ListPharmaciesQuery = gql`
53266
53266
  }
53267
53267
  `;
53268
53268
 
53269
+ const formatPatientWeight = (weight, weightUnit = "lb") => `Patient weight: ${weight} ${weightUnit}`;
53270
+
53269
53271
  const DraftPrescriptionsContext = createContext();
53270
53272
  const transformPrescriptionFormData = (prescription, patientId) => ({
53271
53273
  externalId: prescription.externalId,
@@ -53286,16 +53288,24 @@ function isTreatmentInDraftPrescriptions(treatmentId, draftedPrescriptions) {
53286
53288
  }
53287
53289
  const createPrefillPrescriptionsOnApi = async ({
53288
53290
  client,
53289
- props
53291
+ props,
53292
+ rxNotesPrefill
53290
53293
  }) => {
53291
53294
  let rxToCreate = [];
53292
53295
  if (props.templateIdsPrefill.length > 0) {
53293
53296
  const dedupedTemplateIds = Array.from(new Set(props.templateIdsPrefill));
53294
- const templatedCreateRxList = dedupedTemplateIds.map((templateId) => ({
53295
- ...props.templateOverrides?.[templateId],
53296
- patientId: props.patientId,
53297
- templateId
53298
- }));
53297
+ const templatedCreateRxList = dedupedTemplateIds.map((templateId) => {
53298
+ const templateOverrideNotes = props.templateOverrides?.[templateId]?.notes;
53299
+ const notes = templateOverrideNotes ? `${templateOverrideNotes}
53300
+
53301
+ ${rxNotesPrefill}` : rxNotesPrefill;
53302
+ return {
53303
+ ...props.templateOverrides?.[templateId],
53304
+ patientId: props.patientId,
53305
+ templateId,
53306
+ notes
53307
+ };
53308
+ });
53299
53309
  rxToCreate = rxToCreate.concat(templatedCreateRxList);
53300
53310
  }
53301
53311
  if (props.prescriptionIdsPrefill.length > 0) {
@@ -53335,6 +53345,14 @@ const DraftPrescriptionsProvider = (props) => {
53335
53345
  const [isLoadingPrefills, setIsLoadingPrefills] = createSignal(false);
53336
53346
  const [draftPrescriptions, setDraftPrescriptions] = createSignal([]);
53337
53347
  const prescriptionIds = createMemo(() => draftPrescriptions().map((prescription) => prescription.id));
53348
+ const rxNotesPrefill = createMemo(() => {
53349
+ let notesPrefill = "";
53350
+ if (props.additionalNotes) notesPrefill = `${props.additionalNotes}
53351
+
53352
+ `;
53353
+ if (props.weight) notesPrefill = `${notesPrefill}${formatPatientWeight(props.weight, props.weightUnit)}`;
53354
+ return notesPrefill || void 0;
53355
+ });
53338
53356
  createEffect(async () => {
53339
53357
  if (
53340
53358
  // must have templateIds or prescriptionIds to create prescriptions
@@ -53347,7 +53365,8 @@ const DraftPrescriptionsProvider = (props) => {
53347
53365
  try {
53348
53366
  const newRxs = await createPrefillPrescriptionsOnApi({
53349
53367
  client,
53350
- props
53368
+ props,
53369
+ rxNotesPrefill: rxNotesPrefill()
53351
53370
  });
53352
53371
  if (newRxs) {
53353
53372
  setDraftPrescriptions((prev) => [...prev, ...newRxs]);
@@ -53486,6 +53505,7 @@ const DraftPrescriptionsProvider = (props) => {
53486
53505
  draftPrescriptions,
53487
53506
  prescriptionIds,
53488
53507
  isLoadingPrefills,
53508
+ rxNotesPrefill,
53489
53509
  // actions
53490
53510
  setDraftPrescriptions,
53491
53511
  tryCreatePrescription,
@@ -58384,7 +58404,7 @@ function checkHasPermission(subset, superset) {
58384
58404
  return subset.every((permission) => superset.includes(permission));
58385
58405
  }
58386
58406
 
58387
- const version$1 = "0.23.0";
58407
+ const version$1 = "0.23.2";
58388
58408
  const pkg = {
58389
58409
  version: version$1};
58390
58410
 
@@ -58602,7 +58622,7 @@ customElement("photon-client", {
58602
58622
  }
58603
58623
  }, Component$a);
58604
58624
 
58605
- 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}";
58625
+ 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}";
58606
58626
 
58607
58627
  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">`);
58608
58628
  const Component$9 = (props) => {
@@ -59153,7 +59173,7 @@ const shoelaceLightStyles = "\n\n:host {}\n\n:root,\n:host,\n.sl-theme-light {\n
59153
59173
 
59154
59174
  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}";
59155
59175
 
59156
- 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);
59176
+ 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);
59157
59177
  setBasePath("https://cdn.jsdelivr.net/npm/@shoelace-style/shoelace@2.4.0/dist/");
59158
59178
  const Component$7 = (props) => {
59159
59179
  const client = usePhoton();
@@ -59217,7 +59237,7 @@ const Component$7 = (props) => {
59217
59237
  return client && isLoading() && !props.hideLoader;
59218
59238
  },
59219
59239
  get children() {
59220
- var _el$6 = _tmpl$4$d(), _el$7 = _el$6.firstChild;
59240
+ var _el$6 = _tmpl$4$c(), _el$7 = _el$6.firstChild;
59221
59241
  _el$7.style.setProperty("font-size", "3rem");
59222
59242
  _el$7._$owner = getOwner();
59223
59243
  return _el$6;
@@ -66694,7 +66714,7 @@ const createPatientStore = () => {
66694
66714
  };
66695
66715
  const PatientStore = createPatientStore();
66696
66716
 
66697
- 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">`);
66717
+ 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">`);
66698
66718
  const hasUsableAddress$2 = (address) => {
66699
66719
  if (!address) {
66700
66720
  return false;
@@ -66794,7 +66814,7 @@ const PatientCard = (props) => {
66794
66814
  return hasPreferredPharmacy() && !hasAddress();
66795
66815
  });
66796
66816
  return (() => {
66797
- var _el$ = _tmpl$4$c();
66817
+ var _el$ = _tmpl$4$b();
66798
66818
  insert$1(_el$, createComponent(Show, {
66799
66819
  get when() {
66800
66820
  return !props?.patientId;
@@ -67101,8 +67121,6 @@ const clearForm = (actions, overrides) => {
67101
67121
  });
67102
67122
  };
67103
67123
 
67104
- const formatPatientWeight = (weight, weightUnit = "lb") => `Patient weight: ${weight} ${weightUnit}`;
67105
-
67106
67124
  var PrescriptionState = /* @__PURE__ */ ((PrescriptionState2) => {
67107
67125
  PrescriptionState2["Draft"] = "DRAFT";
67108
67126
  PrescriptionState2["Active"] = "ACTIVE";
@@ -73125,7 +73143,7 @@ const repopulateForm = (actions, draft) => {
73125
73143
  }
73126
73144
  };
73127
73145
 
73128
- 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);
73146
+ 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);
73129
73147
  function getPrescriptionRoutingConstraints(routingConstraints) {
73130
73148
  const map = /* @__PURE__ */ new Map();
73131
73149
  for (const constraint of routingConstraints) {
@@ -73316,7 +73334,7 @@ const DraftPrescriptions = (props) => {
73316
73334
  createRenderEffect(() => _el$3.open = editDialogOpen());
73317
73335
  return _el$3;
73318
73336
  })(), (() => {
73319
- var _el$4 = _tmpl$4$b();
73337
+ var _el$4 = _tmpl$4$a();
73320
73338
  addEventListener$1(_el$4, "photon-dialog-alt", handleDeleteCancel);
73321
73339
  addEventListener$1(_el$4, "photon-dialog-canceled", handleDeleteCancel);
73322
73340
  addEventListener$1(_el$4, "photon-dialog-confirmed", handleDeleteConfirm);
@@ -73349,7 +73367,7 @@ function toFormData(coverageOption) {
73349
73367
  }
73350
73368
 
73351
73369
  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);
73352
- const validators = {
73370
+ const validators$1 = {
73353
73371
  treatment: message(record(string(), any()), "Please select a treatment"),
73354
73372
  dispenseQuantity: message(min$1(number(), 0, {
73355
73373
  exclusive: true
@@ -73374,7 +73392,7 @@ const DraftPrescriptionForm = (props) => {
73374
73392
  const [searchText, setSearchText] = createSignal("");
73375
73393
  const [isLoading, setIsLoading] = createSignal(false);
73376
73394
  onMount(() => {
73377
- for (const [k, v] of Object.entries(validators)) {
73395
+ for (const [k, v] of Object.entries(validators$1)) {
73378
73396
  props.actions.registerValidator({
73379
73397
  key: k,
73380
73398
  validator: v
@@ -73413,7 +73431,7 @@ const DraftPrescriptionForm = (props) => {
73413
73431
  };
73414
73432
  const handleAddPrescription = async () => {
73415
73433
  setIsLoading(true);
73416
- const keys = Object.keys(validators);
73434
+ const keys = Object.keys(validators$1);
73417
73435
  props.actions.validate(keys);
73418
73436
  const errorsPresent = props.actions.hasErrors(keys);
73419
73437
  if (errorsPresent) {
@@ -73858,7 +73876,7 @@ const DraftPrescriptionForm = (props) => {
73858
73876
  },
73859
73877
  variant: "primary",
73860
73878
  color: "blue",
73861
- children: "Add to drafts"
73879
+ children: "Add prescription"
73862
73880
  }), null);
73863
73881
  insert$1(_el$9, createComponent(Show, {
73864
73882
  get when() {
@@ -76437,7 +76455,7 @@ const PhotonTooltip = (p) => {
76437
76455
  })()];
76438
76456
  };
76439
76457
 
76440
- 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>`);
76458
+ 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>`);
76441
76459
  const PrescriptionCard = (props) => {
76442
76460
  let prescriptionFormRef;
76443
76461
  let prescriptionsCardRef;
@@ -76481,7 +76499,7 @@ const PrescriptionCard = (props) => {
76481
76499
  }), null);
76482
76500
  return _el$;
76483
76501
  })(), (() => {
76484
- var _el$2 = _tmpl$4$a();
76502
+ var _el$2 = _tmpl$4$9();
76485
76503
  insert$1(_el$2, createComponent(Show, {
76486
76504
  get when() {
76487
76505
  return isLoadingPrefills();
@@ -76596,7 +76614,7 @@ const PrescriptionCard = (props) => {
76596
76614
  });
76597
76615
  };
76598
76616
 
76599
- 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...`);
76617
+ 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...`);
76600
76618
  const hasUsableAddress$1 = (address) => {
76601
76619
  if (!address) {
76602
76620
  return false;
@@ -76638,7 +76656,8 @@ function PrescribeWorkflow(props) {
76638
76656
  draftPrescriptions,
76639
76657
  prescriptionIds,
76640
76658
  tryUpdatePrescriptionStates,
76641
- isLoadingPrefills
76659
+ isLoadingPrefills,
76660
+ rxNotesPrefill
76642
76661
  } = useDraftPrescriptions();
76643
76662
  const pharmacySelectionContext = usePharmacySelectionContext();
76644
76663
  const {
@@ -76673,15 +76692,6 @@ function PrescribeWorkflow(props) {
76673
76692
  return fulfillmentNeedsAddress$1(pharmacySelectionContext.fulfillmentType()) && !hasPatientAddress();
76674
76693
  });
76675
76694
  const [isScreeningAlertWarningOpen, setIsScreeningAlertWarningOpen] = createSignal(false);
76676
- let prefillNotes = "";
76677
- if (props.additionalNotes) {
76678
- prefillNotes = `${props.additionalNotes}
76679
-
76680
- `;
76681
- }
76682
- if (props.weight) {
76683
- prefillNotes = `${prefillNotes}${formatPatientWeight(props.weight, props.weightUnit)}`;
76684
- }
76685
76695
  onMount(async () => {
76686
76696
  if (props.address) {
76687
76697
  props.formActions.updateFormValue({
@@ -76691,7 +76701,7 @@ function PrescribeWorkflow(props) {
76691
76701
  }
76692
76702
  ref.addEventListener("photon-ticket-created-duplicate", () => {
76693
76703
  clearForm(props.formActions, {
76694
- notes: prefillNotes
76704
+ notes: rxNotesPrefill()
76695
76705
  });
76696
76706
  pharmacySelectionContext.setFulfillmentType(void 0);
76697
76707
  pharmacySelectionContext.setPharmacyId(void 0);
@@ -76968,7 +76978,7 @@ function PrescribeWorkflow(props) {
76968
76978
  return !props.patientId || props.patientId === props.formStore.patient?.value?.id || props.patientId === props.formStore.patient?.value?.externalId;
76969
76979
  });
76970
76980
  return (() => {
76971
- var _el$ = _tmpl$4$9(), _el$2 = _el$.firstChild, _el$3 = _el$2.firstChild;
76981
+ var _el$ = _tmpl$4$8(), _el$2 = _el$.firstChild, _el$3 = _el$2.firstChild;
76972
76982
  var _ref$ = ref;
76973
76983
  typeof _ref$ === "function" ? use$1(_ref$, _el$) : ref = _el$;
76974
76984
  insert$1(_el$, createComponent(Show, {
@@ -77123,7 +77133,9 @@ function PrescribeWorkflow(props) {
77123
77133
  get weightUnit() {
77124
77134
  return props.weightUnit;
77125
77135
  },
77126
- prefillNotes,
77136
+ get prefillNotes() {
77137
+ return rxNotesPrefill();
77138
+ },
77127
77139
  screenDraftedPrescriptions,
77128
77140
  get screeningAlerts() {
77129
77141
  return screeningAlerts();
@@ -77204,7 +77216,7 @@ function PrescribeWorkflow(props) {
77204
77216
  }
77205
77217
  }), createComponent(Show, {
77206
77218
  get when() {
77207
- return !props.hideSubmit;
77219
+ return memo$2(() => !!!props.hideSubmit)() && draftPrescriptions().length > 0;
77208
77220
  },
77209
77221
  get children() {
77210
77222
  return [createComponent(Show, {
@@ -77218,7 +77230,7 @@ function PrescribeWorkflow(props) {
77218
77230
  return errors();
77219
77231
  },
77220
77232
  get fallback() {
77221
- return _tmpl$5$7();
77233
+ return _tmpl$5$8();
77222
77234
  },
77223
77235
  children: ({
77224
77236
  key,
@@ -78074,6 +78086,15 @@ const PhotonPrescribeWorkflowComponent = (props) => {
78074
78086
  get enableCombineAndDuplicate() {
78075
78087
  return props.enableCombineAndDuplicate;
78076
78088
  },
78089
+ get additionalNotes() {
78090
+ return props.additionalNotes;
78091
+ },
78092
+ get weight() {
78093
+ return props.weight;
78094
+ },
78095
+ get weightUnit() {
78096
+ return props.weightUnit;
78097
+ },
78077
78098
  get children() {
78078
78099
  return createComponent(PharmacySelectionProvider, {
78079
78100
  get pharmacyIdProp() {
@@ -78239,7 +78260,7 @@ customElement("photon-prescribe-workflow", {
78239
78260
  groupId: void 0
78240
78261
  }, PhotonPrescribeWorkflowComponent);
78241
78262
 
78242
- 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>`);
78263
+ 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>`);
78243
78264
  const Component$6 = (props) => {
78244
78265
  const [isCollapsed, setIsCollapsed] = createSignal(true);
78245
78266
  let titleElement = null;
@@ -78267,9 +78288,9 @@ const Component$6 = (props) => {
78267
78288
  insert$1(_el$3, tailwind);
78268
78289
  return _el$3;
78269
78290
  })(), (() => {
78270
- var _el$4 = _tmpl$4$8();
78291
+ var _el$4 = _tmpl$4$7();
78271
78292
  insert$1(_el$4, titleElement || collapsableElement ? (() => {
78272
- var _el$5 = _tmpl$5$6();
78293
+ var _el$5 = _tmpl$5$7();
78273
78294
  insert$1(_el$5, titleElement, null);
78274
78295
  insert$1(_el$5, collapsableElement, null);
78275
78296
  return _el$5;
@@ -79074,187 +79095,120 @@ customElement("photon-dialog", {
79074
79095
  overlayClose: false
79075
79096
  }, Component$5);
79076
79097
 
79077
- 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>`);
79078
- const getPatientAddress = (pStore, store) => {
79079
- const patientAddress = pStore.selectedPatient.data?.address;
79080
- if (store["address_zip"]?.value && isZip(store["address_zip"]?.value) && store["address_zip"]?.value != patientAddress?.postalCode) {
79081
- return store["address_zip"]?.value;
79082
- }
79083
- if (patientAddress) {
79084
- return `${patientAddress.street1} ${patientAddress.street2 ?? ""} ${patientAddress.city}, ${patientAddress.state} ${patientAddress.postalCode}`;
79085
- }
79086
- return "";
79098
+ 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);
79099
+ const PhotonFormWrapper = (p) => {
79100
+ const props = mergeProps({
79101
+ closeTitle: "Lose unsaved changes?",
79102
+ closeBody: "You will not be able to recover unsaved changes.",
79103
+ checkShouldWarn: () => false
79104
+ }, p);
79105
+ let ref;
79106
+ const [closeDialogOpen, onCloseDialogOpen] = createSignal(false);
79107
+ const handleConfirm = () => {
79108
+ onCloseDialogOpen(false);
79109
+ props.onClosed();
79110
+ };
79111
+ const handleCancel = () => onCloseDialogOpen(false);
79112
+ return (() => {
79113
+ var _el$ = _tmpl$5$6(), _el$2 = _el$.firstChild, _el$3 = _el$2.firstChild, _el$0 = _el$2.nextSibling, _el$1 = _el$0.firstChild;
79114
+ var _ref$ = ref;
79115
+ typeof _ref$ === "function" ? use$1(_ref$, _el$) : ref = _el$;
79116
+ addEventListener$1(_el$2, "photon-dialog-alt", handleCancel);
79117
+ addEventListener$1(_el$2, "photon-dialog-canceled", handleCancel);
79118
+ addEventListener$1(_el$2, "photon-dialog-confirmed", handleConfirm);
79119
+ _el$2._$owner = getOwner();
79120
+ insert$1(_el$3, () => props.closeBody);
79121
+ insert$1(_el$, createComponent(Show, {
79122
+ get when() {
79123
+ return !(props.hideHeaderOnIOSWebView && IS_KNOWN_NATIVE_WEBVIEW);
79124
+ },
79125
+ get children() {
79126
+ var _el$4 = _tmpl$3$7(), _el$5 = _el$4.firstChild, _el$7 = _el$5.nextSibling, _el$9 = _el$7.firstChild;
79127
+ insert$1(_el$5, createComponent(Button, {
79128
+ variant: "naked",
79129
+ size: "sm",
79130
+ onClick: () => {
79131
+ if (props.checkShouldWarn()) {
79132
+ onCloseDialogOpen(true);
79133
+ } else {
79134
+ props.onClosed();
79135
+ }
79136
+ },
79137
+ get children() {
79138
+ var _el$6 = _tmpl$$a();
79139
+ insert$1(_el$6, createComponent(Icon, {
79140
+ name: "xMark"
79141
+ }));
79142
+ return _el$6;
79143
+ }
79144
+ }));
79145
+ insert$1(_el$7, createComponent(Show, {
79146
+ get when() {
79147
+ return props.titleIconName;
79148
+ },
79149
+ get children() {
79150
+ var _el$8 = _tmpl$2$8();
79151
+ _el$8._$owner = getOwner();
79152
+ createRenderEffect(() => _el$8.name = props.titleIconName);
79153
+ return _el$8;
79154
+ }
79155
+ }), _el$9);
79156
+ insert$1(_el$9, () => props.title);
79157
+ return _el$4;
79158
+ }
79159
+ }), _el$0);
79160
+ _el$0.style.setProperty("-webkit-overflow-scrolling", "touch");
79161
+ insert$1(_el$1, () => props.form);
79162
+ insert$1(_el$, createComponent(Show, {
79163
+ get when() {
79164
+ return props.footer;
79165
+ },
79166
+ get children() {
79167
+ var _el$10 = _tmpl$4$6(), _el$11 = _el$10.firstChild;
79168
+ insert$1(_el$11, () => props.footer);
79169
+ return _el$10;
79170
+ }
79171
+ }), null);
79172
+ createRenderEffect((_p$) => {
79173
+ var _v$ = props.closeTitle, _v$2 = closeDialogOpen();
79174
+ _v$ !== _p$.e && (_el$2.label = _p$.e = _v$);
79175
+ _v$2 !== _p$.t && (_el$2.open = _p$.t = _v$2);
79176
+ return _p$;
79177
+ }, {
79178
+ e: void 0,
79179
+ t: void 0
79180
+ });
79181
+ return _el$;
79182
+ })();
79183
+ };
79184
+ const IS_KNOWN_NATIVE_WEBVIEW = typeof window !== "undefined" && window.__photonHideHeader === true;
79185
+
79186
+ 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">`);
79187
+ const validators = {
79188
+ firstName: message(size$2(string(), 1, Infinity), "Please enter a first name."),
79189
+ lastName: message(size$2(string(), 1, Infinity), "Please enter a last name."),
79190
+ dateOfBirth: message(notFutureDate, "Please enter a valid date of birth."),
79191
+ sex: message(enums(SEX_OPTIONS.map((o) => o.value)), "Please enter Sex at Birth."),
79192
+ phone: message(size$2(string(), 12), "Please enter a valid mobile number."),
79193
+ email: message(union([email(), empty()]), "Please enter a valid email."),
79194
+ address_street1: message(size$2(string(), 1, Infinity), "Please enter a valid Street 1."),
79195
+ address_city: message(size$2(string(), 1, Infinity), "Please enter a valid City."),
79196
+ address_state: message(size$2(string(), 2, 2), "Please enter a valid State."),
79197
+ address_zip: message(zipString(), "Please enter a valid zip code.")
79087
79198
  };
79088
79199
  const PatientForm = (props) => {
79089
79200
  let ref;
79090
- const client = usePhoton();
79091
79201
  const [showOptionalFields, setShowOptionalFields] = createSignal(false);
79092
- const {
79093
- store: pStore,
79094
- actions: pActions
79095
- } = PatientStore;
79096
- const {
79097
- store,
79098
- actions
79099
- } = createFormStore({
79100
- firstName: void 0,
79101
- lastName: void 0,
79102
- dateOfBirth: void 0,
79103
- phone: void 0,
79104
- gender: void 0,
79105
- sex: void 0,
79106
- email: void 0,
79107
- address_street1: void 0,
79108
- address_street2: void 0,
79109
- address_city: void 0,
79110
- address_state: void 0,
79111
- address_zip: void 0,
79112
- preferredPharmacy: void 0
79113
- });
79114
- actions.registerValidator({
79115
- key: "firstName",
79116
- validator: message(size$2(string(), 1, Infinity), "Please enter a first name.")
79117
- });
79118
- actions.registerValidator({
79119
- key: "lastName",
79120
- validator: message(size$2(string(), 1, Infinity), "Please enter a last name.")
79121
- });
79122
- actions.registerValidator({
79123
- key: "dateOfBirth",
79124
- validator: message(notFutureDate, "Please enter a valid date of birth.")
79125
- });
79126
- actions.registerValidator({
79127
- key: "sex",
79128
- validator: message(enums(SEX_OPTIONS.map((o) => o.value)), "Please enter Sex at Birth.")
79129
- });
79130
- actions.registerValidator({
79131
- key: "phone",
79132
- validator: message(size$2(string(), 12), "Please enter a valid mobile number.")
79133
- });
79134
- actions.registerValidator({
79135
- key: "email",
79136
- validator: message(union([email(), empty()]), "Please enter a valid email.")
79137
- });
79138
- actions.registerValidator({
79139
- key: "address_street1",
79140
- validator: message(size$2(string(), 1, Infinity), "Please enter a valid Street 1.")
79141
- });
79142
- actions.registerValidator({
79143
- key: "address_city",
79144
- validator: message(size$2(string(), 1, Infinity), "Please enter a valid City.")
79145
- });
79146
- actions.registerValidator({
79147
- key: "address_state",
79148
- validator: message(size$2(string(), 2, 2), "Please enter a valid State.")
79149
- });
79150
- actions.registerValidator({
79151
- key: "address_zip",
79152
- validator: message(zipString(), "Please enter a valid zip code.")
79153
- });
79154
79202
  onMount(() => {
79155
- if (props.patientId) {
79156
- pActions.getSelectedPatient(client.getSDK(), props.patientId);
79157
- } else {
79158
- pActions.clearSelectedPatient();
79159
- }
79160
- });
79161
- const dispatchFormUpdated = (form) => {
79162
- const event = new CustomEvent("photon-form-updated", {
79163
- composed: true,
79164
- bubbles: true,
79165
- detail: {
79166
- form,
79167
- actions,
79168
- selected: pStore,
79169
- optionalPatientAddress: props.optionalPatientAddress,
79170
- reset: () => {
79171
- actions.reset();
79172
- pActions.reset();
79173
- }
79174
- }
79175
- });
79176
- ref?.dispatchEvent(event);
79177
- };
79178
- createEffect(() => {
79179
- if (pStore.selectedPatient.data) {
79180
- actions.updateFormValue({
79181
- key: "firstName",
79182
- value: pStore.selectedPatient.data.name.first
79183
- });
79184
- actions.updateFormValue({
79185
- key: "lastName",
79186
- value: pStore.selectedPatient.data.name.last
79187
- });
79188
- actions.updateFormValue({
79189
- key: "dateOfBirth",
79190
- value: pStore.selectedPatient.data.dateOfBirth
79191
- });
79192
- actions.updateFormValue({
79193
- key: "phone",
79194
- value: pStore.selectedPatient.data.phone
79195
- });
79196
- actions.updateFormValue({
79197
- key: "gender",
79198
- value: pStore.selectedPatient.data.gender
79199
- });
79200
- actions.updateFormValue({
79201
- key: "sex",
79202
- value: pStore.selectedPatient.data.sex
79203
- });
79204
- actions.updateFormValue({
79205
- key: "email",
79206
- value: pStore.selectedPatient.data.email
79207
- });
79208
- actions.updateFormValue({
79209
- key: "address_street1",
79210
- value: pStore.selectedPatient.data.address?.street1
79211
- });
79212
- actions.updateFormValue({
79213
- key: "address_street2",
79214
- value: pStore.selectedPatient.data.address?.street2
79215
- });
79216
- actions.updateFormValue({
79217
- key: "address_city",
79218
- value: pStore.selectedPatient.data.address?.city
79219
- });
79220
- actions.updateFormValue({
79221
- key: "address_state",
79222
- value: pStore.selectedPatient.data.address?.state
79223
- });
79224
- actions.updateFormValue({
79225
- key: "address_zip",
79226
- value: pStore.selectedPatient.data.address?.postalCode
79227
- });
79228
- actions.updateFormValue({
79229
- key: "preferredPharmacy",
79230
- value: pStore.selectedPatient.data.preferredPharmacies?.[0]?.id
79203
+ for (const [k, v] of Object.entries(validators)) {
79204
+ props.actions.registerValidator({
79205
+ key: k,
79206
+ validator: v
79231
79207
  });
79232
79208
  }
79233
79209
  });
79234
- const hasAnyAddressField = createMemo(() => {
79235
- return !!(store["address_street1"]?.value || store["address_street2"]?.value || store["address_city"]?.value || store["address_state"]?.value || store["address_zip"]?.value);
79236
- });
79237
- createEffect(() => {
79238
- dispatchFormUpdated(store);
79239
- });
79240
- onCleanup(() => {
79241
- pActions.clearSelectedPatient();
79242
- actions.reset();
79243
- });
79244
- const preferredPharmacy = createMemo(() => {
79245
- const pref = pStore.selectedPatient.data?.preferredPharmacies?.[0];
79246
- if (!pref) return;
79247
- const address = pref.address;
79248
- const prefOption = {
79249
- ...pref,
79250
- address,
79251
- isPrevious: true,
79252
- isPreferred: true
79253
- };
79254
- return prefOption;
79255
- });
79256
- const formName = props.patientId ? "update_patient_form" : "new_patient_form";
79257
79210
  const trackFieldInteraction = (fieldName, hasValue, isOptional = false) => {
79211
+ const formName = props.patientId ? "update_patient_form" : "new_patient_form";
79258
79212
  dispatchAnalyticsTrackEvent("fieldInteraction", {
79259
79213
  name: "Field Interaction",
79260
79214
  formName,
@@ -79263,23 +79217,26 @@ const PatientForm = (props) => {
79263
79217
  isOptional
79264
79218
  }, ref);
79265
79219
  };
79220
+ const hasAnyAddressField = createMemo(() => {
79221
+ 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);
79222
+ });
79223
+ const isAddressRequired = createMemo(() => !props.optionalPatientAddress || hasAnyAddressField());
79266
79224
  const AddressFields = () => {
79267
- const isAddressRequired = createMemo(() => !props.optionalPatientAddress || hasAnyAddressField());
79268
79225
  return [(() => {
79269
- var _el$ = _tmpl$2$8(); _el$.firstChild;
79226
+ var _el$ = _tmpl$2$7(); _el$.firstChild;
79270
79227
  insert$1(_el$, createComponent(Show, {
79271
79228
  get when() {
79272
- return memo$2(() => !!props.optionalPatientAddress)() && !hasAnyAddressField();
79229
+ return !isAddressRequired();
79273
79230
  },
79274
79231
  get children() {
79275
- return _tmpl$$a();
79232
+ return _tmpl$$9();
79276
79233
  }
79277
79234
  }), null);
79278
79235
  return _el$;
79279
79236
  })(), createComponent(InputGroup, {
79280
79237
  label: "Street 1",
79281
79238
  get error() {
79282
- return store["address_street1"]?.error;
79239
+ return props.store["address_street1"]?.error;
79283
79240
  },
79284
79241
  get required() {
79285
79242
  return isAddressRequired();
@@ -79287,33 +79244,33 @@ const PatientForm = (props) => {
79287
79244
  get children() {
79288
79245
  return createComponent(AddressAutocompleteInput, {
79289
79246
  get value() {
79290
- return store["address_street1"]?.value ?? pStore.selectedPatient.data?.address?.street1;
79247
+ return props.store["address_street1"]?.value;
79291
79248
  },
79292
79249
  onInput: (e) => {
79293
- actions.updateFormValue({
79250
+ props.actions.updateFormValue({
79294
79251
  key: "address_street1",
79295
79252
  value: e.currentTarget.value
79296
79253
  });
79297
79254
  },
79298
79255
  onBlur: (e) => trackFieldInteraction("address_street1", Boolean(e.currentTarget.value), true),
79299
79256
  onAddressSelect: (address) => {
79300
- actions.updateFormValue({
79257
+ props.actions.updateFormValue({
79301
79258
  key: "address_street1",
79302
79259
  value: address.street1
79303
79260
  });
79304
- actions.updateFormValue({
79261
+ props.actions.updateFormValue({
79305
79262
  key: "address_street2",
79306
79263
  value: address.street2
79307
79264
  });
79308
- actions.updateFormValue({
79265
+ props.actions.updateFormValue({
79309
79266
  key: "address_city",
79310
79267
  value: address.city
79311
79268
  });
79312
- actions.updateFormValue({
79269
+ props.actions.updateFormValue({
79313
79270
  key: "address_state",
79314
79271
  value: address.state
79315
79272
  });
79316
- actions.updateFormValue({
79273
+ props.actions.updateFormValue({
79317
79274
  key: "address_zip",
79318
79275
  value: address.postalCode
79319
79276
  });
@@ -79323,15 +79280,15 @@ const PatientForm = (props) => {
79323
79280
  }), createComponent(InputGroup, {
79324
79281
  label: "Street 2",
79325
79282
  get error() {
79326
- return store["address_street2"]?.error;
79283
+ return props.store["address_street2"]?.error;
79327
79284
  },
79328
79285
  get children() {
79329
79286
  return createComponent(Input, {
79330
79287
  get value() {
79331
- return store["address_street2"]?.value ?? pStore.selectedPatient.data?.address?.street2;
79288
+ return props.store["address_street2"]?.value;
79332
79289
  },
79333
79290
  onInput: (e) => {
79334
- actions.updateFormValue({
79291
+ props.actions.updateFormValue({
79335
79292
  key: "address_street2",
79336
79293
  value: e.currentTarget.value
79337
79294
  });
@@ -79342,7 +79299,7 @@ const PatientForm = (props) => {
79342
79299
  }), createComponent(InputGroup, {
79343
79300
  label: "City",
79344
79301
  get error() {
79345
- return store["address_city"]?.error;
79302
+ return props.store["address_city"]?.error;
79346
79303
  },
79347
79304
  get required() {
79348
79305
  return isAddressRequired();
@@ -79350,10 +79307,10 @@ const PatientForm = (props) => {
79350
79307
  get children() {
79351
79308
  return createComponent(Input, {
79352
79309
  get value() {
79353
- return store["address_city"]?.value ?? pStore.selectedPatient.data?.address?.city;
79310
+ return props.store["address_city"]?.value;
79354
79311
  },
79355
79312
  onInput: (e) => {
79356
- actions.updateFormValue({
79313
+ props.actions.updateFormValue({
79357
79314
  key: "address_city",
79358
79315
  value: e.currentTarget.value
79359
79316
  });
@@ -79362,11 +79319,11 @@ const PatientForm = (props) => {
79362
79319
  });
79363
79320
  }
79364
79321
  }), (() => {
79365
- var _el$4 = _tmpl$3$7(), _el$5 = _el$4.firstChild, _el$6 = _el$5.nextSibling;
79322
+ var _el$4 = _tmpl$3$6(), _el$5 = _el$4.firstChild, _el$6 = _el$5.nextSibling;
79366
79323
  insert$1(_el$5, createComponent(InputGroup, {
79367
79324
  label: "State",
79368
79325
  get error() {
79369
- return store["address_state"]?.error;
79326
+ return props.store["address_state"]?.error;
79370
79327
  },
79371
79328
  get required() {
79372
79329
  return isAddressRequired();
@@ -79374,10 +79331,10 @@ const PatientForm = (props) => {
79374
79331
  get children() {
79375
79332
  return createComponent(StateSelect, {
79376
79333
  get value() {
79377
- return store["address_state"]?.value ?? pStore.selectedPatient.data?.address?.state;
79334
+ return props.store["address_state"]?.value;
79378
79335
  },
79379
79336
  onChange: (e) => {
79380
- actions.updateFormValue({
79337
+ props.actions.updateFormValue({
79381
79338
  key: "address_state",
79382
79339
  value: e.currentTarget.value
79383
79340
  });
@@ -79389,7 +79346,7 @@ const PatientForm = (props) => {
79389
79346
  insert$1(_el$6, createComponent(InputGroup, {
79390
79347
  label: "Zip code",
79391
79348
  get error() {
79392
- return store["address_zip"]?.error;
79349
+ return props.store["address_zip"]?.error;
79393
79350
  },
79394
79351
  get required() {
79395
79352
  return isAddressRequired();
@@ -79397,10 +79354,10 @@ const PatientForm = (props) => {
79397
79354
  get children() {
79398
79355
  return createComponent(Input, {
79399
79356
  get value() {
79400
- return store["address_zip"]?.value ?? pStore.selectedPatient.data?.address?.postalCode;
79357
+ return props.store["address_zip"]?.value;
79401
79358
  },
79402
79359
  onInput: (e) => {
79403
- actions.updateFormValue({
79360
+ props.actions.updateFormValue({
79404
79361
  key: "address_zip",
79405
79362
  value: e.currentTarget.value
79406
79363
  });
@@ -79413,47 +79370,46 @@ const PatientForm = (props) => {
79413
79370
  })()];
79414
79371
  };
79415
79372
  return (() => {
79416
- var _el$7 = _tmpl$7$4(), _el$8 = _el$7.firstChild;
79373
+ var _el$7 = _tmpl$7$4();
79417
79374
  var _ref$ = ref;
79418
79375
  typeof _ref$ === "function" ? use$1(_ref$, _el$7) : ref = _el$7;
79419
- insert$1(_el$8, tailwind);
79420
79376
  insert$1(_el$7, createComponent(Show, {
79421
79377
  get when() {
79422
- return pStore.selectedPatient.isLoading;
79378
+ return props.initialPatientLoading;
79423
79379
  },
79424
79380
  get children() {
79425
- var _el$9 = _tmpl$4$7();
79426
- insert$1(_el$9, createComponent(Spinner, {
79381
+ var _el$8 = _tmpl$4$5();
79382
+ insert$1(_el$8, createComponent(Spinner, {
79427
79383
  color: "green"
79428
79384
  }));
79429
- return _el$9;
79385
+ return _el$8;
79430
79386
  }
79431
79387
  }), null);
79432
79388
  insert$1(_el$7, createComponent(Show, {
79433
79389
  get when() {
79434
- return !pStore.selectedPatient.isLoading;
79390
+ return !props.initialPatientLoading;
79435
79391
  },
79436
79392
  get children() {
79437
79393
  return createComponent(PhotonAuthorized, {
79438
79394
  permissions: ["write:patient"],
79439
79395
  get children() {
79440
- var _el$0 = _tmpl$6$5();
79441
- insert$1(_el$0, createComponent(Card, {
79396
+ var _el$9 = _tmpl$6$5();
79397
+ insert$1(_el$9, createComponent(Card, {
79442
79398
  get children() {
79443
- 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;
79444
- insert$1(_el$11, createComponent(InputGroup, {
79399
+ 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;
79400
+ insert$1(_el$10, createComponent(InputGroup, {
79445
79401
  label: "First name",
79446
79402
  get error() {
79447
- return store["firstName"]?.error;
79403
+ return props.store["firstName"]?.error;
79448
79404
  },
79449
79405
  required: true,
79450
79406
  get children() {
79451
79407
  return createComponent(Input, {
79452
79408
  get value() {
79453
- return store["firstName"]?.value ?? pStore.selectedPatient.data?.name.first;
79409
+ return props.store["firstName"]?.value;
79454
79410
  },
79455
79411
  onInput: (e) => {
79456
- actions.updateFormValue({
79412
+ props.actions.updateFormValue({
79457
79413
  key: "firstName",
79458
79414
  value: e.currentTarget.value
79459
79415
  });
@@ -79462,19 +79418,19 @@ const PatientForm = (props) => {
79462
79418
  });
79463
79419
  }
79464
79420
  }), null);
79465
- insert$1(_el$11, createComponent(InputGroup, {
79421
+ insert$1(_el$10, createComponent(InputGroup, {
79466
79422
  label: "Last name",
79467
79423
  get error() {
79468
- return store["lastName"]?.error;
79424
+ return props.store["lastName"]?.error;
79469
79425
  },
79470
79426
  required: true,
79471
79427
  get children() {
79472
79428
  return createComponent(Input, {
79473
79429
  get value() {
79474
- return store["lastName"]?.value ?? pStore.selectedPatient.data?.name.last;
79430
+ return props.store["lastName"]?.value;
79475
79431
  },
79476
79432
  onInput: (e) => {
79477
- actions.updateFormValue({
79433
+ props.actions.updateFormValue({
79478
79434
  key: "lastName",
79479
79435
  value: e.currentTarget.value
79480
79436
  });
@@ -79483,19 +79439,19 @@ const PatientForm = (props) => {
79483
79439
  });
79484
79440
  }
79485
79441
  }), null);
79486
- insert$1(_el$11, createComponent(InputGroup, {
79442
+ insert$1(_el$10, createComponent(InputGroup, {
79487
79443
  label: "Date of birth",
79488
79444
  get error() {
79489
- return store["dateOfBirth"]?.error;
79445
+ return props.store["dateOfBirth"]?.error;
79490
79446
  },
79491
79447
  required: true,
79492
79448
  get children() {
79493
79449
  return createComponent(DateInput, {
79494
79450
  get value() {
79495
- return store["dateOfBirth"]?.value ?? pStore.selectedPatient.data?.dateOfBirth;
79451
+ return props.store["dateOfBirth"]?.value;
79496
79452
  },
79497
79453
  onDateChange: (value) => {
79498
- actions.updateFormValue({
79454
+ props.actions.updateFormValue({
79499
79455
  key: "dateOfBirth",
79500
79456
  value
79501
79457
  });
@@ -79504,19 +79460,19 @@ const PatientForm = (props) => {
79504
79460
  });
79505
79461
  }
79506
79462
  }), null);
79507
- insert$1(_el$11, createComponent(InputGroup, {
79463
+ insert$1(_el$10, createComponent(InputGroup, {
79508
79464
  label: "Mobile number",
79509
79465
  get error() {
79510
- return store["phone"]?.error;
79466
+ return props.store["phone"]?.error;
79511
79467
  },
79512
79468
  required: true,
79513
79469
  get children() {
79514
79470
  return createComponent(PhoneInput, {
79515
79471
  get value() {
79516
- return store["phone"]?.value ?? pStore.selectedPatient.data?.phone;
79472
+ return props.store["phone"]?.value;
79517
79473
  },
79518
79474
  onPhoneChange: (value) => {
79519
- actions.updateFormValue({
79475
+ props.actions.updateFormValue({
79520
79476
  key: "phone",
79521
79477
  value
79522
79478
  });
@@ -79525,81 +79481,81 @@ const PatientForm = (props) => {
79525
79481
  });
79526
79482
  }
79527
79483
  }), null);
79528
- insert$1(_el$11, createComponent(InputGroup, {
79484
+ insert$1(_el$10, createComponent(InputGroup, {
79529
79485
  label: "Sex at birth",
79530
79486
  get error() {
79531
- return store["sex"]?.error;
79487
+ return props.store["sex"]?.error;
79532
79488
  },
79533
79489
  required: true,
79534
79490
  get children() {
79535
79491
  return createComponent(SexSelect, {
79536
79492
  get value() {
79537
- return store["sex"]?.value ?? pStore.selectedPatient.data?.sex;
79493
+ return props.store["sex"]?.value;
79538
79494
  },
79539
- onChange: (e) => actions.updateFormValue({
79495
+ onChange: (e) => props.actions.updateFormValue({
79540
79496
  key: "sex",
79541
79497
  value: e.currentTarget.value
79542
79498
  }),
79543
- onBlur: () => trackFieldInteraction("sex", Boolean(store["sex"]?.value))
79499
+ onBlur: () => trackFieldInteraction("sex", Boolean(props.store["sex"]?.value))
79544
79500
  });
79545
79501
  }
79546
79502
  }), null);
79547
- insert$1(_el$1, createComponent(Show, {
79503
+ insert$1(_el$0, createComponent(Show, {
79548
79504
  get when() {
79549
79505
  return !props.optionalPatientAddress;
79550
79506
  },
79551
79507
  get children() {
79552
79508
  return createComponent(AddressFields, {});
79553
79509
  }
79554
- }), _el$12);
79555
- _el$12.$$click = () => setShowOptionalFields((value) => !value);
79556
- insert$1(_el$13, () => showOptionalFields() ? "Hide optional fields" : "Show optional fields");
79557
- insert$1(_el$12, createComponent(Icon, {
79510
+ }), _el$11);
79511
+ _el$11.$$click = () => setShowOptionalFields((value) => !value);
79512
+ insert$1(_el$12, () => showOptionalFields() ? "Hide optional fields" : "Show optional fields");
79513
+ insert$1(_el$11, createComponent(Icon, {
79558
79514
  get name() {
79559
79515
  return showOptionalFields() ? "chevronUp" : "chevronDown";
79560
79516
  },
79561
79517
  size: "md",
79562
79518
  "class": "inline-block ml-1 mt-1"
79563
79519
  }), null);
79564
- insert$1(_el$14, createComponent(Show, {
79520
+ insert$1(_el$13, createComponent(Show, {
79565
79521
  get when() {
79566
79522
  return props.optionalPatientAddress;
79567
79523
  },
79568
79524
  get children() {
79569
79525
  return createComponent(AddressFields, {});
79570
79526
  }
79571
- }), _el$15);
79572
- insert$1(_el$14, createComponent(InputGroup, {
79527
+ }), _el$14);
79528
+ insert$1(_el$13, createComponent(InputGroup, {
79573
79529
  label: "Gender",
79574
79530
  get error() {
79575
- return store["gender"]?.error;
79531
+ return props.store["gender"]?.error;
79576
79532
  },
79577
79533
  get children() {
79578
79534
  return createComponent(GenderSelect, {
79579
79535
  get value() {
79580
- return store["gender"]?.value ?? pStore.selectedPatient.data?.gender;
79536
+ return props.store["gender"]?.value;
79581
79537
  },
79582
- onChange: (e) => actions.updateFormValue({
79538
+ onChange: (e) => props.actions.updateFormValue({
79583
79539
  key: "gender",
79584
79540
  value: e.currentTarget.value
79585
79541
  }),
79586
- onBlur: () => trackFieldInteraction("gender", Boolean(store["gender"]?.value), true)
79542
+ onBlur: () => trackFieldInteraction("gender", Boolean(props.store["gender"]?.value), true)
79587
79543
  });
79588
79544
  }
79589
- }), _el$15);
79590
- insert$1(_el$14, createComponent(InputGroup, {
79545
+ }), _el$14);
79546
+ insert$1(_el$13, createComponent(InputGroup, {
79591
79547
  label: "Email",
79592
79548
  get error() {
79593
- return store["email"]?.error;
79549
+ return props.store["email"]?.error;
79594
79550
  },
79595
79551
  get children() {
79596
79552
  return createComponent(Input, {
79597
79553
  type: "email",
79598
79554
  get value() {
79599
- return store["email"]?.value ?? pStore.selectedPatient.data?.email;
79555
+ return props.store["email"]?.value;
79600
79556
  },
79601
79557
  onInput: (e) => {
79602
- actions.updateFormValue({
79558
+ props.actions.updateFormValue({
79603
79559
  key: "email",
79604
79560
  value: e.currentTarget.value
79605
79561
  });
@@ -79607,13 +79563,13 @@ const PatientForm = (props) => {
79607
79563
  onBlur: (e) => trackFieldInteraction("email", Boolean(e.currentTarget.value), true)
79608
79564
  });
79609
79565
  }
79610
- }), _el$15);
79611
- insert$1(_el$14, createComponent(PickupPharmacySearch, {
79566
+ }), _el$14);
79567
+ insert$1(_el$13, createComponent(PickupPharmacySearch, {
79612
79568
  get address() {
79613
- return getPatientAddress(pStore, store);
79569
+ return isZip(props.store["address_zip"]?.value) ? props.store["address_zip"]?.value : void 0;
79614
79570
  },
79615
79571
  setPharmacy: (pharmacy) => {
79616
- actions.updateFormValue({
79572
+ props.actions.updateFormValue({
79617
79573
  key: "preferredPharmacy",
79618
79574
  value: pharmacy.id
79619
79575
  });
@@ -79622,23 +79578,23 @@ const PatientForm = (props) => {
79622
79578
  return props.patientId;
79623
79579
  },
79624
79580
  get initialValue() {
79625
- return preferredPharmacy();
79581
+ return props.initialPreferredPharmacy;
79626
79582
  },
79627
79583
  hidePreferred: true
79628
79584
  }), null);
79629
79585
  createRenderEffect((_p$) => {
79630
79586
  var _v$ = showOptionalFields(), _v$2 = `mb-4 ${showOptionalFields() ? "block" : "hidden md:!block"}`;
79631
- _v$ !== _p$.e && setAttribute$1(_el$12, "aria-expanded", _p$.e = _v$);
79632
- _v$2 !== _p$.t && className$1(_el$14, _p$.t = _v$2);
79587
+ _v$ !== _p$.e && setAttribute$1(_el$11, "aria-expanded", _p$.e = _v$);
79588
+ _v$2 !== _p$.t && className$1(_el$13, _p$.t = _v$2);
79633
79589
  return _p$;
79634
79590
  }, {
79635
79591
  e: void 0,
79636
79592
  t: void 0
79637
79593
  });
79638
- return _el$1;
79594
+ return _el$0;
79639
79595
  }
79640
79596
  }));
79641
- return _el$0;
79597
+ return _el$9;
79642
79598
  }
79643
79599
  });
79644
79600
  }
@@ -79646,107 +79602,44 @@ const PatientForm = (props) => {
79646
79602
  return _el$7;
79647
79603
  })();
79648
79604
  };
79649
- customElement("photon-patient-form", {
79650
- patientId: "",
79651
- optionalPatientAddress: false
79652
- }, PatientForm);
79653
79605
  delegateEvents$1(["click"]);
79654
79606
 
79655
- 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);
79656
- const PhotonFormWrapper = (p) => {
79657
- const props = mergeProps({
79658
- closeTitle: "Lose unsaved changes?",
79659
- closeBody: "You will not be able to recover unsaved changes.",
79660
- checkShouldWarn: () => false
79661
- }, p);
79662
- let ref;
79663
- const [closeDialogOpen, onCloseDialogOpen] = createSignal(false);
79664
- const handleConfirm = () => {
79665
- onCloseDialogOpen(false);
79666
- props.onClosed();
79667
- };
79668
- const handleCancel = () => onCloseDialogOpen(false);
79669
- return (() => {
79670
- 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;
79671
- var _ref$ = ref;
79672
- typeof _ref$ === "function" ? use$1(_ref$, _el$) : ref = _el$;
79673
- addEventListener$1(_el$2, "photon-dialog-alt", handleCancel);
79674
- addEventListener$1(_el$2, "photon-dialog-canceled", handleCancel);
79675
- addEventListener$1(_el$2, "photon-dialog-confirmed", handleConfirm);
79676
- _el$2._$owner = getOwner();
79677
- insert$1(_el$3, () => props.closeBody);
79678
- insert$1(_el$5, createComponent(Button, {
79679
- variant: "naked",
79680
- size: "sm",
79681
- onClick: () => {
79682
- if (props.checkShouldWarn()) {
79683
- onCloseDialogOpen(true);
79684
- } else {
79685
- props.onClosed();
79686
- }
79687
- },
79688
- get children() {
79689
- var _el$6 = _tmpl$$9();
79690
- insert$1(_el$6, createComponent(Icon, {
79691
- name: "xMark"
79692
- }));
79693
- return _el$6;
79694
- }
79695
- }));
79696
- insert$1(_el$7, createComponent(Show, {
79697
- get when() {
79698
- return props.titleIconName;
79699
- },
79700
- get children() {
79701
- var _el$8 = _tmpl$2$7();
79702
- _el$8._$owner = getOwner();
79703
- createRenderEffect(() => _el$8.name = props.titleIconName);
79704
- return _el$8;
79705
- }
79706
- }), _el$9);
79707
- insert$1(_el$9, () => props.title);
79708
- _el$0.style.setProperty("-webkit-overflow-scrolling", "touch");
79709
- insert$1(_el$1, () => props.form);
79710
- insert$1(_el$, createComponent(Show, {
79711
- get when() {
79712
- return props.footer;
79713
- },
79714
- get children() {
79715
- var _el$10 = _tmpl$3$6(), _el$11 = _el$10.firstChild;
79716
- insert$1(_el$11, () => props.footer);
79717
- return _el$10;
79718
- }
79719
- }), null);
79720
- createRenderEffect((_p$) => {
79721
- var _v$ = props.closeTitle, _v$2 = closeDialogOpen();
79722
- _v$ !== _p$.e && (_el$2.label = _p$.e = _v$);
79723
- _v$2 !== _p$.t && (_el$2.open = _p$.t = _v$2);
79724
- return _p$;
79725
- }, {
79726
- e: void 0,
79727
- t: void 0
79728
- });
79729
- return _el$;
79730
- })();
79731
- };
79732
-
79733
- 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);
79607
+ 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">`);
79734
79608
  const PATIENT_FIELDS = gql$1`
79735
79609
  fragment PatientFields on Patient {
79736
79610
  id
79737
79611
  }
79738
79612
  `;
79613
+ const patientToFormValues = (patient) => ({
79614
+ firstName: patient?.name.first,
79615
+ lastName: patient?.name.last,
79616
+ dateOfBirth: patient?.dateOfBirth,
79617
+ sex: patient?.sex,
79618
+ gender: patient?.gender,
79619
+ phone: patient?.phone,
79620
+ email: patient?.email,
79621
+ address_street1: patient?.address?.street1,
79622
+ address_street2: patient?.address?.street2,
79623
+ address_city: patient?.address?.city,
79624
+ address_state: patient?.address?.state,
79625
+ address_zip: patient?.address?.postalCode,
79626
+ preferredPharmacy: patient?.preferredPharmacies?.[0]?.id
79627
+ });
79739
79628
  const Component$4 = (props) => {
79740
79629
  let ref;
79741
79630
  const client = usePhoton();
79742
79631
  const [loading, setLoading] = createSignal(false);
79743
79632
  const [isCreatePrescription, setIsCreatePrescription] = createSignal(false);
79744
- const [formStore, setFormStore] = createSignal(void 0);
79745
- const [selectedStore, setSelectedStore] = createSignal(void 0);
79746
- const [actions, setActions] = createSignal(void 0);
79747
79633
  const [globalError, setGlobalError] = createSignal(void 0);
79748
- const [hasAnyAddressField, setHasAnyAddressField] = createSignal(false);
79749
79634
  const [hasPatients, setHasPatients] = createSignal(false);
79635
+ const {
79636
+ store: pStore,
79637
+ actions: pActions
79638
+ } = PatientStore;
79639
+ const {
79640
+ store,
79641
+ actions
79642
+ } = createFormStore();
79750
79643
  onMount(async () => {
79751
79644
  try {
79752
79645
  const {
@@ -79761,6 +79654,39 @@ const Component$4 = (props) => {
79761
79654
  console.log(err);
79762
79655
  }
79763
79656
  });
79657
+ onCleanup(() => {
79658
+ pActions.clearSelectedPatient();
79659
+ });
79660
+ createEffect(() => {
79661
+ const patientId = props.patientId;
79662
+ untrack(() => {
79663
+ if (patientId) {
79664
+ pActions.getSelectedPatient(client.getSDK(), patientId);
79665
+ } else {
79666
+ pActions.clearSelectedPatient();
79667
+ }
79668
+ });
79669
+ });
79670
+ createEffect(() => {
79671
+ const values = patientToFormValues(props.patientId ? pStore.selectedPatient.data : void 0);
79672
+ for (const [key, value] of Object.entries(values)) {
79673
+ actions.updateFormValue({
79674
+ key,
79675
+ value
79676
+ });
79677
+ }
79678
+ });
79679
+ const hasAnyAddressField = createMemo(() => !!(store["address_street1"]?.value || store["address_street2"]?.value || store["address_city"]?.value || store["address_state"]?.value || store["address_zip"]?.value));
79680
+ const initialPreferredPharmacy = createMemo(() => {
79681
+ const pref = pStore.selectedPatient.data?.preferredPharmacies?.[0];
79682
+ if (!pref) return;
79683
+ return {
79684
+ ...pref,
79685
+ address: pref.address,
79686
+ isPrevious: true,
79687
+ isPreferred: true
79688
+ };
79689
+ });
79764
79690
  const dispatchUpdate = (patientId, didClickCreatePatientAndPrescription = false) => {
79765
79691
  const event = new CustomEvent("photon-patient-updated", {
79766
79692
  composed: true,
@@ -79798,7 +79724,7 @@ const Component$4 = (props) => {
79798
79724
  }, ref);
79799
79725
  }
79800
79726
  });
79801
- const submitForm = async (store, actions2, pStore, didClickCreatePatientAndPrescription = false) => {
79727
+ const submitForm = async (didClickCreatePatientAndPrescription = false) => {
79802
79728
  setGlobalError(void 0);
79803
79729
  setIsCreatePrescription(didClickCreatePatientAndPrescription);
79804
79730
  setLoading(true);
@@ -79806,8 +79732,8 @@ const Component$4 = (props) => {
79806
79732
  const addressKeys = ["address_street1", "address_city", "address_state", "address_zip"];
79807
79733
  const shouldValidateAddress = !props.optionalPatientAddress || hasAnyAddressField();
79808
79734
  const keys = shouldValidateAddress ? [...baseKeys, ...addressKeys] : baseKeys;
79809
- actions2.validate(keys);
79810
- if (actions2.hasErrors(keys)) {
79735
+ actions.validate(keys);
79736
+ if (actions.hasErrors(keys)) {
79811
79737
  setLoading(false);
79812
79738
  return true;
79813
79739
  }
@@ -79877,7 +79803,7 @@ const Component$4 = (props) => {
79877
79803
  }, ref);
79878
79804
  }
79879
79805
  setLoading(false);
79880
- actions2.resetStores();
79806
+ actions.reset();
79881
79807
  props.open = false;
79882
79808
  } catch (e) {
79883
79809
  setLoading(false);
@@ -79906,7 +79832,6 @@ const Component$4 = (props) => {
79906
79832
  })(), createComponent(PhotonFormWrapper, {
79907
79833
  onClosed: () => {
79908
79834
  dispatchClosed();
79909
- actions().resetStores();
79910
79835
  props.open = false;
79911
79836
  },
79912
79837
  get title() {
@@ -79915,6 +79840,9 @@ const Component$4 = (props) => {
79915
79840
  get titleIconName() {
79916
79841
  return props?.patientId ? "pencil-square" : "person-plus";
79917
79842
  },
79843
+ get hideHeaderOnIOSWebView() {
79844
+ return props.hideHeaderOnIosWebview;
79845
+ },
79918
79846
  get footer() {
79919
79847
  return [createComponent(Show, {
79920
79848
  get when() {
@@ -79930,7 +79858,7 @@ const Component$4 = (props) => {
79930
79858
  get loading() {
79931
79859
  return memo$2(() => !!loading())() && isCreatePrescription();
79932
79860
  },
79933
- onClick: () => submitForm(formStore(), actions(), selectedStore(), true),
79861
+ onClick: () => submitForm(true),
79934
79862
  get children() {
79935
79863
  return [memo$2(() => props?.patientId ? "Save" : "Create"), " and start prescription"];
79936
79864
  }
@@ -79953,7 +79881,7 @@ const Component$4 = (props) => {
79953
79881
  get loading() {
79954
79882
  return memo$2(() => !!loading())() && !isCreatePrescription();
79955
79883
  },
79956
- onClick: () => submitForm(formStore(), actions(), selectedStore(), false),
79884
+ onClick: () => submitForm(false),
79957
79885
  get children() {
79958
79886
  return props?.patientId ? "Save" : "Create";
79959
79887
  }
@@ -79971,29 +79899,22 @@ const Component$4 = (props) => {
79971
79899
  insert$1(_el$4, globalError);
79972
79900
  return _el$3;
79973
79901
  }
79974
- }), (() => {
79975
- var _el$5 = _tmpl$4$5();
79976
- addEventListener$1(_el$5, "photon-form-updated", (e) => {
79977
- setFormStore(e.detail.form);
79978
- setActions(Object.assign({}, e.detail.actions, {
79979
- resetStores: e.detail.reset
79980
- }));
79981
- setSelectedStore(e.detail.selected);
79982
- const form = e.detail.form;
79983
- setHasAnyAddressField(!!(form["address_street1"]?.value || form["address_street2"]?.value || form["address_city"]?.value || form["address_state"]?.value || form["address_zip"]?.value));
79984
- });
79985
- _el$5._$owner = getOwner();
79986
- createRenderEffect((_p$) => {
79987
- var _v$ = props.patientId, _v$2 = props.optionalPatientAddress;
79988
- _v$ !== _p$.e && (_el$5.patientId = _p$.e = _v$);
79989
- _v$2 !== _p$.t && (_el$5.optionalPatientAddress = _p$.t = _v$2);
79990
- return _p$;
79991
- }, {
79992
- e: void 0,
79993
- t: void 0
79994
- });
79995
- return _el$5;
79996
- })()];
79902
+ }), createComponent(PatientForm, {
79903
+ store,
79904
+ actions,
79905
+ get patientId() {
79906
+ return props.patientId;
79907
+ },
79908
+ get optionalPatientAddress() {
79909
+ return props.optionalPatientAddress;
79910
+ },
79911
+ get initialPatientLoading() {
79912
+ return props.patientId ? !pStore.selectedPatient.data : false;
79913
+ },
79914
+ get initialPreferredPharmacy() {
79915
+ return initialPreferredPharmacy();
79916
+ }
79917
+ })];
79997
79918
  }
79998
79919
  })];
79999
79920
  }
@@ -80007,7 +79928,8 @@ customElement("photon-patient-dialog", {
80007
79928
  patientId: "",
80008
79929
  hideCreatePrescription: false,
80009
79930
  open: false,
80010
- optionalPatientAddress: false
79931
+ optionalPatientAddress: false,
79932
+ hideHeaderOnIosWebview: false
80011
79933
  }, Component$4);
80012
79934
 
80013
79935
  var _tmpl$$7 = /* @__PURE__ */ template$1(`<photon-patient-dialog>`, true, false, false);
@@ -84735,6 +84657,9 @@ const Component = (props) => {
84735
84657
  checkShouldWarn: () => shouldWarn(form),
84736
84658
  title: "New prescriptions",
84737
84659
  titleIconName: "prescription",
84660
+ get hideHeaderOnIOSWebView() {
84661
+ return props.hideHeaderOnIosWebview;
84662
+ },
84738
84663
  get footer() {
84739
84664
  return memo$2(() => !!hideOrderButton())() ? null : memo$2(() => !!props.enableOrder)() ? createComponent(Button, {
84740
84665
  "class": "w-full xs:w-fit",
@@ -84891,6 +84816,7 @@ customElement("photon-multirx-form-wrapper", {
84891
84816
  enableOrder: false,
84892
84817
  toastBuffer: 0,
84893
84818
  externalOrderId: void 0,
84894
- optionalPatientAddress: false
84819
+ optionalPatientAddress: false,
84820
+ hideHeaderOnIosWebview: false
84895
84821
  }, Component);
84896
84822
  //# sourceMappingURL=index.js.map