@claudebernard/medication-request-editor-element
Version:
An element which permit to edit a medication request.
1,376 lines (1,357 loc) • 208 kB
JavaScript
var _a;
const __variableDynamicImportRuntimeHelper = (glob, path) => {
const v2 = glob[path];
if (v2) {
return typeof v2 === "function" ? v2() : Promise.resolve(v2);
}
return new Promise((_2, reject) => {
(typeof queueMicrotask === "function" ? queueMicrotask : setTimeout)(reject.bind(null, new Error("Unknown variable dynamic import: " + path)));
});
};
/**
* @license
* Copyright 2019 Google LLC
* SPDX-License-Identifier: BSD-3-Clause
*/
const t$4 = globalThis, e$3 = t$4.ShadowRoot && (void 0 === t$4.ShadyCSS || t$4.ShadyCSS.nativeShadow) && "adoptedStyleSheets" in Document.prototype && "replace" in CSSStyleSheet.prototype, s$5 = Symbol(), o$4 = /* @__PURE__ */ new WeakMap();
let n$5 = class n {
constructor(t2, e2, o2) {
if (this._$cssResult$ = true, o2 !== s$5)
throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");
this.cssText = t2, this.t = e2;
}
get styleSheet() {
let t2 = this.o;
const s3 = this.t;
if (e$3 && void 0 === t2) {
const e2 = void 0 !== s3 && 1 === s3.length;
e2 && (t2 = o$4.get(s3)), void 0 === t2 && ((this.o = t2 = new CSSStyleSheet()).replaceSync(this.cssText), e2 && o$4.set(s3, t2));
}
return t2;
}
toString() {
return this.cssText;
}
};
const r$7 = (t2) => new n$5("string" == typeof t2 ? t2 : t2 + "", void 0, s$5), i$5 = (t2, ...e2) => {
const o2 = 1 === t2.length ? t2[0] : e2.reduce((e3, s3, o3) => e3 + ((t3) => {
if (true === t3._$cssResult$)
return t3.cssText;
if ("number" == typeof t3)
return t3;
throw Error("Value passed to 'css' function must be a 'css' function result: " + t3 + ". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.");
})(s3) + t2[o3 + 1], t2[0]);
return new n$5(o2, t2, s$5);
}, S$1 = (s3, o2) => {
if (e$3)
s3.adoptedStyleSheets = o2.map((t2) => t2 instanceof CSSStyleSheet ? t2 : t2.styleSheet);
else
for (const e2 of o2) {
const o3 = document.createElement("style"), n3 = t$4.litNonce;
void 0 !== n3 && o3.setAttribute("nonce", n3), o3.textContent = e2.cssText, s3.appendChild(o3);
}
}, c$5 = e$3 ? (t2) => t2 : (t2) => t2 instanceof CSSStyleSheet ? ((t3) => {
let e2 = "";
for (const s3 of t3.cssRules)
e2 += s3.cssText;
return r$7(e2);
})(t2) : t2;
/**
* @license
* Copyright 2017 Google LLC
* SPDX-License-Identifier: BSD-3-Clause
*/
const { is: i$4, defineProperty: e$2, getOwnPropertyDescriptor: r$6, getOwnPropertyNames: h$4, getOwnPropertySymbols: o$3, getPrototypeOf: n$4 } = Object, a$1 = globalThis, c$4 = a$1.trustedTypes, l$1 = c$4 ? c$4.emptyScript : "", p$2 = a$1.reactiveElementPolyfillSupport, d$1 = (t2, s3) => t2, u$3 = { toAttribute(t2, s3) {
switch (s3) {
case Boolean:
t2 = t2 ? l$1 : null;
break;
case Object:
case Array:
t2 = null == t2 ? t2 : JSON.stringify(t2);
}
return t2;
}, fromAttribute(t2, s3) {
let i3 = t2;
switch (s3) {
case Boolean:
i3 = null !== t2;
break;
case Number:
i3 = null === t2 ? null : Number(t2);
break;
case Object:
case Array:
try {
i3 = JSON.parse(t2);
} catch (t3) {
i3 = null;
}
}
return i3;
} }, f$3 = (t2, s3) => !i$4(t2, s3), y$1 = { attribute: true, type: String, converter: u$3, reflect: false, hasChanged: f$3 };
Symbol.metadata ?? (Symbol.metadata = Symbol("metadata")), a$1.litPropertyMetadata ?? (a$1.litPropertyMetadata = /* @__PURE__ */ new WeakMap());
class b extends HTMLElement {
static addInitializer(t2) {
this._$Ei(), (this.l ?? (this.l = [])).push(t2);
}
static get observedAttributes() {
return this.finalize(), this._$Eh && [...this._$Eh.keys()];
}
static createProperty(t2, s3 = y$1) {
if (s3.state && (s3.attribute = false), this._$Ei(), this.elementProperties.set(t2, s3), !s3.noAccessor) {
const i3 = Symbol(), r2 = this.getPropertyDescriptor(t2, i3, s3);
void 0 !== r2 && e$2(this.prototype, t2, r2);
}
}
static getPropertyDescriptor(t2, s3, i3) {
const { get: e2, set: h2 } = r$6(this.prototype, t2) ?? { get() {
return this[s3];
}, set(t3) {
this[s3] = t3;
} };
return { get() {
return e2 == null ? void 0 : e2.call(this);
}, set(s4) {
const r2 = e2 == null ? void 0 : e2.call(this);
h2.call(this, s4), this.requestUpdate(t2, r2, i3);
}, configurable: true, enumerable: true };
}
static getPropertyOptions(t2) {
return this.elementProperties.get(t2) ?? y$1;
}
static _$Ei() {
if (this.hasOwnProperty(d$1("elementProperties")))
return;
const t2 = n$4(this);
t2.finalize(), void 0 !== t2.l && (this.l = [...t2.l]), this.elementProperties = new Map(t2.elementProperties);
}
static finalize() {
if (this.hasOwnProperty(d$1("finalized")))
return;
if (this.finalized = true, this._$Ei(), this.hasOwnProperty(d$1("properties"))) {
const t3 = this.properties, s3 = [...h$4(t3), ...o$3(t3)];
for (const i3 of s3)
this.createProperty(i3, t3[i3]);
}
const t2 = this[Symbol.metadata];
if (null !== t2) {
const s3 = litPropertyMetadata.get(t2);
if (void 0 !== s3)
for (const [t3, i3] of s3)
this.elementProperties.set(t3, i3);
}
this._$Eh = /* @__PURE__ */ new Map();
for (const [t3, s3] of this.elementProperties) {
const i3 = this._$Eu(t3, s3);
void 0 !== i3 && this._$Eh.set(i3, t3);
}
this.elementStyles = this.finalizeStyles(this.styles);
}
static finalizeStyles(s3) {
const i3 = [];
if (Array.isArray(s3)) {
const e2 = new Set(s3.flat(1 / 0).reverse());
for (const s4 of e2)
i3.unshift(c$5(s4));
} else
void 0 !== s3 && i3.push(c$5(s3));
return i3;
}
static _$Eu(t2, s3) {
const i3 = s3.attribute;
return false === i3 ? void 0 : "string" == typeof i3 ? i3 : "string" == typeof t2 ? t2.toLowerCase() : void 0;
}
constructor() {
super(), this._$Ep = void 0, this.isUpdatePending = false, this.hasUpdated = false, this._$Em = null, this._$Ev();
}
_$Ev() {
var _a2;
this._$Eg = new Promise((t2) => this.enableUpdating = t2), this._$AL = /* @__PURE__ */ new Map(), this._$E_(), this.requestUpdate(), (_a2 = this.constructor.l) == null ? void 0 : _a2.forEach((t2) => t2(this));
}
addController(t2) {
var _a2;
(this._$ES ?? (this._$ES = [])).push(t2), void 0 !== this.renderRoot && this.isConnected && ((_a2 = t2.hostConnected) == null ? void 0 : _a2.call(t2));
}
removeController(t2) {
var _a2;
(_a2 = this._$ES) == null ? void 0 : _a2.splice(this._$ES.indexOf(t2) >>> 0, 1);
}
_$E_() {
const t2 = /* @__PURE__ */ new Map(), s3 = this.constructor.elementProperties;
for (const i3 of s3.keys())
this.hasOwnProperty(i3) && (t2.set(i3, this[i3]), delete this[i3]);
t2.size > 0 && (this._$Ep = t2);
}
createRenderRoot() {
const t2 = this.shadowRoot ?? this.attachShadow(this.constructor.shadowRootOptions);
return S$1(t2, this.constructor.elementStyles), t2;
}
connectedCallback() {
var _a2;
this.renderRoot ?? (this.renderRoot = this.createRenderRoot()), this.enableUpdating(true), (_a2 = this._$ES) == null ? void 0 : _a2.forEach((t2) => {
var _a3;
return (_a3 = t2.hostConnected) == null ? void 0 : _a3.call(t2);
});
}
enableUpdating(t2) {
}
disconnectedCallback() {
var _a2;
(_a2 = this._$ES) == null ? void 0 : _a2.forEach((t2) => {
var _a3;
return (_a3 = t2.hostDisconnected) == null ? void 0 : _a3.call(t2);
});
}
attributeChangedCallback(t2, s3, i3) {
this._$AK(t2, i3);
}
_$EO(t2, s3) {
var _a2;
const i3 = this.constructor.elementProperties.get(t2), e2 = this.constructor._$Eu(t2, i3);
if (void 0 !== e2 && true === i3.reflect) {
const r2 = (void 0 !== ((_a2 = i3.converter) == null ? void 0 : _a2.toAttribute) ? i3.converter : u$3).toAttribute(s3, i3.type);
this._$Em = t2, null == r2 ? this.removeAttribute(e2) : this.setAttribute(e2, r2), this._$Em = null;
}
}
_$AK(t2, s3) {
var _a2;
const i3 = this.constructor, e2 = i3._$Eh.get(t2);
if (void 0 !== e2 && this._$Em !== e2) {
const t3 = i3.getPropertyOptions(e2), r2 = "function" == typeof t3.converter ? { fromAttribute: t3.converter } : void 0 !== ((_a2 = t3.converter) == null ? void 0 : _a2.fromAttribute) ? t3.converter : u$3;
this._$Em = e2, this[e2] = r2.fromAttribute(s3, t3.type), this._$Em = null;
}
}
requestUpdate(t2, s3, i3, e2 = false, r2) {
if (void 0 !== t2) {
if (i3 ?? (i3 = this.constructor.getPropertyOptions(t2)), !(i3.hasChanged ?? f$3)(e2 ? r2 : this[t2], s3))
return;
this.C(t2, s3, i3);
}
false === this.isUpdatePending && (this._$Eg = this._$EP());
}
C(t2, s3, i3) {
this._$AL.has(t2) || this._$AL.set(t2, s3), true === i3.reflect && this._$Em !== t2 && (this._$Ej ?? (this._$Ej = /* @__PURE__ */ new Set())).add(t2);
}
async _$EP() {
this.isUpdatePending = true;
try {
await this._$Eg;
} catch (t3) {
Promise.reject(t3);
}
const t2 = this.scheduleUpdate();
return null != t2 && await t2, !this.isUpdatePending;
}
scheduleUpdate() {
return this.performUpdate();
}
performUpdate() {
var _a2;
if (!this.isUpdatePending)
return;
if (!this.hasUpdated) {
if (this._$Ep) {
for (const [t4, s4] of this._$Ep)
this[t4] = s4;
this._$Ep = void 0;
}
const t3 = this.constructor.elementProperties;
if (t3.size > 0)
for (const [s4, i3] of t3)
true !== i3.wrapped || this._$AL.has(s4) || void 0 === this[s4] || this.C(s4, this[s4], i3);
}
let t2 = false;
const s3 = this._$AL;
try {
t2 = this.shouldUpdate(s3), t2 ? (this.willUpdate(s3), (_a2 = this._$ES) == null ? void 0 : _a2.forEach((t3) => {
var _a3;
return (_a3 = t3.hostUpdate) == null ? void 0 : _a3.call(t3);
}), this.update(s3)) : this._$ET();
} catch (s4) {
throw t2 = false, this._$ET(), s4;
}
t2 && this._$AE(s3);
}
willUpdate(t2) {
}
_$AE(t2) {
var _a2;
(_a2 = this._$ES) == null ? void 0 : _a2.forEach((t3) => {
var _a3;
return (_a3 = t3.hostUpdated) == null ? void 0 : _a3.call(t3);
}), this.hasUpdated || (this.hasUpdated = true, this.firstUpdated(t2)), this.updated(t2);
}
_$ET() {
this._$AL = /* @__PURE__ */ new Map(), this.isUpdatePending = false;
}
get updateComplete() {
return this.getUpdateComplete();
}
getUpdateComplete() {
return this._$Eg;
}
shouldUpdate(t2) {
return true;
}
update(t2) {
this._$Ej && (this._$Ej = this._$Ej.forEach((t3) => this._$EO(t3, this[t3]))), this._$ET();
}
updated(t2) {
}
firstUpdated(t2) {
}
}
b.elementStyles = [], b.shadowRootOptions = { mode: "open" }, b[d$1("elementProperties")] = /* @__PURE__ */ new Map(), b[d$1("finalized")] = /* @__PURE__ */ new Map(), p$2 == null ? void 0 : p$2({ ReactiveElement: b }), (a$1.reactiveElementVersions ?? (a$1.reactiveElementVersions = [])).push("2.0.0");
/**
* @license
* Copyright 2017 Google LLC
* SPDX-License-Identifier: BSD-3-Clause
*/
const t$3 = globalThis, i$3 = t$3.trustedTypes, s$4 = i$3 ? i$3.createPolicy("lit-html", { createHTML: (t2) => t2 }) : void 0, e$1 = "$lit$", h$3 = `lit$${(Math.random() + "").slice(9)}$`, o$2 = "?" + h$3, n$3 = `<${o$2}>`, r$5 = document, l = () => r$5.createComment(""), c$3 = (t2) => null === t2 || "object" != typeof t2 && "function" != typeof t2, a = Array.isArray, u$2 = (t2) => a(t2) || "function" == typeof (t2 == null ? void 0 : t2[Symbol.iterator]), d = "[ \n\f\r]", f$2 = /<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g, v$1 = /-->/g, _ = />/g, m$2 = RegExp(`>|${d}(?:([^\\s"'>=/]+)(${d}*=${d}*(?:[^
\f\r"'\`<>=]|("|')|))|$)`, "g"), p$1 = /'/g, g = /"/g, $ = /^(?:script|style|textarea|title)$/i, y = (t2) => (i3, ...s3) => ({ _$litType$: t2, strings: i3, values: s3 }), x = y(1), w = Symbol.for("lit-noChange"), T = Symbol.for("lit-nothing"), A = /* @__PURE__ */ new WeakMap(), E = r$5.createTreeWalker(r$5, 129);
function C(t2, i3) {
if (!Array.isArray(t2) || !t2.hasOwnProperty("raw"))
throw Error("invalid template strings array");
return void 0 !== s$4 ? s$4.createHTML(i3) : i3;
}
const P = (t2, i3) => {
const s3 = t2.length - 1, o2 = [];
let r2, l2 = 2 === i3 ? "<svg>" : "", c3 = f$2;
for (let i4 = 0; i4 < s3; i4++) {
const s4 = t2[i4];
let a2, u2, d2 = -1, y2 = 0;
for (; y2 < s4.length && (c3.lastIndex = y2, u2 = c3.exec(s4), null !== u2); )
y2 = c3.lastIndex, c3 === f$2 ? "!--" === u2[1] ? c3 = v$1 : void 0 !== u2[1] ? c3 = _ : void 0 !== u2[2] ? ($.test(u2[2]) && (r2 = RegExp("</" + u2[2], "g")), c3 = m$2) : void 0 !== u2[3] && (c3 = m$2) : c3 === m$2 ? ">" === u2[0] ? (c3 = r2 ?? f$2, d2 = -1) : void 0 === u2[1] ? d2 = -2 : (d2 = c3.lastIndex - u2[2].length, a2 = u2[1], c3 = void 0 === u2[3] ? m$2 : '"' === u2[3] ? g : p$1) : c3 === g || c3 === p$1 ? c3 = m$2 : c3 === v$1 || c3 === _ ? c3 = f$2 : (c3 = m$2, r2 = void 0);
const x2 = c3 === m$2 && t2[i4 + 1].startsWith("/>") ? " " : "";
l2 += c3 === f$2 ? s4 + n$3 : d2 >= 0 ? (o2.push(a2), s4.slice(0, d2) + e$1 + s4.slice(d2) + h$3 + x2) : s4 + h$3 + (-2 === d2 ? i4 : x2);
}
return [C(t2, l2 + (t2[s3] || "<?>") + (2 === i3 ? "</svg>" : "")), o2];
};
class V {
constructor({ strings: t2, _$litType$: s3 }, n3) {
let r2;
this.parts = [];
let c3 = 0, a2 = 0;
const u2 = t2.length - 1, d2 = this.parts, [f2, v2] = P(t2, s3);
if (this.el = V.createElement(f2, n3), E.currentNode = this.el.content, 2 === s3) {
const t3 = this.el.content.firstChild;
t3.replaceWith(...t3.childNodes);
}
for (; null !== (r2 = E.nextNode()) && d2.length < u2; ) {
if (1 === r2.nodeType) {
if (r2.hasAttributes())
for (const t3 of r2.getAttributeNames())
if (t3.endsWith(e$1)) {
const i3 = v2[a2++], s4 = r2.getAttribute(t3).split(h$3), e2 = /([.?@])?(.*)/.exec(i3);
d2.push({ type: 1, index: c3, name: e2[2], strings: s4, ctor: "." === e2[1] ? k : "?" === e2[1] ? H : "@" === e2[1] ? I : R }), r2.removeAttribute(t3);
} else
t3.startsWith(h$3) && (d2.push({ type: 6, index: c3 }), r2.removeAttribute(t3));
if ($.test(r2.tagName)) {
const t3 = r2.textContent.split(h$3), s4 = t3.length - 1;
if (s4 > 0) {
r2.textContent = i$3 ? i$3.emptyScript : "";
for (let i3 = 0; i3 < s4; i3++)
r2.append(t3[i3], l()), E.nextNode(), d2.push({ type: 2, index: ++c3 });
r2.append(t3[s4], l());
}
}
} else if (8 === r2.nodeType)
if (r2.data === o$2)
d2.push({ type: 2, index: c3 });
else {
let t3 = -1;
for (; -1 !== (t3 = r2.data.indexOf(h$3, t3 + 1)); )
d2.push({ type: 7, index: c3 }), t3 += h$3.length - 1;
}
c3++;
}
}
static createElement(t2, i3) {
const s3 = r$5.createElement("template");
return s3.innerHTML = t2, s3;
}
}
function N(t2, i3, s3 = t2, e2) {
var _a2, _b;
if (i3 === w)
return i3;
let h2 = void 0 !== e2 ? (_a2 = s3._$Co) == null ? void 0 : _a2[e2] : s3._$Cl;
const o2 = c$3(i3) ? void 0 : i3._$litDirective$;
return (h2 == null ? void 0 : h2.constructor) !== o2 && ((_b = h2 == null ? void 0 : h2._$AO) == null ? void 0 : _b.call(h2, false), void 0 === o2 ? h2 = void 0 : (h2 = new o2(t2), h2._$AT(t2, s3, e2)), void 0 !== e2 ? (s3._$Co ?? (s3._$Co = []))[e2] = h2 : s3._$Cl = h2), void 0 !== h2 && (i3 = N(t2, h2._$AS(t2, i3.values), h2, e2)), i3;
}
class S {
constructor(t2, i3) {
this._$AV = [], this._$AN = void 0, this._$AD = t2, this._$AM = i3;
}
get parentNode() {
return this._$AM.parentNode;
}
get _$AU() {
return this._$AM._$AU;
}
u(t2) {
const { el: { content: i3 }, parts: s3 } = this._$AD, e2 = ((t2 == null ? void 0 : t2.creationScope) ?? r$5).importNode(i3, true);
E.currentNode = e2;
let h2 = E.nextNode(), o2 = 0, n3 = 0, l2 = s3[0];
for (; void 0 !== l2; ) {
if (o2 === l2.index) {
let i4;
2 === l2.type ? i4 = new M(h2, h2.nextSibling, this, t2) : 1 === l2.type ? i4 = new l2.ctor(h2, l2.name, l2.strings, this, t2) : 6 === l2.type && (i4 = new L(h2, this, t2)), this._$AV.push(i4), l2 = s3[++n3];
}
o2 !== (l2 == null ? void 0 : l2.index) && (h2 = E.nextNode(), o2++);
}
return E.currentNode = r$5, e2;
}
p(t2) {
let i3 = 0;
for (const s3 of this._$AV)
void 0 !== s3 && (void 0 !== s3.strings ? (s3._$AI(t2, s3, i3), i3 += s3.strings.length - 2) : s3._$AI(t2[i3])), i3++;
}
}
class M {
get _$AU() {
var _a2;
return ((_a2 = this._$AM) == null ? void 0 : _a2._$AU) ?? this._$Cv;
}
constructor(t2, i3, s3, e2) {
this.type = 2, this._$AH = T, this._$AN = void 0, this._$AA = t2, this._$AB = i3, this._$AM = s3, this.options = e2, this._$Cv = (e2 == null ? void 0 : e2.isConnected) ?? true;
}
get parentNode() {
let t2 = this._$AA.parentNode;
const i3 = this._$AM;
return void 0 !== i3 && 11 === (t2 == null ? void 0 : t2.nodeType) && (t2 = i3.parentNode), t2;
}
get startNode() {
return this._$AA;
}
get endNode() {
return this._$AB;
}
_$AI(t2, i3 = this) {
t2 = N(this, t2, i3), c$3(t2) ? t2 === T || null == t2 || "" === t2 ? (this._$AH !== T && this._$AR(), this._$AH = T) : t2 !== this._$AH && t2 !== w && this._(t2) : void 0 !== t2._$litType$ ? this.g(t2) : void 0 !== t2.nodeType ? this.$(t2) : u$2(t2) ? this.T(t2) : this._(t2);
}
k(t2) {
return this._$AA.parentNode.insertBefore(t2, this._$AB);
}
$(t2) {
this._$AH !== t2 && (this._$AR(), this._$AH = this.k(t2));
}
_(t2) {
this._$AH !== T && c$3(this._$AH) ? this._$AA.nextSibling.data = t2 : this.$(r$5.createTextNode(t2)), this._$AH = t2;
}
g(t2) {
var _a2;
const { values: i3, _$litType$: s3 } = t2, e2 = "number" == typeof s3 ? this._$AC(t2) : (void 0 === s3.el && (s3.el = V.createElement(C(s3.h, s3.h[0]), this.options)), s3);
if (((_a2 = this._$AH) == null ? void 0 : _a2._$AD) === e2)
this._$AH.p(i3);
else {
const t3 = new S(e2, this), s4 = t3.u(this.options);
t3.p(i3), this.$(s4), this._$AH = t3;
}
}
_$AC(t2) {
let i3 = A.get(t2.strings);
return void 0 === i3 && A.set(t2.strings, i3 = new V(t2)), i3;
}
T(t2) {
a(this._$AH) || (this._$AH = [], this._$AR());
const i3 = this._$AH;
let s3, e2 = 0;
for (const h2 of t2)
e2 === i3.length ? i3.push(s3 = new M(this.k(l()), this.k(l()), this, this.options)) : s3 = i3[e2], s3._$AI(h2), e2++;
e2 < i3.length && (this._$AR(s3 && s3._$AB.nextSibling, e2), i3.length = e2);
}
_$AR(t2 = this._$AA.nextSibling, i3) {
var _a2;
for ((_a2 = this._$AP) == null ? void 0 : _a2.call(this, false, true, i3); t2 && t2 !== this._$AB; ) {
const i4 = t2.nextSibling;
t2.remove(), t2 = i4;
}
}
setConnected(t2) {
var _a2;
void 0 === this._$AM && (this._$Cv = t2, (_a2 = this._$AP) == null ? void 0 : _a2.call(this, t2));
}
}
class R {
get tagName() {
return this.element.tagName;
}
get _$AU() {
return this._$AM._$AU;
}
constructor(t2, i3, s3, e2, h2) {
this.type = 1, this._$AH = T, this._$AN = void 0, this.element = t2, this.name = i3, this._$AM = e2, this.options = h2, s3.length > 2 || "" !== s3[0] || "" !== s3[1] ? (this._$AH = Array(s3.length - 1).fill(new String()), this.strings = s3) : this._$AH = T;
}
_$AI(t2, i3 = this, s3, e2) {
const h2 = this.strings;
let o2 = false;
if (void 0 === h2)
t2 = N(this, t2, i3, 0), o2 = !c$3(t2) || t2 !== this._$AH && t2 !== w, o2 && (this._$AH = t2);
else {
const e3 = t2;
let n3, r2;
for (t2 = h2[0], n3 = 0; n3 < h2.length - 1; n3++)
r2 = N(this, e3[s3 + n3], i3, n3), r2 === w && (r2 = this._$AH[n3]), o2 || (o2 = !c$3(r2) || r2 !== this._$AH[n3]), r2 === T ? t2 = T : t2 !== T && (t2 += (r2 ?? "") + h2[n3 + 1]), this._$AH[n3] = r2;
}
o2 && !e2 && this.j(t2);
}
j(t2) {
t2 === T ? this.element.removeAttribute(this.name) : this.element.setAttribute(this.name, t2 ?? "");
}
}
class k extends R {
constructor() {
super(...arguments), this.type = 3;
}
j(t2) {
this.element[this.name] = t2 === T ? void 0 : t2;
}
}
class H extends R {
constructor() {
super(...arguments), this.type = 4;
}
j(t2) {
this.element.toggleAttribute(this.name, !!t2 && t2 !== T);
}
}
class I extends R {
constructor(t2, i3, s3, e2, h2) {
super(t2, i3, s3, e2, h2), this.type = 5;
}
_$AI(t2, i3 = this) {
if ((t2 = N(this, t2, i3, 0) ?? T) === w)
return;
const s3 = this._$AH, e2 = t2 === T && s3 !== T || t2.capture !== s3.capture || t2.once !== s3.once || t2.passive !== s3.passive, h2 = t2 !== T && (s3 === T || e2);
e2 && this.element.removeEventListener(this.name, this, s3), h2 && this.element.addEventListener(this.name, this, t2), this._$AH = t2;
}
handleEvent(t2) {
var _a2;
"function" == typeof this._$AH ? this._$AH.call(((_a2 = this.options) == null ? void 0 : _a2.host) ?? this.element, t2) : this._$AH.handleEvent(t2);
}
}
class L {
constructor(t2, i3, s3) {
this.element = t2, this.type = 6, this._$AN = void 0, this._$AM = i3, this.options = s3;
}
get _$AU() {
return this._$AM._$AU;
}
_$AI(t2) {
N(this, t2);
}
}
const z = { S: e$1, A: h$3, P: o$2, C: 1, M: P, L: S, R: u$2, V: N, D: M, I: R, H, N: I, U: k, B: L }, Z = t$3.litHtmlPolyfillSupport;
Z == null ? void 0 : Z(V, M), (t$3.litHtmlVersions ?? (t$3.litHtmlVersions = [])).push("3.0.0");
const j = (t2, i3, s3) => {
const e2 = (s3 == null ? void 0 : s3.renderBefore) ?? i3;
let h2 = e2._$litPart$;
if (void 0 === h2) {
const t3 = (s3 == null ? void 0 : s3.renderBefore) ?? null;
e2._$litPart$ = h2 = new M(i3.insertBefore(l(), t3), t3, void 0, s3 ?? {});
}
return h2._$AI(t2), h2;
};
/**
* @license
* Copyright 2017 Google LLC
* SPDX-License-Identifier: BSD-3-Clause
*/
let s$3 = class s extends b {
constructor() {
super(...arguments), this.renderOptions = { host: this }, this._$Do = void 0;
}
createRenderRoot() {
var _a2;
const t2 = super.createRenderRoot();
return (_a2 = this.renderOptions).renderBefore ?? (_a2.renderBefore = t2.firstChild), t2;
}
update(t2) {
const i3 = this.render();
this.hasUpdated || (this.renderOptions.isConnected = this.isConnected), super.update(t2), this._$Do = j(i3, this.renderRoot, this.renderOptions);
}
connectedCallback() {
var _a2;
super.connectedCallback(), (_a2 = this._$Do) == null ? void 0 : _a2.setConnected(true);
}
disconnectedCallback() {
var _a2;
super.disconnectedCallback(), (_a2 = this._$Do) == null ? void 0 : _a2.setConnected(false);
}
render() {
return w;
}
};
s$3._$litElement$ = true, s$3["finalized"] = true, (_a = globalThis.litElementHydrateSupport) == null ? void 0 : _a.call(globalThis, { LitElement: s$3 });
const r$4 = globalThis.litElementPolyfillSupport;
r$4 == null ? void 0 : r$4({ LitElement: s$3 });
(globalThis.litElementVersions ?? (globalThis.litElementVersions = [])).push("4.0.0");
/**
* @license
* Copyright 2020 Google LLC
* SPDX-License-Identifier: BSD-3-Clause
*/
const { D: t$2 } = z, i$2 = (o2) => null === o2 || "object" != typeof o2 && "function" != typeof o2, f$1 = (o2) => void 0 === o2.strings, s$2 = () => document.createComment(""), r$3 = (o2, i3, n3) => {
var _a2;
const e2 = o2._$AA.parentNode, l2 = void 0 === i3 ? o2._$AB : i3._$AA;
if (void 0 === n3) {
const i4 = e2.insertBefore(s$2(), l2), c3 = e2.insertBefore(s$2(), l2);
n3 = new t$2(i4, c3, o2, o2.options);
} else {
const t2 = n3._$AB.nextSibling, i4 = n3._$AM, c3 = i4 !== o2;
if (c3) {
let t3;
(_a2 = n3._$AQ) == null ? void 0 : _a2.call(n3, o2), n3._$AM = o2, void 0 !== n3._$AP && (t3 = o2._$AU) !== i4._$AU && n3._$AP(t3);
}
if (t2 !== l2 || c3) {
let o3 = n3._$AA;
for (; o3 !== t2; ) {
const t3 = o3.nextSibling;
e2.insertBefore(o3, l2), o3 = t3;
}
}
}
return n3;
}, v = (o2, t2, i3 = o2) => (o2._$AI(t2, i3), o2), u$1 = {}, m$1 = (o2, t2 = u$1) => o2._$AH = t2, p = (o2) => o2._$AH, h$2 = (o2) => {
var _a2;
(_a2 = o2._$AP) == null ? void 0 : _a2.call(o2, false, true);
let t2 = o2._$AA;
const i3 = o2._$AB.nextSibling;
for (; t2 !== i3; ) {
const o3 = t2.nextSibling;
t2.remove(), t2 = o3;
}
};
/**
* @license
* Copyright 2017 Google LLC
* SPDX-License-Identifier: BSD-3-Clause
*/
const t$1 = { ATTRIBUTE: 1, CHILD: 2, PROPERTY: 3, BOOLEAN_ATTRIBUTE: 4, EVENT: 5, ELEMENT: 6 }, e = (t2) => (...e2) => ({ _$litDirective$: t2, values: e2 });
let i$1 = class i {
constructor(t2) {
}
get _$AU() {
return this._$AM._$AU;
}
_$AT(t2, e2, i3) {
this._$Ct = t2, this._$AM = e2, this._$Ci = i3;
}
_$AS(t2, e2) {
return this.update(t2, e2);
}
update(t2, e2) {
return this.render(...e2);
}
};
/**
* @license
* Copyright 2017 Google LLC
* SPDX-License-Identifier: BSD-3-Clause
*/
const s$1 = (i3, t2) => {
var _a2;
const e2 = i3._$AN;
if (void 0 === e2)
return false;
for (const i4 of e2)
(_a2 = i4._$AO) == null ? void 0 : _a2.call(i4, t2, false), s$1(i4, t2);
return true;
}, o$1 = (i3) => {
let t2, e2;
do {
if (void 0 === (t2 = i3._$AM))
break;
e2 = t2._$AN, e2.delete(i3), i3 = t2;
} while (0 === (e2 == null ? void 0 : e2.size));
}, r$2 = (i3) => {
for (let t2; t2 = i3._$AM; i3 = t2) {
let e2 = t2._$AN;
if (void 0 === e2)
t2._$AN = e2 = /* @__PURE__ */ new Set();
else if (e2.has(i3))
break;
e2.add(i3), c$2(t2);
}
};
function h$1(i3) {
void 0 !== this._$AN ? (o$1(this), this._$AM = i3, r$2(this)) : this._$AM = i3;
}
function n$2(i3, t2 = false, e2 = 0) {
const r2 = this._$AH, h2 = this._$AN;
if (void 0 !== h2 && 0 !== h2.size)
if (t2)
if (Array.isArray(r2))
for (let i4 = e2; i4 < r2.length; i4++)
s$1(r2[i4], false), o$1(r2[i4]);
else
null != r2 && (s$1(r2, false), o$1(r2));
else
s$1(this, i3);
}
const c$2 = (i3) => {
i3.type == t$1.CHILD && (i3._$AP ?? (i3._$AP = n$2), i3._$AQ ?? (i3._$AQ = h$1));
};
class f extends i$1 {
constructor() {
super(...arguments), this._$AN = void 0;
}
_$AT(i3, t2, e2) {
super._$AT(i3, t2, e2), r$2(this), this.isConnected = i3._$AU;
}
_$AO(i3, t2 = true) {
var _a2, _b;
i3 !== this.isConnected && (this.isConnected = i3, i3 ? (_a2 = this.reconnected) == null ? void 0 : _a2.call(this) : (_b = this.disconnected) == null ? void 0 : _b.call(this)), t2 && (s$1(this, i3), o$1(this));
}
setValue(t2) {
if (f$1(this._$Ct))
this._$Ct._$AI(t2, this);
else {
const i3 = [...this._$Ct._$AH];
i3[this._$Ci] = t2, this._$Ct._$AI(i3, this, 0);
}
}
disconnected() {
}
reconnected() {
}
}
/**
* @license
* Copyright 2021 Google LLC
* SPDX-License-Identifier: BSD-3-Clause
*/
class s2 {
constructor(t2) {
this.G = t2;
}
disconnect() {
this.G = void 0;
}
reconnect(t2) {
this.G = t2;
}
deref() {
return this.G;
}
}
class i2 {
constructor() {
this.Y = void 0, this.Z = void 0;
}
get() {
return this.Y;
}
pause() {
this.Y ?? (this.Y = new Promise((t2) => this.Z = t2));
}
resume() {
var _a2;
(_a2 = this.Z) == null ? void 0 : _a2.call(this), this.Y = this.Z = void 0;
}
}
/**
* @license
* Copyright 2017 Google LLC
* SPDX-License-Identifier: BSD-3-Clause
*/
const n$1 = (t2) => !i$2(t2) && "function" == typeof t2.then, h = 1073741823;
let c$1 = class c extends f {
constructor() {
super(...arguments), this._$C_t = h, this._$Cwt = [], this._$Cq = new s2(this), this._$CK = new i2();
}
render(...s3) {
return s3.find((t2) => !n$1(t2)) ?? w;
}
update(s3, i3) {
const e2 = this._$Cwt;
let r2 = e2.length;
this._$Cwt = i3;
const o2 = this._$Cq, c3 = this._$CK;
this.isConnected || this.disconnected();
for (let t2 = 0; t2 < i3.length && !(t2 > this._$C_t); t2++) {
const s4 = i3[t2];
if (!n$1(s4))
return this._$C_t = t2, s4;
t2 < r2 && s4 === e2[t2] || (this._$C_t = h, r2 = 0, Promise.resolve(s4).then(async (t3) => {
for (; c3.get(); )
await c3.get();
const i4 = o2.deref();
if (void 0 !== i4) {
const e3 = i4._$Cwt.indexOf(s4);
e3 > -1 && e3 < i4._$C_t && (i4._$C_t = e3, i4.setValue(t3));
}
}));
}
return w;
}
disconnected() {
this._$Cq.disconnect(), this._$CK.pause();
}
reconnected() {
this._$Cq.reconnect(this), this._$CK.resume();
}
};
const m = e(c$1);
/**
* @license
* Copyright 2017 Google LLC
* SPDX-License-Identifier: BSD-3-Clause
*/
const t = (t2) => (e2, o2) => {
void 0 !== o2 ? o2.addInitializer(() => {
customElements.define(t2, e2);
}) : customElements.define(t2, e2);
};
/**
* @license
* Copyright 2017 Google LLC
* SPDX-License-Identifier: BSD-3-Clause
*/
const o = { attribute: true, type: String, converter: u$3, reflect: false, hasChanged: f$3 }, r$1 = (t2 = o, e2, r2) => {
const { kind: n3, metadata: i3 } = r2;
let s3 = globalThis.litPropertyMetadata.get(i3);
if (void 0 === s3 && globalThis.litPropertyMetadata.set(i3, s3 = /* @__PURE__ */ new Map()), s3.set(r2.name, t2), "accessor" === n3) {
const { name: o2 } = r2;
return { set(r3) {
const n4 = e2.get.call(this);
e2.set.call(this, r3), this.requestUpdate(o2, n4, t2);
}, init(e3) {
return void 0 !== e3 && this.C(o2, void 0, t2), e3;
} };
}
if ("setter" === n3) {
const { name: o2 } = r2;
return function(r3) {
const n4 = this[o2];
e2.call(this, r3), this.requestUpdate(o2, n4, t2);
};
}
throw Error("Unsupported decorator location: " + n3);
};
function n2(t2) {
return (e2, o2) => "object" == typeof o2 ? r$1(t2, e2, o2) : ((t3, e3, o3) => {
const r2 = e3.hasOwnProperty(o3);
return e3.constructor.createProperty(o3, r2 ? { ...t3, wrapped: true } : t3), r2 ? Object.getOwnPropertyDescriptor(e3, o3) : void 0;
})(t2, e2, o2);
}
/**
* @license
* Copyright 2017 Google LLC
* SPDX-License-Identifier: BSD-3-Clause
*/
function r(r2) {
return n2({ ...r2, state: true, attribute: false });
}
/**
* @license
* Copyright 2021 Google LLC
* SPDX-License-Identifier: BSD-3-Clause
*/
const isStrTagged = (val) => typeof val !== "string" && "strTag" in val;
const joinStringsAndValues = (strings, values, valueOrder) => {
let concat = strings[0];
for (let i3 = 1; i3 < strings.length; i3++) {
concat += values[valueOrder ? valueOrder[i3 - 1] : i3 - 1];
concat += strings[i3];
}
return concat;
};
/**
* @license
* Copyright 2021 Google LLC
* SPDX-License-Identifier: BSD-3-Clause
*/
const defaultMsg = (template) => isStrTagged(template) ? joinStringsAndValues(template.strings, template.values) : template;
/**
* @license
* Copyright 2021 Google LLC
* SPDX-License-Identifier: BSD-3-Clause
*/
const LOCALE_STATUS_EVENT = "lit-localize-status";
/**
* @license
* Copyright 2021 Google LLC
* SPDX-License-Identifier: BSD-3-Clause
*/
class LocalizeController {
constructor(host) {
this.__litLocalizeEventHandler = (event) => {
if (event.detail.status === "ready") {
this.host.requestUpdate();
}
};
this.host = host;
}
hostConnected() {
window.addEventListener(LOCALE_STATUS_EVENT, this.__litLocalizeEventHandler);
}
hostDisconnected() {
window.removeEventListener(LOCALE_STATUS_EVENT, this.__litLocalizeEventHandler);
}
}
const _updateWhenLocaleChanges = (host) => host.addController(new LocalizeController(host));
const updateWhenLocaleChanges = _updateWhenLocaleChanges;
/**
* @license
* Copyright 2021 Google LLC
* SPDX-License-Identifier: BSD-3-Clause
*/
const localized = () => (clazz, _context) => {
clazz.addInitializer(updateWhenLocaleChanges);
return clazz;
};
/**
* @license
* Copyright 2020 Google LLC
* SPDX-License-Identifier: BSD-3-Clause
*/
class Deferred {
constructor() {
this.settled = false;
this.promise = new Promise((resolve, reject) => {
this._resolve = resolve;
this._reject = reject;
});
}
resolve(value) {
this.settled = true;
this._resolve(value);
}
reject(error) {
this.settled = true;
this._reject(error);
}
}
/**
* @license
* Copyright 2014 Travis Webb
* SPDX-License-Identifier: MIT
*/
const hl = [];
for (let i3 = 0; i3 < 256; i3++) {
hl[i3] = (i3 >> 4 & 15).toString(16) + (i3 & 15).toString(16);
}
function fnv1a64(str) {
let t0 = 0, v0 = 8997, t1 = 0, v1 = 33826, t2 = 0, v2 = 40164, t3 = 0, v3 = 52210;
for (let i3 = 0; i3 < str.length; i3++) {
v0 ^= str.charCodeAt(i3);
t0 = v0 * 435;
t1 = v1 * 435;
t2 = v2 * 435;
t3 = v3 * 435;
t2 += v0 << 8;
t3 += v1 << 8;
t1 += t0 >>> 16;
v0 = t0 & 65535;
t2 += t1 >>> 16;
v1 = t1 & 65535;
v3 = t3 + (t2 >>> 16) & 65535;
v2 = t2 & 65535;
}
return hl[v3 >> 8] + hl[v3 & 255] + hl[v2 >> 8] + hl[v2 & 255] + hl[v1 >> 8] + hl[v1 & 255] + hl[v0 >> 8] + hl[v0 & 255];
}
/**
* @license
* Copyright 2020 Google LLC
* SPDX-License-Identifier: BSD-3-Clause
*/
const HASH_DELIMITER = "";
const HTML_PREFIX = "h";
const STRING_PREFIX = "s";
function generateMsgId(strings, isHtmlTagged) {
return (isHtmlTagged ? HTML_PREFIX : STRING_PREFIX) + fnv1a64(typeof strings === "string" ? strings : strings.join(HASH_DELIMITER));
}
/**
* @license
* Copyright 2021 Google LLC
* SPDX-License-Identifier: BSD-3-Clause
*/
const expressionOrders = /* @__PURE__ */ new WeakMap();
const hashCache = /* @__PURE__ */ new Map();
function runtimeMsg(templates2, template, options) {
if (templates2) {
const id = (options == null ? void 0 : options.id) ?? generateId(template);
const localized2 = templates2[id];
if (localized2) {
if (typeof localized2 === "string") {
return localized2;
} else if ("strTag" in localized2) {
return joinStringsAndValues(
localized2.strings,
// Cast `template` because its type wasn't automatically narrowed (but
// we know it must be the same type as `localized`).
template.values,
localized2.values
);
} else {
let order = expressionOrders.get(localized2);
if (order === void 0) {
order = localized2.values;
expressionOrders.set(localized2, order);
}
return {
...localized2,
values: order.map((i3) => template.values[i3])
};
}
}
}
return defaultMsg(template);
}
function generateId(template) {
const strings = typeof template === "string" ? template : template.strings;
let id = hashCache.get(strings);
if (id === void 0) {
id = generateMsgId(strings, typeof template !== "string" && !("strTag" in template));
hashCache.set(strings, id);
}
return id;
}
/**
* @license
* Copyright 2021 Google LLC
* SPDX-License-Identifier: BSD-3-Clause
*/
function dispatchStatusEvent(detail) {
window.dispatchEvent(new CustomEvent(LOCALE_STATUS_EVENT, { detail }));
}
let activeLocale = "";
let loadingLocale;
let sourceLocale$1;
let validLocales;
let loadLocale;
let templates;
let loading = new Deferred();
loading.resolve();
let requestId = 0;
const configureLocalization = (config) => {
_installMsgImplementation((template, options) => runtimeMsg(templates, template, options));
activeLocale = sourceLocale$1 = config.sourceLocale;
validLocales = new Set(config.targetLocales);
validLocales.add(config.sourceLocale);
loadLocale = config.loadLocale;
return { getLocale: getLocale$1, setLocale: setLocale$1 };
};
const getLocale$1 = () => {
return activeLocale;
};
const setLocale$1 = (newLocale) => {
if (newLocale === (loadingLocale ?? activeLocale)) {
return loading.promise;
}
if (!validLocales || !loadLocale) {
throw new Error("Internal error");
}
if (!validLocales.has(newLocale)) {
throw new Error("Invalid locale code");
}
requestId++;
const thisRequestId = requestId;
loadingLocale = newLocale;
if (loading.settled) {
loading = new Deferred();
}
dispatchStatusEvent({ status: "loading", loadingLocale: newLocale });
const localePromise = newLocale === sourceLocale$1 ? (
// We could switch to the source locale synchronously, but we prefer to
// queue it on a microtask so that switching locales is consistently
// asynchronous.
Promise.resolve({ templates: void 0 })
) : loadLocale(newLocale);
localePromise.then((mod) => {
if (requestId === thisRequestId) {
activeLocale = newLocale;
loadingLocale = void 0;
templates = mod.templates;
dispatchStatusEvent({ status: "ready", readyLocale: newLocale });
loading.resolve();
}
}, (err) => {
if (requestId === thisRequestId) {
dispatchStatusEvent({
status: "error",
errorLocale: newLocale,
errorMessage: err.toString()
});
loading.reject(err);
}
});
return loading.promise;
};
/**
* @license
* Copyright 2020 Google LLC
* SPDX-License-Identifier: BSD-3-Clause
*/
let msg = defaultMsg;
let installed = false;
function _installMsgImplementation(impl) {
if (installed) {
throw new Error("lit-localize can only be configured once");
}
msg = impl;
installed = true;
}
/**
* @license
* Copyright 2017 Google LLC
* SPDX-License-Identifier: BSD-3-Clause
*/
const u = (e2, s3, t2) => {
const r2 = /* @__PURE__ */ new Map();
for (let l2 = s3; l2 <= t2; l2++)
r2.set(e2[l2], l2);
return r2;
}, c2 = e(class extends i$1 {
constructor(e2) {
if (super(e2), e2.type !== t$1.CHILD)
throw Error("repeat() can only be used in text expressions");
}
ht(e2, s3, t2) {
let r2;
void 0 === t2 ? t2 = s3 : void 0 !== s3 && (r2 = s3);
const l2 = [], o2 = [];
let i3 = 0;
for (const s4 of e2)
l2[i3] = r2 ? r2(s4, i3) : i3, o2[i3] = t2(s4, i3), i3++;
return { values: o2, keys: l2 };
}
render(e2, s3, t2) {
return this.ht(e2, s3, t2).values;
}
update(s3, [t2, r2, c3]) {
const d2 = p(s3), { values: p$12, keys: a2 } = this.ht(t2, r2, c3);
if (!Array.isArray(d2))
return this.dt = a2, p$12;
const h2 = this.dt ?? (this.dt = []), v$12 = [];
let m2, y2, x2 = 0, j2 = d2.length - 1, k2 = 0, w$1 = p$12.length - 1;
for (; x2 <= j2 && k2 <= w$1; )
if (null === d2[x2])
x2++;
else if (null === d2[j2])
j2--;
else if (h2[x2] === a2[k2])
v$12[k2] = v(d2[x2], p$12[k2]), x2++, k2++;
else if (h2[j2] === a2[w$1])
v$12[w$1] = v(d2[j2], p$12[w$1]), j2--, w$1--;
else if (h2[x2] === a2[w$1])
v$12[w$1] = v(d2[x2], p$12[w$1]), r$3(s3, v$12[w$1 + 1], d2[x2]), x2++, w$1--;
else if (h2[j2] === a2[k2])
v$12[k2] = v(d2[j2], p$12[k2]), r$3(s3, d2[x2], d2[j2]), j2--, k2++;
else if (void 0 === m2 && (m2 = u(a2, k2, w$1), y2 = u(h2, x2, j2)), m2.has(h2[x2]))
if (m2.has(h2[j2])) {
const e2 = y2.get(a2[k2]), t3 = void 0 !== e2 ? d2[e2] : null;
if (null === t3) {
const e3 = r$3(s3, d2[x2]);
v(e3, p$12[k2]), v$12[k2] = e3;
} else
v$12[k2] = v(t3, p$12[k2]), r$3(s3, d2[x2], t3), d2[e2] = null;
k2++;
} else
h$2(d2[j2]), j2--;
else
h$2(d2[x2]), x2++;
for (; k2 <= w$1; ) {
const e2 = r$3(s3, v$12[w$1 + 1]);
v(e2, p$12[k2]), v$12[k2++] = e2;
}
for (; x2 <= j2; ) {
const e2 = d2[x2++];
null !== e2 && h$2(e2);
}
return this.dt = a2, m$1(s3, v$12), w;
}
});
class DosageEvent extends Event {
constructor(type, dosage, index) {
super(type);
this.dosage = dosage;
this.index = index;
}
}
const colors = i$5`
* {
--primary-900: color-mix(in srgb, #0C75AD 20%, black);
--primary-800: color-mix(in srgb, #0C75AD 40%, black);
--primary-700: color-mix(in srgb, #0C75AD 60%, black);
--primary-600: color-mix(in srgb, #0C75AD 80%, black);
--primary-500: #0C75AD;
--primary-400: color-mix(in srgb, #0C75AD 80%, white);
--primary-300: color-mix(in srgb, #0C75AD 60%, white);
--primary-200: color-mix(in srgb, #0C75AD 40%, white);
--primary-100: color-mix(in srgb, #0C75AD 20%, white);
--primary-50: color-mix(in srgb, #0C75AD 10%, white);
--secondary-900: color-mix(in srgb, #4A0C8A 80%, black);
--secondary-800: color-mix(in srgb, #4A0C8A 60%, black);
--secondary-700: color-mix(in srgb, #4A0C8A 40%, black);
--secondary-600: color-mix(in srgb, #4A0C8A 20%, black);
--secondary-500: #4A0C8A;
--secondary-400: color-mix(in srgb, #4A0C8A 20%, white);
--secondary-300: color-mix(in srgb, #4A0C8A 40%, white);
--secondary-200: color-mix(in srgb, #4A0C8A 60%, white);
--secondary-100: color-mix(in srgb, #4A0C8A 80%, white);
--secondary-50: color-mix(in srgb, #4A0C8A 90%, white);
--info-900: color-mix(in srgb, #35B9C5 80%, black);
--info-800: color-mix(in srgb, #35B9C5 60%, black);
--info-700: color-mix(in srgb, #35B9C5 40%, black);
--info-600: color-mix(in srgb, #35B9C5 20%, black);
--info-500: #35B9C5;
--info-400: color-mix(in srgb, #35B9C5 20%, white);
--info-300: color-mix(in srgb, #35B9C5 40%, white);
--info-200: color-mix(in srgb, #35B9C5 60%, white);
--info-100: color-mix(in srgb, #35B9C5 80%, white);
--info-50: color-mix(in srgb, #35B9C5 90%, white);
--danger-900: color-mix(in srgb, #CF406E 80%, black);
--danger-800: color-mix(in srgb, #CF406E 60%, black);
--danger-700: color-mix(in srgb, #CF406E 40%, black);
--danger-600: color-mix(in srgb, #CF406E 20%, black);
--danger-500: #CF406E;
--danger-400: color-mix(in srgb, #CF406E 20%, white);
--danger-300: color-mix(in srgb, #CF406E 40%, white);
--danger-200: color-mix(in srgb, #CF406E 60%, white);
--danger-100: color-mix(in srgb, #CF406E 80%, white);
--danger-50: color-mix(in srgb, #CF406E 90%, white);
--warning-900: color-mix(in srgb, #F59F00 80%, black);
--warning-800: color-mix(in srgb, #F59F00 60%, black);
--warning-700: color-mix(in srgb, #F59F00 40%, black);
--warning-600: color-mix(in srgb, #F59F00 20%, black);
--warning-500: #F59F00;
--warning-400: color-mix(in srgb, #F59F00 20%, white);
--warning-300: color-mix(in srgb, #F59F00 40%, white);
--warning-200: color-mix(in srgb, #F59F00 60%, white);
--warning-100: color-mix(in srgb, #F59F00 80%, white);
--warning-50: color-mix(in srgb, #F59F00 90%, white);
--success-900: color-mix(in srgb, #74B822 80%, black);
--success-800: color-mix(in srgb, #74B822 60%, black);
--success-700: color-mix(in srgb, #74B822 40%, black);
--success-600: color-mix(in srgb, #74B822 20%, black);
--success-500: #74B822;
--success-400: color-mix(in srgb, #74B822 20%, white);
--success-300: color-mix(in srgb, #74B822 40%, white);
--success-200: color-mix(in srgb, #74B822 60%, white);
--success-100: color-mix(in srgb, #74B822 80%, white);
--success-50: color-mix(in srgb, #74B822 90%, white);
--gray-900: color-mix(in srgb, #64748b 20%, black);
--gray-800: color-mix(in srgb, #64748b 40%, black);
--gray-700: color-mix(in srgb, #64748b 60%, black);
--gray-600: color-mix(in srgb, #64748b 80%, black);
--gray-500: #64748b;
--gray-400: color-mix(in srgb, #64748b 80%, white);
--gray-300: color-mix(in srgb, #64748b 60%, white);
--gray-200: color-mix(in srgb, #64748b 40%, white);
--gray-100: color-mix(in srgb, #64748b 20%, white);
--gray-50: color-mix(in srgb, #64748b 10%, white);
--cyan-900: color-mix(in srgb, #00bcd4 80%, black);
--cyan-800: color-mix(in srgb, #00bcd4 60%, black);
--cyan-700: color-mix(in srgb, #00bcd4 40%, black);
--cyan-600: color-mix(in srgb, #00bcd4 20%, black);
--cyan-500: #00bcd4;
--cyan-400: color-mix(in srgb, #00bcd4 20%, white);
--cyan-300: color-mix(in srgb, #00bcd4 40%, white);
--cyan-200: color-mix(in srgb, #00bcd4 60%, white);
--cyan-100: color-mix(in srgb, #00bcd4 80%, white);
--cyan-50: color-mix(in srgb, #00bcd4 90%, white);
--blue-900: color-mix(in srgb, #0092D0 80%, black);
--blue-800: color-mix(in srgb, #0092D0 60%, black);
--blue-700: color-mix(in srgb, #0092D0 40%, black);
--blue-600: color-mix(in srgb, #0092D0 20%, black);
--blue-500: #0092D0;
--blue-400: color-mix(in srgb, #0092D0 20%, white);
--blue-300: color-mix(in srgb, #0092D0 40%, white);
--blue-200: color-mix(in srgb, #0092D0 60%, white);
--blue-100: color-mix(in srgb, #0092D0 80%, white);
--blue-50: color-mix(in srgb, #0092D0 90%, white);
--indigo-900: color-mix(in srgb, #155D78 80%, black);
--indigo-800: color-mix(in srgb, #155D78 60%, black);
--indigo-700: color-mix(in srgb, #155D78 40%, black);
--indigo-600: color-mix(in srgb, #155D78 20%, black);
--indigo-500: #155D78;
--indigo-400: color-mix(in srgb, #155D78 20%, white);
--indigo-300: color-mix(in srgb, #155D78 40%, white);
--indigo-200: color-mix(in srgb, #155D78 60%, white);
--indigo-100: color-mix(in srgb, #155D78 80%, white);
--indigo-50: color-mix(in srgb, #155D78 90%, white);
--yellow-900: color-mix(in srgb, #fec60a 80%, black);
--yellow-800: color-mix(in srgb, #fec60a 60%, black);
--yellow-700: color-mix(in srgb, #fec60a 40%, black);
--yellow-600: color-mix(in srgb, #fec60a 20%, black);
--yellow-500: #fec60a;
--yellow-400: color-mix(in srgb, #fec60a 20%, white);
--yellow-300: color-mix(in srgb, #fec60a 40%, white);
--yellow-200: color-mix(in srgb, #fec60a 60%, white);
--yellow-100: color-mix(in srgb, #fec60a 80%, white);
--yellow-50: color-mix(in srgb, #fec60a 90%, white);
--orange-900: color-mix(in srgb, #F76707 80%, black);
--orange-800: color-mix(in srgb, #F76707 60%, black);
--orange-700: color-mix(in srgb, #F76707 40%, black);
--orange-600: color-mix(in srgb, #F76707 20%, black);
--orange-500: #F76707;
--orange-400: color-mix(in srgb, #F76707 20%, white);
--orange-300: color-mix(in srgb, #F76707 40%, white);
--orange-200: color-mix(in srgb, #F76707 60%, white);
--orange-100: color-mix(in srgb, #F76707 80%, white);
--orange-50: color-mix(in srgb, #F76707 90%, white);
--red-900: color-mix(in srgb, #f44336 80%, black);
--red-800: color-mix(in srgb, #f44336 60%, black);
--red-700: color-mix(in srgb, #f44336 40%, black);
--red-600: color-mix(in srgb, #f44336 20%, black);
--red-500: #f44336;
--red-400: color-mix(in srgb, #f44336 20%, white);
--red-300: color-mix(in srgb, #f44336 40%, white);
--red-200: color-mix(in srgb, #f44336 60%, white);
--red-100: color-mix(in srgb, #f44336 80%, white);
--red-50: color-mix(in srgb, #f44336 90%, white);
--pink-900: color-mix(in srgb, #E47BA0 80%, black);
--pink-800: color-mix(in srgb, #E47BA0 60%, black);
--pink-700: color-mix(in srgb, #E47BA0 40%, black);
--pink-600: color-mix(in srgb, #E47BA0 20%, black);
--pink-500: #E47BA0;
--pink-400: color-mix(in srgb, #E47BA0 20%, white);
--pink-300: color-mix(in srgb, #E47BA0 40%, white);
--pink-200: color-mix(in srgb, #E47BA0 60%, white);
--pink-100: color-mix(in srgb, #E47BA0 80%, white);
--pink-50: color-mix(in srgb, #E47BA0 90%, white);
--purple-900: color-mix(in srgb, #9c27b0 80%, black);
--purple-800: color-mix(in srgb, #9c27b0 60%, black);
--purple-700: color-mix(in srgb, #9c27b0 40%, black);
--purple-600: color-mix(in srgb, #9c27b0 20%, black);
--purple-500: #9c27b0;
--purple-400: color-mix(in srgb, #9c27b0 20%, white);
--purple-300: color-mix(in srgb, #9c27b0 40%, white);
--purple-200: color-mix(in srgb, #9c27b0 60%, white);
--purple-100: color-mix(in srgb, #9c27b0 80%, white);
--purple-50: color-mix(in srgb, #9c27b0 90%, white);
--lime-900: color-mix(in srgb, #cddc39 80%, black);
--lime-800: color-mix(in srgb, #cddc39 60%, black);
--lime-700: color-mix(in srgb, #cddc39 40%, black);
--lime-600: color-mix(in srgb, #cddc39 20%, black);
--lime-500: #cddc39;
--lime-400: color-mix(in srgb, #cddc39 20%, white);
--lime-300: color-mix(in srgb, #cddc39 40%, white);
--lime-200: color-mix(in srgb, #cddc39 60%, white);
--lime-100: color-mix(in srgb, #cddc39 80%, white);
--lime-50: color-mix(in srgb, #cddc39 90%, white);
--green-900: color-mix(in srgb, #4caf50 80%, black);
--green-800: color-mix(in srgb, #4caf50 60%, black);
--green-700: color-mix(in srgb, #4caf50 40%, black);
--green-600: color-mix(in srgb, #4caf50 20%, black);
--green-500: #4caf50;
--green-400: color-mix(in srgb, #4caf50 20%, white);
--green-300: color-mix(in srgb, #4caf50 40%, white);
--green-200: color-mix(in srgb, #4caf50 60%, white);
--green-100: color-mix(in srgb, #4caf50 80%, white);
--green-50: color-mix(in srgb, #4caf50 90%, white);
--teal-900: color-mix(in srgb, #0CA678 80%, black);
--teal-800: color-mix(in srgb, #0CA678 60%, black);
--teal-700: color-mix(in srgb, #0CA678 40%, black);
--teal-600: color-mix(in srgb, #0CA678 20%, black);
--teal-500: #0CA678;
--teal-400: color-mix(in srgb, #0CA678 20%, white);
--teal-300: color-mix(in srgb, #0CA678 40%, white);
--teal-200: color-mix(in srgb, #0CA678 60%, white);
--teal-100: color-mix(in srgb, #0CA678 80%, white);
--teal-50: color-mix(in srgb, #0CA678 90%, white);
--gradient: linear-gradient(45deg, rgba(74,12,138,1) 0%, rgba(12,117,173,1) 100