@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/PhotonFormWrapper/PhotonFormWrapper.d.ts +1 -0
- package/dist/index.d.ts +0 -1
- package/dist/index.js +344 -418
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +344 -418
- package/dist/index.mjs.map +1 -1
- package/dist/photon-patient-dialog/PatientForm.d.ts +9 -0
- package/package.json +2 -2
- package/dist/photon-patient-form/index.d.ts +0 -1
- /package/dist/{photon-patient-form/photon-patient-form-component.d.ts → photon-multirx-form/prescribe-workflow-template-prefill.test.d.ts} +0 -0
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
|
|
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
|
|
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
|
-
|
|
53296
|
-
|
|
53297
|
-
|
|
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.
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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
|
|
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$
|
|
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$
|
|
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$
|
|
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:
|
|
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$
|
|
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
|
|
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$
|
|
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$
|
|
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$
|
|
78291
|
+
var _el$4 = _tmpl$4$7();
|
|
78271
78292
|
insert$1(_el$4, titleElement || collapsableElement ? (() => {
|
|
78272
|
-
var _el$5 = _tmpl$5$
|
|
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(`<
|
|
79078
|
-
const
|
|
79079
|
-
const
|
|
79080
|
-
|
|
79081
|
-
|
|
79082
|
-
|
|
79083
|
-
|
|
79084
|
-
|
|
79085
|
-
|
|
79086
|
-
|
|
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
|
-
|
|
79156
|
-
|
|
79157
|
-
|
|
79158
|
-
|
|
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$
|
|
79226
|
+
var _el$ = _tmpl$2$7(); _el$.firstChild;
|
|
79270
79227
|
insert$1(_el$, createComponent(Show, {
|
|
79271
79228
|
get when() {
|
|
79272
|
-
return
|
|
79229
|
+
return !isAddressRequired();
|
|
79273
79230
|
},
|
|
79274
79231
|
get children() {
|
|
79275
|
-
return _tmpl$$
|
|
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
|
|
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
|
|
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
|
|
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$
|
|
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
|
|
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
|
|
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()
|
|
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
|
|
79378
|
+
return props.initialPatientLoading;
|
|
79423
79379
|
},
|
|
79424
79380
|
get children() {
|
|
79425
|
-
var _el$
|
|
79426
|
-
insert$1(_el$
|
|
79381
|
+
var _el$8 = _tmpl$4$5();
|
|
79382
|
+
insert$1(_el$8, createComponent(Spinner, {
|
|
79427
79383
|
color: "green"
|
|
79428
79384
|
}));
|
|
79429
|
-
return _el$
|
|
79385
|
+
return _el$8;
|
|
79430
79386
|
}
|
|
79431
79387
|
}), null);
|
|
79432
79388
|
insert$1(_el$7, createComponent(Show, {
|
|
79433
79389
|
get when() {
|
|
79434
|
-
return !
|
|
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$
|
|
79441
|
-
insert$1(_el$
|
|
79396
|
+
var _el$9 = _tmpl$6$5();
|
|
79397
|
+
insert$1(_el$9, createComponent(Card, {
|
|
79442
79398
|
get children() {
|
|
79443
|
-
var _el$
|
|
79444
|
-
insert$1(_el$
|
|
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
|
|
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$
|
|
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
|
|
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$
|
|
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
|
|
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$
|
|
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
|
|
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$
|
|
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
|
|
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$
|
|
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$
|
|
79555
|
-
_el$
|
|
79556
|
-
insert$1(_el$
|
|
79557
|
-
insert$1(_el$
|
|
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$
|
|
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$
|
|
79572
|
-
insert$1(_el$
|
|
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
|
|
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$
|
|
79590
|
-
insert$1(_el$
|
|
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
|
|
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$
|
|
79611
|
-
insert$1(_el$
|
|
79566
|
+
}), _el$14);
|
|
79567
|
+
insert$1(_el$13, createComponent(PickupPharmacySearch, {
|
|
79612
79568
|
get address() {
|
|
79613
|
-
return
|
|
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
|
|
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$
|
|
79632
|
-
_v$2 !== _p$.t && className$1(_el$
|
|
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$
|
|
79594
|
+
return _el$0;
|
|
79639
79595
|
}
|
|
79640
79596
|
}));
|
|
79641
|
-
return _el$
|
|
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$$
|
|
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 (
|
|
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
|
-
|
|
79810
|
-
if (
|
|
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
|
-
|
|
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(
|
|
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(
|
|
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
|
-
|
|
79976
|
-
|
|
79977
|
-
|
|
79978
|
-
|
|
79979
|
-
|
|
79980
|
-
|
|
79981
|
-
|
|
79982
|
-
|
|
79983
|
-
|
|
79984
|
-
|
|
79985
|
-
|
|
79986
|
-
|
|
79987
|
-
|
|
79988
|
-
|
|
79989
|
-
|
|
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
|