@terrazzo/plugin-tailwind 2.0.0-alpha.1 → 2.0.0-alpha.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["FORMAT_ID","result: { path: string[]; value: string | string[] }[]","p","FORMAT_CSS","variants: Record<string, string[]>"],"sources":["../../plugin-css/dist/index.js","../src/lib.ts","../src/index.ts"],"sourcesContent":["//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/rgb/parseNumber.js\nconst parseNumber = (color, len) => {\n\tif (typeof color !== \"number\") return;\n\tif (len === 3) return {\n\t\tmode: \"rgb\",\n\t\tr: (color >> 8 & 15 | color >> 4 & 240) / 255,\n\t\tg: (color >> 4 & 15 | color & 240) / 255,\n\t\tb: (color & 15 | color << 4 & 240) / 255\n\t};\n\tif (len === 4) return {\n\t\tmode: \"rgb\",\n\t\tr: (color >> 12 & 15 | color >> 8 & 240) / 255,\n\t\tg: (color >> 8 & 15 | color >> 4 & 240) / 255,\n\t\tb: (color >> 4 & 15 | color & 240) / 255,\n\t\talpha: (color & 15 | color << 4 & 240) / 255\n\t};\n\tif (len === 6) return {\n\t\tmode: \"rgb\",\n\t\tr: (color >> 16 & 255) / 255,\n\t\tg: (color >> 8 & 255) / 255,\n\t\tb: (color & 255) / 255\n\t};\n\tif (len === 8) return {\n\t\tmode: \"rgb\",\n\t\tr: (color >> 24 & 255) / 255,\n\t\tg: (color >> 16 & 255) / 255,\n\t\tb: (color >> 8 & 255) / 255,\n\t\talpha: (color & 255) / 255\n\t};\n};\nvar parseNumber_default = parseNumber;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/colors/named.js\nconst named = {\n\taliceblue: 15792383,\n\tantiquewhite: 16444375,\n\taqua: 65535,\n\taquamarine: 8388564,\n\tazure: 15794175,\n\tbeige: 16119260,\n\tbisque: 16770244,\n\tblack: 0,\n\tblanchedalmond: 16772045,\n\tblue: 255,\n\tblueviolet: 9055202,\n\tbrown: 10824234,\n\tburlywood: 14596231,\n\tcadetblue: 6266528,\n\tchartreuse: 8388352,\n\tchocolate: 13789470,\n\tcoral: 16744272,\n\tcornflowerblue: 6591981,\n\tcornsilk: 16775388,\n\tcrimson: 14423100,\n\tcyan: 65535,\n\tdarkblue: 139,\n\tdarkcyan: 35723,\n\tdarkgoldenrod: 12092939,\n\tdarkgray: 11119017,\n\tdarkgreen: 25600,\n\tdarkgrey: 11119017,\n\tdarkkhaki: 12433259,\n\tdarkmagenta: 9109643,\n\tdarkolivegreen: 5597999,\n\tdarkorange: 16747520,\n\tdarkorchid: 10040012,\n\tdarkred: 9109504,\n\tdarksalmon: 15308410,\n\tdarkseagreen: 9419919,\n\tdarkslateblue: 4734347,\n\tdarkslategray: 3100495,\n\tdarkslategrey: 3100495,\n\tdarkturquoise: 52945,\n\tdarkviolet: 9699539,\n\tdeeppink: 16716947,\n\tdeepskyblue: 49151,\n\tdimgray: 6908265,\n\tdimgrey: 6908265,\n\tdodgerblue: 2003199,\n\tfirebrick: 11674146,\n\tfloralwhite: 16775920,\n\tforestgreen: 2263842,\n\tfuchsia: 16711935,\n\tgainsboro: 14474460,\n\tghostwhite: 16316671,\n\tgold: 16766720,\n\tgoldenrod: 14329120,\n\tgray: 8421504,\n\tgreen: 32768,\n\tgreenyellow: 11403055,\n\tgrey: 8421504,\n\thoneydew: 15794160,\n\thotpink: 16738740,\n\tindianred: 13458524,\n\tindigo: 4915330,\n\tivory: 16777200,\n\tkhaki: 15787660,\n\tlavender: 15132410,\n\tlavenderblush: 16773365,\n\tlawngreen: 8190976,\n\tlemonchiffon: 16775885,\n\tlightblue: 11393254,\n\tlightcoral: 15761536,\n\tlightcyan: 14745599,\n\tlightgoldenrodyellow: 16448210,\n\tlightgray: 13882323,\n\tlightgreen: 9498256,\n\tlightgrey: 13882323,\n\tlightpink: 16758465,\n\tlightsalmon: 16752762,\n\tlightseagreen: 2142890,\n\tlightskyblue: 8900346,\n\tlightslategray: 7833753,\n\tlightslategrey: 7833753,\n\tlightsteelblue: 11584734,\n\tlightyellow: 16777184,\n\tlime: 65280,\n\tlimegreen: 3329330,\n\tlinen: 16445670,\n\tmagenta: 16711935,\n\tmaroon: 8388608,\n\tmediumaquamarine: 6737322,\n\tmediumblue: 205,\n\tmediumorchid: 12211667,\n\tmediumpurple: 9662683,\n\tmediumseagreen: 3978097,\n\tmediumslateblue: 8087790,\n\tmediumspringgreen: 64154,\n\tmediumturquoise: 4772300,\n\tmediumvioletred: 13047173,\n\tmidnightblue: 1644912,\n\tmintcream: 16121850,\n\tmistyrose: 16770273,\n\tmoccasin: 16770229,\n\tnavajowhite: 16768685,\n\tnavy: 128,\n\toldlace: 16643558,\n\tolive: 8421376,\n\tolivedrab: 7048739,\n\torange: 16753920,\n\torangered: 16729344,\n\torchid: 14315734,\n\tpalegoldenrod: 15657130,\n\tpalegreen: 10025880,\n\tpaleturquoise: 11529966,\n\tpalevioletred: 14381203,\n\tpapayawhip: 16773077,\n\tpeachpuff: 16767673,\n\tperu: 13468991,\n\tpink: 16761035,\n\tplum: 14524637,\n\tpowderblue: 11591910,\n\tpurple: 8388736,\n\trebeccapurple: 6697881,\n\tred: 16711680,\n\trosybrown: 12357519,\n\troyalblue: 4286945,\n\tsaddlebrown: 9127187,\n\tsalmon: 16416882,\n\tsandybrown: 16032864,\n\tseagreen: 3050327,\n\tseashell: 16774638,\n\tsienna: 10506797,\n\tsilver: 12632256,\n\tskyblue: 8900331,\n\tslateblue: 6970061,\n\tslategray: 7372944,\n\tslategrey: 7372944,\n\tsnow: 16775930,\n\tspringgreen: 65407,\n\tsteelblue: 4620980,\n\ttan: 13808780,\n\tteal: 32896,\n\tthistle: 14204888,\n\ttomato: 16737095,\n\tturquoise: 4251856,\n\tviolet: 15631086,\n\twheat: 16113331,\n\twhite: 16777215,\n\twhitesmoke: 16119285,\n\tyellow: 16776960,\n\tyellowgreen: 10145074\n};\nvar named_default = named;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/rgb/parseNamed.js\nconst parseNamed = (color) => {\n\treturn parseNumber_default(named_default[color.toLowerCase()], 6);\n};\nvar parseNamed_default = parseNamed;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/rgb/parseHex.js\nconst hex = /^#?([0-9a-f]{8}|[0-9a-f]{6}|[0-9a-f]{4}|[0-9a-f]{3})$/i;\nconst parseHex = (color) => {\n\tlet match;\n\treturn (match = color.match(hex)) ? parseNumber_default(parseInt(match[1], 16), match[1].length) : void 0;\n};\nvar parseHex_default = parseHex;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/util/regex.js\nconst num$1 = \"([+-]?\\\\d*\\\\.?\\\\d+(?:[eE][+-]?\\\\d+)?)\";\nconst num_none = `(?:${num$1}|none)`;\nconst per = `${num$1}%`;\nconst per_none = `(?:${num$1}%|none)`;\nconst num_per = `(?:${num$1}%|${num$1})`;\nconst num_per_none = `(?:${num$1}%|${num$1}|none)`;\nconst hue$1 = `(?:${num$1}(deg|grad|rad|turn)|${num$1})`;\nconst hue_none = `(?:${num$1}(deg|grad|rad|turn)|${num$1}|none)`;\nconst c = `\\\\s*,\\\\s*`;\nconst rx_num_per_none = /* @__PURE__ */ new RegExp(\"^\" + num_per_none + \"$\");\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/rgb/parseRgbLegacy.js\nconst rgb_num_old = /* @__PURE__ */ new RegExp(`^rgba?\\\\(\\\\s*${num$1}${c}${num$1}${c}${num$1}\\\\s*(?:,\\\\s*${num_per}\\\\s*)?\\\\)$`);\nconst rgb_per_old = /* @__PURE__ */ new RegExp(`^rgba?\\\\(\\\\s*${per}${c}${per}${c}${per}\\\\s*(?:,\\\\s*${num_per}\\\\s*)?\\\\)$`);\nconst parseRgbLegacy = (color) => {\n\tlet res = { mode: \"rgb\" };\n\tlet match;\n\tif (match = color.match(rgb_num_old)) {\n\t\tif (match[1] !== void 0) res.r = match[1] / 255;\n\t\tif (match[2] !== void 0) res.g = match[2] / 255;\n\t\tif (match[3] !== void 0) res.b = match[3] / 255;\n\t} else if (match = color.match(rgb_per_old)) {\n\t\tif (match[1] !== void 0) res.r = match[1] / 100;\n\t\tif (match[2] !== void 0) res.g = match[2] / 100;\n\t\tif (match[3] !== void 0) res.b = match[3] / 100;\n\t} else return;\n\tif (match[4] !== void 0) res.alpha = Math.max(0, Math.min(1, match[4] / 100));\n\telse if (match[5] !== void 0) res.alpha = Math.max(0, Math.min(1, +match[5]));\n\treturn res;\n};\nvar parseRgbLegacy_default = parseRgbLegacy;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/_prepare.js\nconst prepare = (color, mode) => color === void 0 ? void 0 : typeof color !== \"object\" ? parse_default(color) : color.mode !== void 0 ? color : mode ? {\n\t...color,\n\tmode\n} : void 0;\nvar _prepare_default = prepare;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/converter.js\nconst converter = (target_mode = \"rgb\") => (color) => (color = _prepare_default(color, target_mode)) !== void 0 ? color.mode === target_mode ? color : converters$1[color.mode][target_mode] ? converters$1[color.mode][target_mode](color) : target_mode === \"rgb\" ? converters$1[color.mode].rgb(color) : converters$1.rgb[target_mode](converters$1[color.mode].rgb(color)) : void 0;\nvar converter_default = converter;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/modes.js\nconst converters$1 = {};\nconst modes = {};\nconst parsers = [];\nconst colorProfiles = {};\nconst identity = (v) => v;\nconst useMode = (definition$28) => {\n\tconverters$1[definition$28.mode] = {\n\t\t...converters$1[definition$28.mode],\n\t\t...definition$28.toMode\n\t};\n\tObject.keys(definition$28.fromMode || {}).forEach((k$3) => {\n\t\tif (!converters$1[k$3]) converters$1[k$3] = {};\n\t\tconverters$1[k$3][definition$28.mode] = definition$28.fromMode[k$3];\n\t});\n\tif (!definition$28.ranges) definition$28.ranges = {};\n\tif (!definition$28.difference) definition$28.difference = {};\n\tdefinition$28.channels.forEach((channel) => {\n\t\tif (definition$28.ranges[channel] === void 0) definition$28.ranges[channel] = [0, 1];\n\t\tif (!definition$28.interpolate[channel]) throw new Error(`Missing interpolator for: ${channel}`);\n\t\tif (typeof definition$28.interpolate[channel] === \"function\") definition$28.interpolate[channel] = { use: definition$28.interpolate[channel] };\n\t\tif (!definition$28.interpolate[channel].fixup) definition$28.interpolate[channel].fixup = identity;\n\t});\n\tmodes[definition$28.mode] = definition$28;\n\t(definition$28.parse || []).forEach((parser) => {\n\t\tuseParser(parser, definition$28.mode);\n\t});\n\treturn converter_default(definition$28.mode);\n};\nconst getMode = (mode) => modes[mode];\nconst useParser = (parser, mode) => {\n\tif (typeof parser === \"string\") {\n\t\tif (!mode) throw new Error(`'mode' required when 'parser' is a string`);\n\t\tcolorProfiles[parser] = mode;\n\t} else if (typeof parser === \"function\") {\n\t\tif (parsers.indexOf(parser) < 0) parsers.push(parser);\n\t}\n};\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/parse.js\nconst IdentStartCodePoint = /[^\\x00-\\x7F]|[a-zA-Z_]/;\nconst IdentCodePoint = /[^\\x00-\\x7F]|[-\\w]/;\nconst Tok = {\n\tFunction: \"function\",\n\tIdent: \"ident\",\n\tNumber: \"number\",\n\tPercentage: \"percentage\",\n\tParenClose: \")\",\n\tNone: \"none\",\n\tHue: \"hue\",\n\tAlpha: \"alpha\"\n};\nlet _i = 0;\nfunction is_num(chars) {\n\tlet ch = chars[_i];\n\tlet ch1 = chars[_i + 1];\n\tif (ch === \"-\" || ch === \"+\") return /\\d/.test(ch1) || ch1 === \".\" && /\\d/.test(chars[_i + 2]);\n\tif (ch === \".\") return /\\d/.test(ch1);\n\treturn /\\d/.test(ch);\n}\nfunction is_ident(chars) {\n\tif (_i >= chars.length) return false;\n\tlet ch = chars[_i];\n\tif (IdentStartCodePoint.test(ch)) return true;\n\tif (ch === \"-\") {\n\t\tif (chars.length - _i < 2) return false;\n\t\tlet ch1 = chars[_i + 1];\n\t\tif (ch1 === \"-\" || IdentStartCodePoint.test(ch1)) return true;\n\t\treturn false;\n\t}\n\treturn false;\n}\nconst huenits = {\n\tdeg: 1,\n\trad: 180 / Math.PI,\n\tgrad: 9 / 10,\n\tturn: 360\n};\nfunction num(chars) {\n\tlet value = \"\";\n\tif (chars[_i] === \"-\" || chars[_i] === \"+\") value += chars[_i++];\n\tvalue += digits(chars);\n\tif (chars[_i] === \".\" && /\\d/.test(chars[_i + 1])) value += chars[_i++] + digits(chars);\n\tif (chars[_i] === \"e\" || chars[_i] === \"E\") {\n\t\tif ((chars[_i + 1] === \"-\" || chars[_i + 1] === \"+\") && /\\d/.test(chars[_i + 2])) value += chars[_i++] + chars[_i++] + digits(chars);\n\t\telse if (/\\d/.test(chars[_i + 1])) value += chars[_i++] + digits(chars);\n\t}\n\tif (is_ident(chars)) {\n\t\tlet id = ident(chars);\n\t\tif (id === \"deg\" || id === \"rad\" || id === \"turn\" || id === \"grad\") return {\n\t\t\ttype: Tok.Hue,\n\t\t\tvalue: value * huenits[id]\n\t\t};\n\t\treturn;\n\t}\n\tif (chars[_i] === \"%\") {\n\t\t_i++;\n\t\treturn {\n\t\t\ttype: Tok.Percentage,\n\t\t\tvalue: +value\n\t\t};\n\t}\n\treturn {\n\t\ttype: Tok.Number,\n\t\tvalue: +value\n\t};\n}\nfunction digits(chars) {\n\tlet v = \"\";\n\twhile (/\\d/.test(chars[_i])) v += chars[_i++];\n\treturn v;\n}\nfunction ident(chars) {\n\tlet v = \"\";\n\twhile (_i < chars.length && IdentCodePoint.test(chars[_i])) v += chars[_i++];\n\treturn v;\n}\nfunction identlike(chars) {\n\tlet v = ident(chars);\n\tif (chars[_i] === \"(\") {\n\t\t_i++;\n\t\treturn {\n\t\t\ttype: Tok.Function,\n\t\t\tvalue: v\n\t\t};\n\t}\n\tif (v === \"none\") return {\n\t\ttype: Tok.None,\n\t\tvalue: void 0\n\t};\n\treturn {\n\t\ttype: Tok.Ident,\n\t\tvalue: v\n\t};\n}\nfunction tokenize(str = \"\") {\n\tlet chars = str.trim();\n\tlet tokens = [];\n\tlet ch;\n\t_i = 0;\n\twhile (_i < chars.length) {\n\t\tch = chars[_i++];\n\t\tif (ch === \"\\n\" || ch === \"\t\" || ch === \" \") {\n\t\t\twhile (_i < chars.length && (chars[_i] === \"\\n\" || chars[_i] === \"\t\" || chars[_i] === \" \")) _i++;\n\t\t\tcontinue;\n\t\t}\n\t\tif (ch === \",\") return;\n\t\tif (ch === \")\") {\n\t\t\ttokens.push({ type: Tok.ParenClose });\n\t\t\tcontinue;\n\t\t}\n\t\tif (ch === \"+\") {\n\t\t\t_i--;\n\t\t\tif (is_num(chars)) {\n\t\t\t\ttokens.push(num(chars));\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\t\tif (ch === \"-\") {\n\t\t\t_i--;\n\t\t\tif (is_num(chars)) {\n\t\t\t\ttokens.push(num(chars));\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tif (is_ident(chars)) {\n\t\t\t\ttokens.push({\n\t\t\t\t\ttype: Tok.Ident,\n\t\t\t\t\tvalue: ident(chars)\n\t\t\t\t});\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\t\tif (ch === \".\") {\n\t\t\t_i--;\n\t\t\tif (is_num(chars)) {\n\t\t\t\ttokens.push(num(chars));\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\t\tif (ch === \"/\") {\n\t\t\twhile (_i < chars.length && (chars[_i] === \"\\n\" || chars[_i] === \"\t\" || chars[_i] === \" \")) _i++;\n\t\t\tlet alpha;\n\t\t\tif (is_num(chars)) {\n\t\t\t\talpha = num(chars);\n\t\t\t\tif (alpha.type !== Tok.Hue) {\n\t\t\t\t\ttokens.push({\n\t\t\t\t\t\ttype: Tok.Alpha,\n\t\t\t\t\t\tvalue: alpha\n\t\t\t\t\t});\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (is_ident(chars)) {\n\t\t\t\tif (ident(chars) === \"none\") {\n\t\t\t\t\ttokens.push({\n\t\t\t\t\t\ttype: Tok.Alpha,\n\t\t\t\t\t\tvalue: {\n\t\t\t\t\t\t\ttype: Tok.None,\n\t\t\t\t\t\t\tvalue: void 0\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\t\tif (/\\d/.test(ch)) {\n\t\t\t_i--;\n\t\t\ttokens.push(num(chars));\n\t\t\tcontinue;\n\t\t}\n\t\tif (IdentStartCodePoint.test(ch)) {\n\t\t\t_i--;\n\t\t\ttokens.push(identlike(chars));\n\t\t\tcontinue;\n\t\t}\n\t\treturn;\n\t}\n\treturn tokens;\n}\nfunction parseColorSyntax(tokens) {\n\ttokens._i = 0;\n\tlet token = tokens[tokens._i++];\n\tif (!token || token.type !== Tok.Function || token.value !== \"color\") return;\n\ttoken = tokens[tokens._i++];\n\tif (token.type !== Tok.Ident) return;\n\tconst mode = colorProfiles[token.value];\n\tif (!mode) return;\n\tconst res = { mode };\n\tconst coords = consumeCoords(tokens, false);\n\tif (!coords) return;\n\tconst channels = getMode(mode).channels;\n\tfor (let ii = 0, c$1, ch; ii < channels.length; ii++) {\n\t\tc$1 = coords[ii];\n\t\tch = channels[ii];\n\t\tif (c$1.type !== Tok.None) {\n\t\t\tres[ch] = c$1.type === Tok.Number ? c$1.value : c$1.value / 100;\n\t\t\tif (ch === \"alpha\") res[ch] = Math.max(0, Math.min(1, res[ch]));\n\t\t}\n\t}\n\treturn res;\n}\nfunction consumeCoords(tokens, includeHue) {\n\tconst coords = [];\n\tlet token;\n\twhile (tokens._i < tokens.length) {\n\t\ttoken = tokens[tokens._i++];\n\t\tif (token.type === Tok.None || token.type === Tok.Number || token.type === Tok.Alpha || token.type === Tok.Percentage || includeHue && token.type === Tok.Hue) {\n\t\t\tcoords.push(token);\n\t\t\tcontinue;\n\t\t}\n\t\tif (token.type === Tok.ParenClose) {\n\t\t\tif (tokens._i < tokens.length) return;\n\t\t\tcontinue;\n\t\t}\n\t\treturn;\n\t}\n\tif (coords.length < 3 || coords.length > 4) return;\n\tif (coords.length === 4) {\n\t\tif (coords[3].type !== Tok.Alpha) return;\n\t\tcoords[3] = coords[3].value;\n\t}\n\tif (coords.length === 3) coords.push({\n\t\ttype: Tok.None,\n\t\tvalue: void 0\n\t});\n\treturn coords.every((c$1) => c$1.type !== Tok.Alpha) ? coords : void 0;\n}\nfunction parseModernSyntax(tokens, includeHue) {\n\ttokens._i = 0;\n\tlet token = tokens[tokens._i++];\n\tif (!token || token.type !== Tok.Function) return;\n\tlet coords = consumeCoords(tokens, includeHue);\n\tif (!coords) return;\n\tcoords.unshift(token.value);\n\treturn coords;\n}\nconst parse = (color) => {\n\tif (typeof color !== \"string\") return;\n\tconst tokens = tokenize(color);\n\tconst parsed = tokens ? parseModernSyntax(tokens, true) : void 0;\n\tlet result = void 0;\n\tlet i = 0;\n\tlet len = parsers.length;\n\twhile (i < len) if ((result = parsers[i++](color, parsed)) !== void 0) return result;\n\treturn tokens ? parseColorSyntax(tokens) : void 0;\n};\nvar parse_default = parse;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/rgb/parseRgb.js\nfunction parseRgb(color, parsed) {\n\tif (!parsed || parsed[0] !== \"rgb\" && parsed[0] !== \"rgba\") return;\n\tconst res = { mode: \"rgb\" };\n\tconst [, r$1, g, b, alpha] = parsed;\n\tif (r$1.type === Tok.Hue || g.type === Tok.Hue || b.type === Tok.Hue) return;\n\tif (r$1.type !== Tok.None) res.r = r$1.type === Tok.Number ? r$1.value / 255 : r$1.value / 100;\n\tif (g.type !== Tok.None) res.g = g.type === Tok.Number ? g.value / 255 : g.value / 100;\n\tif (b.type !== Tok.None) res.b = b.type === Tok.Number ? b.value / 255 : b.value / 100;\n\tif (alpha.type !== Tok.None) res.alpha = Math.min(1, Math.max(0, alpha.type === Tok.Number ? alpha.value : alpha.value / 100));\n\treturn res;\n}\nvar parseRgb_default = parseRgb;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/rgb/parseTransparent.js\nconst parseTransparent = (c$1) => c$1 === \"transparent\" ? {\n\tmode: \"rgb\",\n\tr: 0,\n\tg: 0,\n\tb: 0,\n\talpha: 0\n} : void 0;\nvar parseTransparent_default = parseTransparent;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/interpolate/lerp.js\nconst lerp = (a, b, t) => a + t * (b - a);\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/interpolate/piecewise.js\nconst get_classes = (arr) => {\n\tlet classes = [];\n\tfor (let i = 0; i < arr.length - 1; i++) {\n\t\tlet a = arr[i];\n\t\tlet b = arr[i + 1];\n\t\tif (a === void 0 && b === void 0) classes.push(void 0);\n\t\telse if (a !== void 0 && b !== void 0) classes.push([a, b]);\n\t\telse classes.push(a !== void 0 ? [a, a] : [b, b]);\n\t}\n\treturn classes;\n};\nconst interpolatorPiecewise = (interpolator) => (arr) => {\n\tlet classes = get_classes(arr);\n\treturn (t) => {\n\t\tlet cls = t * classes.length;\n\t\tlet idx = t >= 1 ? classes.length - 1 : Math.max(Math.floor(cls), 0);\n\t\tlet pair = classes[idx];\n\t\treturn pair === void 0 ? void 0 : interpolator(pair[0], pair[1], cls - idx);\n\t};\n};\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/interpolate/linear.js\nconst interpolatorLinear = interpolatorPiecewise(lerp);\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/fixup/alpha.js\nconst fixupAlpha = (arr) => {\n\tlet some_defined = false;\n\tlet res = arr.map((v) => {\n\t\tif (v !== void 0) {\n\t\t\tsome_defined = true;\n\t\t\treturn v;\n\t\t}\n\t\treturn 1;\n\t});\n\treturn some_defined ? res : arr;\n};\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/rgb/definition.js\nconst definition$27 = {\n\tmode: \"rgb\",\n\tchannels: [\n\t\t\"r\",\n\t\t\"g\",\n\t\t\"b\",\n\t\t\"alpha\"\n\t],\n\tparse: [\n\t\tparseRgb_default,\n\t\tparseHex_default,\n\t\tparseRgbLegacy_default,\n\t\tparseNamed_default,\n\t\tparseTransparent_default,\n\t\t\"srgb\"\n\t],\n\tserialize: \"srgb\",\n\tinterpolate: {\n\t\tr: interpolatorLinear,\n\t\tg: interpolatorLinear,\n\t\tb: interpolatorLinear,\n\t\talpha: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupAlpha\n\t\t}\n\t},\n\tgamut: true,\n\twhite: {\n\t\tr: 1,\n\t\tg: 1,\n\t\tb: 1\n\t},\n\tblack: {\n\t\tr: 0,\n\t\tg: 0,\n\t\tb: 0\n\t}\n};\nvar definition_default$12 = definition$27;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/a98/convertA98ToXyz65.js\nconst linearize$2 = (v = 0) => Math.pow(Math.abs(v), 563 / 256) * Math.sign(v);\nconst convertA98ToXyz65 = (a98$2) => {\n\tlet r$1 = linearize$2(a98$2.r);\n\tlet g = linearize$2(a98$2.g);\n\tlet b = linearize$2(a98$2.b);\n\tlet res = {\n\t\tmode: \"xyz65\",\n\t\tx: .5766690429101305 * r$1 + .1855582379065463 * g + .1882286462349947 * b,\n\t\ty: .297344975250536 * r$1 + .6273635662554661 * g + .0752914584939979 * b,\n\t\tz: .0270313613864123 * r$1 + .0706888525358272 * g + .9913375368376386 * b\n\t};\n\tif (a98$2.alpha !== void 0) res.alpha = a98$2.alpha;\n\treturn res;\n};\nvar convertA98ToXyz65_default = convertA98ToXyz65;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/a98/convertXyz65ToA98.js\nconst gamma$2 = (v) => Math.pow(Math.abs(v), 256 / 563) * Math.sign(v);\nconst convertXyz65ToA98 = ({ x, y, z, alpha }) => {\n\tif (x === void 0) x = 0;\n\tif (y === void 0) y = 0;\n\tif (z === void 0) z = 0;\n\tlet res = {\n\t\tmode: \"a98\",\n\t\tr: gamma$2(x * 2.0415879038107465 - y * .5650069742788597 - .3447313507783297 * z),\n\t\tg: gamma$2(x * -.9692436362808798 + y * 1.8759675015077206 + .0415550574071756 * z),\n\t\tb: gamma$2(x * .0134442806320312 - y * .1183623922310184 + 1.0151749943912058 * z)\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertXyz65ToA98_default = convertXyz65ToA98;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lrgb/convertRgbToLrgb.js\nconst fn$3 = (c$1 = 0) => {\n\tconst abs$1 = Math.abs(c$1);\n\tif (abs$1 <= .04045) return c$1 / 12.92;\n\treturn (Math.sign(c$1) || 1) * Math.pow((abs$1 + .055) / 1.055, 2.4);\n};\nconst convertRgbToLrgb = ({ r: r$1, g, b, alpha }) => {\n\tlet res = {\n\t\tmode: \"lrgb\",\n\t\tr: fn$3(r$1),\n\t\tg: fn$3(g),\n\t\tb: fn$3(b)\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertRgbToLrgb_default = convertRgbToLrgb;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/xyz65/convertRgbToXyz65.js\nconst convertRgbToXyz65 = (rgb$4) => {\n\tlet { r: r$1, g, b, alpha } = convertRgbToLrgb_default(rgb$4);\n\tlet res = {\n\t\tmode: \"xyz65\",\n\t\tx: .4123907992659593 * r$1 + .357584339383878 * g + .1804807884018343 * b,\n\t\ty: .2126390058715102 * r$1 + .715168678767756 * g + .0721923153607337 * b,\n\t\tz: .0193308187155918 * r$1 + .119194779794626 * g + .9505321522496607 * b\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertRgbToXyz65_default = convertRgbToXyz65;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lrgb/convertLrgbToRgb.js\nconst fn$2 = (c$1 = 0) => {\n\tconst abs$1 = Math.abs(c$1);\n\tif (abs$1 > .0031308) return (Math.sign(c$1) || 1) * (1.055 * Math.pow(abs$1, 1 / 2.4) - .055);\n\treturn c$1 * 12.92;\n};\nconst convertLrgbToRgb = ({ r: r$1, g, b, alpha }, mode = \"rgb\") => {\n\tlet res = {\n\t\tmode,\n\t\tr: fn$2(r$1),\n\t\tg: fn$2(g),\n\t\tb: fn$2(b)\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertLrgbToRgb_default = convertLrgbToRgb;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/xyz65/convertXyz65ToRgb.js\nconst convertXyz65ToRgb = ({ x, y, z, alpha }) => {\n\tif (x === void 0) x = 0;\n\tif (y === void 0) y = 0;\n\tif (z === void 0) z = 0;\n\tlet res = convertLrgbToRgb_default({\n\t\tr: x * 3.2409699419045226 - y * 1.537383177570094 - .4986107602930034 * z,\n\t\tg: x * -.9692436362808796 + y * 1.8759675015077204 + .0415550574071756 * z,\n\t\tb: x * .0556300796969936 - y * .2039769588889765 + 1.0569715142428784 * z\n\t});\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertXyz65ToRgb_default = convertXyz65ToRgb;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/a98/definition.js\nconst definition$26 = {\n\t...definition_default$12,\n\tmode: \"a98\",\n\tparse: [\"a98-rgb\"],\n\tserialize: \"a98-rgb\",\n\tfromMode: {\n\t\trgb: (color) => convertXyz65ToA98_default(convertRgbToXyz65_default(color)),\n\t\txyz65: convertXyz65ToA98_default\n\t},\n\ttoMode: {\n\t\trgb: (color) => convertXyz65ToRgb_default(convertA98ToXyz65_default(color)),\n\t\txyz65: convertA98ToXyz65_default\n\t}\n};\nvar definition_default = definition$26;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/util/normalizeHue.js\nconst normalizeHue = (hue$2) => (hue$2 = hue$2 % 360) < 0 ? hue$2 + 360 : hue$2;\nvar normalizeHue_default = normalizeHue;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/hsl/convertHslToRgb.js\nfunction convertHslToRgb({ h, s, l, alpha }) {\n\th = normalizeHue_default(h !== void 0 ? h : 0);\n\tif (s === void 0) s = 0;\n\tif (l === void 0) l = 0;\n\tlet m1 = l + s * (l < .5 ? l : 1 - l);\n\tlet m2 = m1 - (m1 - l) * 2 * Math.abs(h / 60 % 2 - 1);\n\tlet res;\n\tswitch (Math.floor(h / 60)) {\n\t\tcase 0:\n\t\t\tres = {\n\t\t\t\tr: m1,\n\t\t\t\tg: m2,\n\t\t\t\tb: 2 * l - m1\n\t\t\t};\n\t\t\tbreak;\n\t\tcase 1:\n\t\t\tres = {\n\t\t\t\tr: m2,\n\t\t\t\tg: m1,\n\t\t\t\tb: 2 * l - m1\n\t\t\t};\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tres = {\n\t\t\t\tr: 2 * l - m1,\n\t\t\t\tg: m1,\n\t\t\t\tb: m2\n\t\t\t};\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tres = {\n\t\t\t\tr: 2 * l - m1,\n\t\t\t\tg: m2,\n\t\t\t\tb: m1\n\t\t\t};\n\t\t\tbreak;\n\t\tcase 4:\n\t\t\tres = {\n\t\t\t\tr: m2,\n\t\t\t\tg: 2 * l - m1,\n\t\t\t\tb: m1\n\t\t\t};\n\t\t\tbreak;\n\t\tcase 5:\n\t\t\tres = {\n\t\t\t\tr: m1,\n\t\t\t\tg: 2 * l - m1,\n\t\t\t\tb: m2\n\t\t\t};\n\t\t\tbreak;\n\t\tdefault: res = {\n\t\t\tr: 2 * l - m1,\n\t\t\tg: 2 * l - m1,\n\t\t\tb: 2 * l - m1\n\t\t};\n\t}\n\tres.mode = \"rgb\";\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/hsl/convertRgbToHsl.js\nfunction convertRgbToHsl({ r: r$1, g, b, alpha }) {\n\tif (r$1 === void 0) r$1 = 0;\n\tif (g === void 0) g = 0;\n\tif (b === void 0) b = 0;\n\tlet M$1 = Math.max(r$1, g, b), m = Math.min(r$1, g, b);\n\tlet res = {\n\t\tmode: \"hsl\",\n\t\ts: M$1 === m ? 0 : (M$1 - m) / (1 - Math.abs(M$1 + m - 1)),\n\t\tl: .5 * (M$1 + m)\n\t};\n\tif (M$1 - m !== 0) res.h = (M$1 === r$1 ? (g - b) / (M$1 - m) + (g < b) * 6 : M$1 === g ? (b - r$1) / (M$1 - m) + 2 : (r$1 - g) / (M$1 - m) + 4) * 60;\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/util/hue.js\nconst hueToDeg = (val, unit) => {\n\tswitch (unit) {\n\t\tcase \"deg\": return +val;\n\t\tcase \"rad\": return val / Math.PI * 180;\n\t\tcase \"grad\": return val / 10 * 9;\n\t\tcase \"turn\": return val * 360;\n\t}\n};\nvar hue_default = hueToDeg;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/hsl/parseHslLegacy.js\nconst hsl_old = /* @__PURE__ */ new RegExp(`^hsla?\\\\(\\\\s*${hue$1}${c}${per}${c}${per}\\\\s*(?:,\\\\s*${num_per}\\\\s*)?\\\\)$`);\nconst parseHslLegacy = (color) => {\n\tlet match = color.match(hsl_old);\n\tif (!match) return;\n\tlet res = { mode: \"hsl\" };\n\tif (match[3] !== void 0) res.h = +match[3];\n\telse if (match[1] !== void 0 && match[2] !== void 0) res.h = hue_default(match[1], match[2]);\n\tif (match[4] !== void 0) res.s = Math.min(Math.max(0, match[4] / 100), 1);\n\tif (match[5] !== void 0) res.l = Math.min(Math.max(0, match[5] / 100), 1);\n\tif (match[6] !== void 0) res.alpha = Math.max(0, Math.min(1, match[6] / 100));\n\telse if (match[7] !== void 0) res.alpha = Math.max(0, Math.min(1, +match[7]));\n\treturn res;\n};\nvar parseHslLegacy_default = parseHslLegacy;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/hsl/parseHsl.js\nfunction parseHsl(color, parsed) {\n\tif (!parsed || parsed[0] !== \"hsl\" && parsed[0] !== \"hsla\") return;\n\tconst res = { mode: \"hsl\" };\n\tconst [, h, s, l, alpha] = parsed;\n\tif (h.type !== Tok.None) {\n\t\tif (h.type === Tok.Percentage) return;\n\t\tres.h = h.value;\n\t}\n\tif (s.type !== Tok.None) {\n\t\tif (s.type === Tok.Hue) return;\n\t\tres.s = s.value / 100;\n\t}\n\tif (l.type !== Tok.None) {\n\t\tif (l.type === Tok.Hue) return;\n\t\tres.l = l.value / 100;\n\t}\n\tif (alpha.type !== Tok.None) res.alpha = Math.min(1, Math.max(0, alpha.type === Tok.Number ? alpha.value : alpha.value / 100));\n\treturn res;\n}\nvar parseHsl_default = parseHsl;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/fixup/hue.js\nconst hue = (hues, fn$4) => {\n\treturn hues.map((hue$2, idx, arr) => {\n\t\tif (hue$2 === void 0) return hue$2;\n\t\tlet normalized = normalizeHue_default(hue$2);\n\t\tif (idx === 0 || hues[idx - 1] === void 0) return normalized;\n\t\treturn fn$4(normalized - normalizeHue_default(arr[idx - 1]));\n\t}).reduce((acc, curr) => {\n\t\tif (!acc.length || curr === void 0 || acc[acc.length - 1] === void 0) {\n\t\t\tacc.push(curr);\n\t\t\treturn acc;\n\t\t}\n\t\tacc.push(curr + acc[acc.length - 1]);\n\t\treturn acc;\n\t}, []);\n};\nconst fixupHueShorter = (arr) => hue(arr, (d) => Math.abs(d) <= 180 ? d : d - 360 * Math.sign(d));\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/difference.js\nconst differenceHueSaturation = (std, smp) => {\n\tif (std.h === void 0 || smp.h === void 0 || !std.s || !smp.s) return 0;\n\tlet std_h = normalizeHue_default(std.h);\n\tlet smp_h = normalizeHue_default(smp.h);\n\tlet dH = Math.sin((smp_h - std_h + 360) / 2 * Math.PI / 180);\n\treturn 2 * Math.sqrt(std.s * smp.s) * dH;\n};\nconst differenceHueNaive = (std, smp) => {\n\tif (std.h === void 0 || smp.h === void 0) return 0;\n\tlet std_h = normalizeHue_default(std.h);\n\tlet smp_h = normalizeHue_default(smp.h);\n\tif (Math.abs(smp_h - std_h) > 180) return std_h - (smp_h - 360 * Math.sign(smp_h - std_h));\n\treturn smp_h - std_h;\n};\nconst differenceHueChroma = (std, smp) => {\n\tif (std.h === void 0 || smp.h === void 0 || !std.c || !smp.c) return 0;\n\tlet std_h = normalizeHue_default(std.h);\n\tlet smp_h = normalizeHue_default(smp.h);\n\tlet dH = Math.sin((smp_h - std_h + 360) / 2 * Math.PI / 180);\n\treturn 2 * Math.sqrt(std.c * smp.c) * dH;\n};\nconst differenceEuclidean = (mode = \"rgb\", weights = [\n\t1,\n\t1,\n\t1,\n\t0\n]) => {\n\tlet def = getMode(mode);\n\tlet channels = def.channels;\n\tlet diffs = def.difference;\n\tlet conv = converter_default(mode);\n\treturn (std, smp) => {\n\t\tlet ConvStd = conv(std);\n\t\tlet ConvSmp = conv(smp);\n\t\treturn Math.sqrt(channels.reduce((sum, k$3, idx) => {\n\t\t\tlet delta = diffs[k$3] ? diffs[k$3](ConvStd, ConvSmp) : ConvStd[k$3] - ConvSmp[k$3];\n\t\t\treturn sum + (weights[idx] || 0) * Math.pow(isNaN(delta) ? 0 : delta, 2);\n\t\t}, 0));\n\t};\n};\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/average.js\nconst averageAngle = (val) => {\n\tlet sum = val.reduce((sum$1, val$1) => {\n\t\tif (val$1 !== void 0) {\n\t\t\tlet rad = val$1 * Math.PI / 180;\n\t\t\tsum$1.sin += Math.sin(rad);\n\t\t\tsum$1.cos += Math.cos(rad);\n\t\t}\n\t\treturn sum$1;\n\t}, {\n\t\tsin: 0,\n\t\tcos: 0\n\t});\n\tlet angle = Math.atan2(sum.sin, sum.cos) * 180 / Math.PI;\n\treturn angle < 0 ? 360 + angle : angle;\n};\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/hsl/definition.js\nconst definition$25 = {\n\tmode: \"hsl\",\n\ttoMode: { rgb: convertHslToRgb },\n\tfromMode: { rgb: convertRgbToHsl },\n\tchannels: [\n\t\t\"h\",\n\t\t\"s\",\n\t\t\"l\",\n\t\t\"alpha\"\n\t],\n\tranges: { h: [0, 360] },\n\tgamut: \"rgb\",\n\tparse: [parseHsl_default, parseHslLegacy_default],\n\tserialize: (c$1) => `hsl(${c$1.h !== void 0 ? c$1.h : \"none\"} ${c$1.s !== void 0 ? c$1.s * 100 + \"%\" : \"none\"} ${c$1.l !== void 0 ? c$1.l * 100 + \"%\" : \"none\"}${c$1.alpha < 1 ? ` / ${c$1.alpha}` : \"\"})`,\n\tinterpolate: {\n\t\th: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupHueShorter\n\t\t},\n\t\ts: interpolatorLinear,\n\t\tl: interpolatorLinear,\n\t\talpha: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupAlpha\n\t\t}\n\t},\n\tdifference: { h: differenceHueSaturation },\n\taverage: { h: averageAngle }\n};\nvar definition_default$1 = definition$25;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/hsv/convertHsvToRgb.js\nfunction convertHsvToRgb({ h, s, v, alpha }) {\n\th = normalizeHue_default(h !== void 0 ? h : 0);\n\tif (s === void 0) s = 0;\n\tif (v === void 0) v = 0;\n\tlet f$2 = Math.abs(h / 60 % 2 - 1);\n\tlet res;\n\tswitch (Math.floor(h / 60)) {\n\t\tcase 0:\n\t\t\tres = {\n\t\t\t\tr: v,\n\t\t\t\tg: v * (1 - s * f$2),\n\t\t\t\tb: v * (1 - s)\n\t\t\t};\n\t\t\tbreak;\n\t\tcase 1:\n\t\t\tres = {\n\t\t\t\tr: v * (1 - s * f$2),\n\t\t\t\tg: v,\n\t\t\t\tb: v * (1 - s)\n\t\t\t};\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tres = {\n\t\t\t\tr: v * (1 - s),\n\t\t\t\tg: v,\n\t\t\t\tb: v * (1 - s * f$2)\n\t\t\t};\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tres = {\n\t\t\t\tr: v * (1 - s),\n\t\t\t\tg: v * (1 - s * f$2),\n\t\t\t\tb: v\n\t\t\t};\n\t\t\tbreak;\n\t\tcase 4:\n\t\t\tres = {\n\t\t\t\tr: v * (1 - s * f$2),\n\t\t\t\tg: v * (1 - s),\n\t\t\t\tb: v\n\t\t\t};\n\t\t\tbreak;\n\t\tcase 5:\n\t\t\tres = {\n\t\t\t\tr: v,\n\t\t\t\tg: v * (1 - s),\n\t\t\t\tb: v * (1 - s * f$2)\n\t\t\t};\n\t\t\tbreak;\n\t\tdefault: res = {\n\t\t\tr: v * (1 - s),\n\t\t\tg: v * (1 - s),\n\t\t\tb: v * (1 - s)\n\t\t};\n\t}\n\tres.mode = \"rgb\";\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/hsv/convertRgbToHsv.js\nfunction convertRgbToHsv({ r: r$1, g, b, alpha }) {\n\tif (r$1 === void 0) r$1 = 0;\n\tif (g === void 0) g = 0;\n\tif (b === void 0) b = 0;\n\tlet M$1 = Math.max(r$1, g, b), m = Math.min(r$1, g, b);\n\tlet res = {\n\t\tmode: \"hsv\",\n\t\ts: M$1 === 0 ? 0 : 1 - m / M$1,\n\t\tv: M$1\n\t};\n\tif (M$1 - m !== 0) res.h = (M$1 === r$1 ? (g - b) / (M$1 - m) + (g < b) * 6 : M$1 === g ? (b - r$1) / (M$1 - m) + 2 : (r$1 - g) / (M$1 - m) + 4) * 60;\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/hsv/definition.js\nconst definition$24 = {\n\tmode: \"hsv\",\n\ttoMode: { rgb: convertHsvToRgb },\n\tparse: [\"--hsv\"],\n\tserialize: \"--hsv\",\n\tfromMode: { rgb: convertRgbToHsv },\n\tchannels: [\n\t\t\"h\",\n\t\t\"s\",\n\t\t\"v\",\n\t\t\"alpha\"\n\t],\n\tranges: { h: [0, 360] },\n\tgamut: \"rgb\",\n\tinterpolate: {\n\t\th: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupHueShorter\n\t\t},\n\t\ts: interpolatorLinear,\n\t\tv: interpolatorLinear,\n\t\talpha: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupAlpha\n\t\t}\n\t},\n\tdifference: { h: differenceHueSaturation },\n\taverage: { h: averageAngle }\n};\nvar definition_default$19 = definition$24;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/hwb/convertHwbToRgb.js\nfunction convertHwbToRgb({ h, w, b, alpha }) {\n\tif (w === void 0) w = 0;\n\tif (b === void 0) b = 0;\n\tif (w + b > 1) {\n\t\tlet s = w + b;\n\t\tw /= s;\n\t\tb /= s;\n\t}\n\treturn convertHsvToRgb({\n\t\th,\n\t\ts: b === 1 ? 1 : 1 - w / (1 - b),\n\t\tv: 1 - b,\n\t\talpha\n\t});\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/hwb/convertRgbToHwb.js\nfunction convertRgbToHwb(rgba) {\n\tlet hsv$2 = convertRgbToHsv(rgba);\n\tif (hsv$2 === void 0) return void 0;\n\tlet s = hsv$2.s !== void 0 ? hsv$2.s : 0;\n\tlet v = hsv$2.v !== void 0 ? hsv$2.v : 0;\n\tlet res = {\n\t\tmode: \"hwb\",\n\t\tw: (1 - s) * v,\n\t\tb: 1 - v\n\t};\n\tif (hsv$2.h !== void 0) res.h = hsv$2.h;\n\tif (hsv$2.alpha !== void 0) res.alpha = hsv$2.alpha;\n\treturn res;\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/hwb/parseHwb.js\nfunction ParseHwb(color, parsed) {\n\tif (!parsed || parsed[0] !== \"hwb\") return;\n\tconst res = { mode: \"hwb\" };\n\tconst [, h, w, b, alpha] = parsed;\n\tif (h.type !== Tok.None) {\n\t\tif (h.type === Tok.Percentage) return;\n\t\tres.h = h.value;\n\t}\n\tif (w.type !== Tok.None) {\n\t\tif (w.type === Tok.Hue) return;\n\t\tres.w = w.value / 100;\n\t}\n\tif (b.type !== Tok.None) {\n\t\tif (b.type === Tok.Hue) return;\n\t\tres.b = b.value / 100;\n\t}\n\tif (alpha.type !== Tok.None) res.alpha = Math.min(1, Math.max(0, alpha.type === Tok.Number ? alpha.value : alpha.value / 100));\n\treturn res;\n}\nvar parseHwb_default = ParseHwb;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/hwb/definition.js\nconst definition$23 = {\n\tmode: \"hwb\",\n\ttoMode: { rgb: convertHwbToRgb },\n\tfromMode: { rgb: convertRgbToHwb },\n\tchannels: [\n\t\t\"h\",\n\t\t\"w\",\n\t\t\"b\",\n\t\t\"alpha\"\n\t],\n\tranges: { h: [0, 360] },\n\tgamut: \"rgb\",\n\tparse: [parseHwb_default],\n\tserialize: (c$1) => `hwb(${c$1.h !== void 0 ? c$1.h : \"none\"} ${c$1.w !== void 0 ? c$1.w * 100 + \"%\" : \"none\"} ${c$1.b !== void 0 ? c$1.b * 100 + \"%\" : \"none\"}${c$1.alpha < 1 ? ` / ${c$1.alpha}` : \"\"})`,\n\tinterpolate: {\n\t\th: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupHueShorter\n\t\t},\n\t\tw: interpolatorLinear,\n\t\tb: interpolatorLinear,\n\t\talpha: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupAlpha\n\t\t}\n\t},\n\tdifference: { h: differenceHueNaive },\n\taverage: { h: averageAngle }\n};\nvar definition_default$2 = definition$23;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/xyz50/constants.js\nconst k = Math.pow(29, 3) / Math.pow(3, 3);\nconst e = Math.pow(6, 3) / Math.pow(29, 3);\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/constants.js\nconst D50 = {\n\tX: .3457 / .3585,\n\tY: 1,\n\tZ: .2958 / .3585\n};\nconst D65 = {\n\tX: .3127 / .329,\n\tY: 1,\n\tZ: .3583 / .329\n};\nconst k$2 = Math.pow(29, 3) / Math.pow(3, 3);\nconst e$2 = Math.pow(6, 3) / Math.pow(29, 3);\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lab/convertLabToXyz50.js\nlet fn$1 = (v) => Math.pow(v, 3) > e ? Math.pow(v, 3) : (116 * v - 16) / k;\nconst convertLabToXyz50 = ({ l, a, b, alpha }) => {\n\tif (l === void 0) l = 0;\n\tif (a === void 0) a = 0;\n\tif (b === void 0) b = 0;\n\tlet fy = (l + 16) / 116;\n\tlet fx = a / 500 + fy;\n\tlet fz = fy - b / 200;\n\tlet res = {\n\t\tmode: \"xyz50\",\n\t\tx: fn$1(fx) * D50.X,\n\t\ty: fn$1(fy) * D50.Y,\n\t\tz: fn$1(fz) * D50.Z\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertLabToXyz50_default = convertLabToXyz50;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/xyz50/convertXyz50ToRgb.js\nconst convertXyz50ToRgb = ({ x, y, z, alpha }) => {\n\tif (x === void 0) x = 0;\n\tif (y === void 0) y = 0;\n\tif (z === void 0) z = 0;\n\tlet res = convertLrgbToRgb_default({\n\t\tr: x * 3.1341359569958707 - y * 1.6173863321612538 - .4906619460083532 * z,\n\t\tg: x * -.978795502912089 + y * 1.916254567259524 + .03344273116131949 * z,\n\t\tb: x * .07195537988411677 - y * .2289768264158322 + 1.405386058324125 * z\n\t});\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertXyz50ToRgb_default = convertXyz50ToRgb;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lab/convertLabToRgb.js\nconst convertLabToRgb = (lab$2) => convertXyz50ToRgb_default(convertLabToXyz50_default(lab$2));\nvar convertLabToRgb_default = convertLabToRgb;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/xyz50/convertRgbToXyz50.js\nconst convertRgbToXyz50 = (rgb$4) => {\n\tlet { r: r$1, g, b, alpha } = convertRgbToLrgb_default(rgb$4);\n\tlet res = {\n\t\tmode: \"xyz50\",\n\t\tx: .436065742824811 * r$1 + .3851514688337912 * g + .14307845442264197 * b,\n\t\ty: .22249319175623702 * r$1 + .7168870538238823 * g + .06061979053616537 * b,\n\t\tz: .013923904500943465 * r$1 + .09708128566574634 * g + .7140993584005155 * b\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertRgbToXyz50_default = convertRgbToXyz50;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lab/convertXyz50ToLab.js\nconst f$1 = (value) => value > e ? Math.cbrt(value) : (k * value + 16) / 116;\nconst convertXyz50ToLab = ({ x, y, z, alpha }) => {\n\tif (x === void 0) x = 0;\n\tif (y === void 0) y = 0;\n\tif (z === void 0) z = 0;\n\tlet f0 = f$1(x / D50.X);\n\tlet f1 = f$1(y / D50.Y);\n\tlet f2 = f$1(z / D50.Z);\n\tlet res = {\n\t\tmode: \"lab\",\n\t\tl: 116 * f1 - 16,\n\t\ta: 500 * (f0 - f1),\n\t\tb: 200 * (f1 - f2)\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertXyz50ToLab_default = convertXyz50ToLab;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lab/convertRgbToLab.js\nconst convertRgbToLab = (rgb$4) => {\n\tlet res = convertXyz50ToLab_default(convertRgbToXyz50_default(rgb$4));\n\tif (rgb$4.r === rgb$4.b && rgb$4.b === rgb$4.g) res.a = res.b = 0;\n\treturn res;\n};\nvar convertRgbToLab_default = convertRgbToLab;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lab/parseLab.js\nfunction parseLab(color, parsed) {\n\tif (!parsed || parsed[0] !== \"lab\") return;\n\tconst res = { mode: \"lab\" };\n\tconst [, l, a, b, alpha] = parsed;\n\tif (l.type === Tok.Hue || a.type === Tok.Hue || b.type === Tok.Hue) return;\n\tif (l.type !== Tok.None) res.l = Math.min(Math.max(0, l.value), 100);\n\tif (a.type !== Tok.None) res.a = a.type === Tok.Number ? a.value : a.value * 125 / 100;\n\tif (b.type !== Tok.None) res.b = b.type === Tok.Number ? b.value : b.value * 125 / 100;\n\tif (alpha.type !== Tok.None) res.alpha = Math.min(1, Math.max(0, alpha.type === Tok.Number ? alpha.value : alpha.value / 100));\n\treturn res;\n}\nvar parseLab_default = parseLab;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lab/definition.js\nconst definition$22 = {\n\tmode: \"lab\",\n\ttoMode: {\n\t\txyz50: convertLabToXyz50_default,\n\t\trgb: convertLabToRgb_default\n\t},\n\tfromMode: {\n\t\txyz50: convertXyz50ToLab_default,\n\t\trgb: convertRgbToLab_default\n\t},\n\tchannels: [\n\t\t\"l\",\n\t\t\"a\",\n\t\t\"b\",\n\t\t\"alpha\"\n\t],\n\tranges: {\n\t\tl: [0, 100],\n\t\ta: [-125, 125],\n\t\tb: [-125, 125]\n\t},\n\tparse: [parseLab_default],\n\tserialize: (c$1) => `lab(${c$1.l !== void 0 ? c$1.l : \"none\"} ${c$1.a !== void 0 ? c$1.a : \"none\"} ${c$1.b !== void 0 ? c$1.b : \"none\"}${c$1.alpha < 1 ? ` / ${c$1.alpha}` : \"\"})`,\n\tinterpolate: {\n\t\tl: interpolatorLinear,\n\t\ta: interpolatorLinear,\n\t\tb: interpolatorLinear,\n\t\talpha: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupAlpha\n\t\t}\n\t}\n};\nvar definition_default$3 = definition$22;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/xyz65/constants.js\nconst k$1 = Math.pow(29, 3) / Math.pow(3, 3);\nconst e$1 = Math.pow(6, 3) / Math.pow(29, 3);\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lab65/convertLab65ToXyz65.js\nlet fn = (v) => Math.pow(v, 3) > e$1 ? Math.pow(v, 3) : (116 * v - 16) / k$1;\nconst convertLab65ToXyz65 = ({ l, a, b, alpha }) => {\n\tif (l === void 0) l = 0;\n\tif (a === void 0) a = 0;\n\tif (b === void 0) b = 0;\n\tlet fy = (l + 16) / 116;\n\tlet fx = a / 500 + fy;\n\tlet fz = fy - b / 200;\n\tlet res = {\n\t\tmode: \"xyz65\",\n\t\tx: fn(fx) * D65.X,\n\t\ty: fn(fy) * D65.Y,\n\t\tz: fn(fz) * D65.Z\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertLab65ToXyz65_default = convertLab65ToXyz65;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lab65/convertLab65ToRgb.js\nconst convertLab65ToRgb = (lab$2) => convertXyz65ToRgb_default(convertLab65ToXyz65_default(lab$2));\nvar convertLab65ToRgb_default = convertLab65ToRgb;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lab65/convertXyz65ToLab65.js\nconst f = (value) => value > e$1 ? Math.cbrt(value) : (k$1 * value + 16) / 116;\nconst convertXyz65ToLab65 = ({ x, y, z, alpha }) => {\n\tif (x === void 0) x = 0;\n\tif (y === void 0) y = 0;\n\tif (z === void 0) z = 0;\n\tlet f0 = f(x / D65.X);\n\tlet f1 = f(y / D65.Y);\n\tlet f2 = f(z / D65.Z);\n\tlet res = {\n\t\tmode: \"lab65\",\n\t\tl: 116 * f1 - 16,\n\t\ta: 500 * (f0 - f1),\n\t\tb: 200 * (f1 - f2)\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertXyz65ToLab65_default = convertXyz65ToLab65;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lab65/convertRgbToLab65.js\nconst convertRgbToLab65 = (rgb$4) => {\n\tlet res = convertXyz65ToLab65_default(convertRgbToXyz65_default(rgb$4));\n\tif (rgb$4.r === rgb$4.b && rgb$4.b === rgb$4.g) res.a = res.b = 0;\n\treturn res;\n};\nvar convertRgbToLab65_default = convertRgbToLab65;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lab65/definition.js\nconst definition$21 = {\n\t...definition_default$3,\n\tmode: \"lab65\",\n\tparse: [\"--lab-d65\"],\n\tserialize: \"--lab-d65\",\n\ttoMode: {\n\t\txyz65: convertLab65ToXyz65_default,\n\t\trgb: convertLab65ToRgb_default\n\t},\n\tfromMode: {\n\t\txyz65: convertXyz65ToLab65_default,\n\t\trgb: convertRgbToLab65_default\n\t},\n\tranges: {\n\t\tl: [0, 100],\n\t\ta: [-125, 125],\n\t\tb: [-125, 125]\n\t}\n};\nvar definition_default$4 = definition$21;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lch/convertLabToLch.js\nconst convertLabToLch = ({ l, a, b, alpha }, mode = \"lch\") => {\n\tif (a === void 0) a = 0;\n\tif (b === void 0) b = 0;\n\tlet c$1 = Math.sqrt(a * a + b * b);\n\tlet res = {\n\t\tmode,\n\t\tl,\n\t\tc: c$1\n\t};\n\tif (c$1) res.h = normalizeHue_default(Math.atan2(b, a) * 180 / Math.PI);\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertLabToLch_default = convertLabToLch;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lch/convertLchToLab.js\nconst convertLchToLab = ({ l, c: c$1, h, alpha }, mode = \"lab\") => {\n\tif (h === void 0) h = 0;\n\tlet res = {\n\t\tmode,\n\t\tl,\n\t\ta: c$1 ? c$1 * Math.cos(h / 180 * Math.PI) : 0,\n\t\tb: c$1 ? c$1 * Math.sin(h / 180 * Math.PI) : 0\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertLchToLab_default = convertLchToLab;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lch/parseLch.js\nfunction parseLch(color, parsed) {\n\tif (!parsed || parsed[0] !== \"lch\") return;\n\tconst res = { mode: \"lch\" };\n\tconst [, l, c$1, h, alpha] = parsed;\n\tif (l.type !== Tok.None) {\n\t\tif (l.type === Tok.Hue) return;\n\t\tres.l = Math.min(Math.max(0, l.value), 100);\n\t}\n\tif (c$1.type !== Tok.None) res.c = Math.max(0, c$1.type === Tok.Number ? c$1.value : c$1.value * 150 / 100);\n\tif (h.type !== Tok.None) {\n\t\tif (h.type === Tok.Percentage) return;\n\t\tres.h = h.value;\n\t}\n\tif (alpha.type !== Tok.None) res.alpha = Math.min(1, Math.max(0, alpha.type === Tok.Number ? alpha.value : alpha.value / 100));\n\treturn res;\n}\nvar parseLch_default = parseLch;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lch/definition.js\nconst definition$20 = {\n\tmode: \"lch\",\n\ttoMode: {\n\t\tlab: convertLchToLab_default,\n\t\trgb: (c$1) => convertLabToRgb_default(convertLchToLab_default(c$1))\n\t},\n\tfromMode: {\n\t\trgb: (c$1) => convertLabToLch_default(convertRgbToLab_default(c$1)),\n\t\tlab: convertLabToLch_default\n\t},\n\tchannels: [\n\t\t\"l\",\n\t\t\"c\",\n\t\t\"h\",\n\t\t\"alpha\"\n\t],\n\tranges: {\n\t\tl: [0, 100],\n\t\tc: [0, 150],\n\t\th: [0, 360]\n\t},\n\tparse: [parseLch_default],\n\tserialize: (c$1) => `lch(${c$1.l !== void 0 ? c$1.l : \"none\"} ${c$1.c !== void 0 ? c$1.c : \"none\"} ${c$1.h !== void 0 ? c$1.h : \"none\"}${c$1.alpha < 1 ? ` / ${c$1.alpha}` : \"\"})`,\n\tinterpolate: {\n\t\th: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupHueShorter\n\t\t},\n\t\tc: interpolatorLinear,\n\t\tl: interpolatorLinear,\n\t\talpha: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupAlpha\n\t\t}\n\t},\n\tdifference: { h: differenceHueChroma },\n\taverage: { h: averageAngle }\n};\nvar definition_default$5 = definition$20;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lch65/definition.js\nconst definition$19 = {\n\t...definition_default$5,\n\tmode: \"lch65\",\n\tparse: [\"--lch-d65\"],\n\tserialize: \"--lch-d65\",\n\ttoMode: {\n\t\tlab65: (c$1) => convertLchToLab_default(c$1, \"lab65\"),\n\t\trgb: (c$1) => convertLab65ToRgb_default(convertLchToLab_default(c$1, \"lab65\"))\n\t},\n\tfromMode: {\n\t\trgb: (c$1) => convertLabToLch_default(convertRgbToLab65_default(c$1), \"lch65\"),\n\t\tlab65: (c$1) => convertLabToLch_default(c$1, \"lch65\")\n\t},\n\tranges: {\n\t\tl: [0, 100],\n\t\tc: [0, 150],\n\t\th: [0, 360]\n\t}\n};\nvar definition_default$23 = definition$19;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lrgb/definition.js\nconst definition$18 = {\n\t...definition_default$12,\n\tmode: \"lrgb\",\n\ttoMode: { rgb: convertLrgbToRgb_default },\n\tfromMode: { rgb: convertRgbToLrgb_default },\n\tparse: [\"srgb-linear\"],\n\tserialize: \"srgb-linear\"\n};\nvar definition_default$6 = definition$18;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/oklab/convertOklabToLrgb.js\nconst convertOklabToLrgb = ({ l, a, b, alpha }) => {\n\tif (l === void 0) l = 0;\n\tif (a === void 0) a = 0;\n\tif (b === void 0) b = 0;\n\tlet L = Math.pow(l + .3963377773761749 * a + .2158037573099136 * b, 3);\n\tlet M$1 = Math.pow(l - .1055613458156586 * a - .0638541728258133 * b, 3);\n\tlet S = Math.pow(l - .0894841775298119 * a - 1.2914855480194092 * b, 3);\n\tlet res = {\n\t\tmode: \"lrgb\",\n\t\tr: 4.076741636075957 * L - 3.3077115392580616 * M$1 + .2309699031821044 * S,\n\t\tg: -1.2684379732850317 * L + 2.6097573492876887 * M$1 - .3413193760026573 * S,\n\t\tb: -.0041960761386756 * L - .7034186179359362 * M$1 + 1.7076146940746117 * S\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertOklabToLrgb_default = convertOklabToLrgb;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/oklab/convertLrgbToOklab.js\nconst convertLrgbToOklab = ({ r: r$1, g, b, alpha }) => {\n\tif (r$1 === void 0) r$1 = 0;\n\tif (g === void 0) g = 0;\n\tif (b === void 0) b = 0;\n\tlet L = Math.cbrt(.412221469470763 * r$1 + .5363325372617348 * g + .0514459932675022 * b);\n\tlet M$1 = Math.cbrt(.2119034958178252 * r$1 + .6806995506452344 * g + .1073969535369406 * b);\n\tlet S = Math.cbrt(.0883024591900564 * r$1 + .2817188391361215 * g + .6299787016738222 * b);\n\tlet res = {\n\t\tmode: \"oklab\",\n\t\tl: .210454268309314 * L + .7936177747023054 * M$1 - .0040720430116193 * S,\n\t\ta: 1.9779985324311684 * L - 2.42859224204858 * M$1 + .450593709617411 * S,\n\t\tb: .0259040424655478 * L + .7827717124575296 * M$1 - .8086757549230774 * S\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertLrgbToOklab_default = convertLrgbToOklab;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/oklab/convertRgbToOklab.js\nconst convertRgbToOklab = (rgb$4) => {\n\tlet res = convertLrgbToOklab_default(convertRgbToLrgb_default(rgb$4));\n\tif (rgb$4.r === rgb$4.b && rgb$4.b === rgb$4.g) res.a = res.b = 0;\n\treturn res;\n};\nvar convertRgbToOklab_default = convertRgbToOklab;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/oklab/convertOklabToRgb.js\nconst convertOklabToRgb = (c$1) => convertLrgbToRgb_default(convertOklabToLrgb_default(c$1));\nvar convertOklabToRgb_default = convertOklabToRgb;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/oklab/parseOklab.js\nfunction parseOklab(color, parsed) {\n\tif (!parsed || parsed[0] !== \"oklab\") return;\n\tconst res = { mode: \"oklab\" };\n\tconst [, l, a, b, alpha] = parsed;\n\tif (l.type === Tok.Hue || a.type === Tok.Hue || b.type === Tok.Hue) return;\n\tif (l.type !== Tok.None) res.l = Math.min(Math.max(0, l.type === Tok.Number ? l.value : l.value / 100), 1);\n\tif (a.type !== Tok.None) res.a = a.type === Tok.Number ? a.value : a.value * .4 / 100;\n\tif (b.type !== Tok.None) res.b = b.type === Tok.Number ? b.value : b.value * .4 / 100;\n\tif (alpha.type !== Tok.None) res.alpha = Math.min(1, Math.max(0, alpha.type === Tok.Number ? alpha.value : alpha.value / 100));\n\treturn res;\n}\nvar parseOklab_default = parseOklab;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/oklab/definition.js\nconst definition$17 = {\n\t...definition_default$3,\n\tmode: \"oklab\",\n\ttoMode: {\n\t\tlrgb: convertOklabToLrgb_default,\n\t\trgb: convertOklabToRgb_default\n\t},\n\tfromMode: {\n\t\tlrgb: convertLrgbToOklab_default,\n\t\trgb: convertRgbToOklab_default\n\t},\n\tranges: {\n\t\tl: [0, 1],\n\t\ta: [-.4, .4],\n\t\tb: [-.4, .4]\n\t},\n\tparse: [parseOklab_default],\n\tserialize: (c$1) => `oklab(${c$1.l !== void 0 ? c$1.l : \"none\"} ${c$1.a !== void 0 ? c$1.a : \"none\"} ${c$1.b !== void 0 ? c$1.b : \"none\"}${c$1.alpha < 1 ? ` / ${c$1.alpha}` : \"\"})`\n};\nvar definition_default$7 = definition$17;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/oklch/parseOklch.js\nfunction parseOklch(color, parsed) {\n\tif (!parsed || parsed[0] !== \"oklch\") return;\n\tconst res = { mode: \"oklch\" };\n\tconst [, l, c$1, h, alpha] = parsed;\n\tif (l.type !== Tok.None) {\n\t\tif (l.type === Tok.Hue) return;\n\t\tres.l = Math.min(Math.max(0, l.type === Tok.Number ? l.value : l.value / 100), 1);\n\t}\n\tif (c$1.type !== Tok.None) res.c = Math.max(0, c$1.type === Tok.Number ? c$1.value : c$1.value * .4 / 100);\n\tif (h.type !== Tok.None) {\n\t\tif (h.type === Tok.Percentage) return;\n\t\tres.h = h.value;\n\t}\n\tif (alpha.type !== Tok.None) res.alpha = Math.min(1, Math.max(0, alpha.type === Tok.Number ? alpha.value : alpha.value / 100));\n\treturn res;\n}\nvar parseOklch_default = parseOklch;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/oklch/definition.js\nconst definition$16 = {\n\t...definition_default$5,\n\tmode: \"oklch\",\n\ttoMode: {\n\t\toklab: (c$1) => convertLchToLab_default(c$1, \"oklab\"),\n\t\trgb: (c$1) => convertOklabToRgb_default(convertLchToLab_default(c$1, \"oklab\"))\n\t},\n\tfromMode: {\n\t\trgb: (c$1) => convertLabToLch_default(convertRgbToOklab_default(c$1), \"oklch\"),\n\t\toklab: (c$1) => convertLabToLch_default(c$1, \"oklch\")\n\t},\n\tparse: [parseOklch_default],\n\tserialize: (c$1) => `oklch(${c$1.l !== void 0 ? c$1.l : \"none\"} ${c$1.c !== void 0 ? c$1.c : \"none\"} ${c$1.h !== void 0 ? c$1.h : \"none\"}${c$1.alpha < 1 ? ` / ${c$1.alpha}` : \"\"})`,\n\tranges: {\n\t\tl: [0, 1],\n\t\tc: [0, .4],\n\t\th: [0, 360]\n\t}\n};\nvar definition_default$8 = definition$16;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/p3/convertP3ToXyz65.js\nconst convertP3ToXyz65 = (rgb$4) => {\n\tlet { r: r$1, g, b, alpha } = convertRgbToLrgb_default(rgb$4);\n\tlet res = {\n\t\tmode: \"xyz65\",\n\t\tx: .486570948648216 * r$1 + .265667693169093 * g + .1982172852343625 * b,\n\t\ty: .2289745640697487 * r$1 + .6917385218365062 * g + .079286914093745 * b,\n\t\tz: 0 * r$1 + .0451133818589026 * g + 1.043944368900976 * b\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertP3ToXyz65_default = convertP3ToXyz65;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/p3/convertXyz65ToP3.js\nconst convertXyz65ToP3 = ({ x, y, z, alpha }) => {\n\tif (x === void 0) x = 0;\n\tif (y === void 0) y = 0;\n\tif (z === void 0) z = 0;\n\tlet res = convertLrgbToRgb_default({\n\t\tr: x * 2.4934969119414263 - y * .9313836179191242 - .402710784450717 * z,\n\t\tg: x * -.8294889695615749 + y * 1.7626640603183465 + .0236246858419436 * z,\n\t\tb: x * .0358458302437845 - y * .0761723892680418 + .9568845240076871 * z\n\t}, \"p3\");\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertXyz65ToP3_default = convertXyz65ToP3;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/p3/definition.js\nconst definition$15 = {\n\t...definition_default$12,\n\tmode: \"p3\",\n\tparse: [\"display-p3\"],\n\tserialize: \"display-p3\",\n\tfromMode: {\n\t\trgb: (color) => convertXyz65ToP3_default(convertRgbToXyz65_default(color)),\n\t\txyz65: convertXyz65ToP3_default\n\t},\n\ttoMode: {\n\t\trgb: (color) => convertXyz65ToRgb_default(convertP3ToXyz65_default(color)),\n\t\txyz65: convertP3ToXyz65_default\n\t}\n};\nvar definition_default$9 = definition$15;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/prophoto/convertXyz50ToProphoto.js\nconst gamma$1 = (v) => {\n\tlet abs$1 = Math.abs(v);\n\tif (abs$1 >= 1 / 512) return Math.sign(v) * Math.pow(abs$1, 1 / 1.8);\n\treturn 16 * v;\n};\nconst convertXyz50ToProphoto = ({ x, y, z, alpha }) => {\n\tif (x === void 0) x = 0;\n\tif (y === void 0) y = 0;\n\tif (z === void 0) z = 0;\n\tlet res = {\n\t\tmode: \"prophoto\",\n\t\tr: gamma$1(x * 1.3457868816471585 - y * .2555720873797946 - .0511018649755453 * z),\n\t\tg: gamma$1(x * -.5446307051249019 + y * 1.5082477428451466 + .0205274474364214 * z),\n\t\tb: gamma$1(x * 0 + y * 0 + 1.2119675456389452 * z)\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertXyz50ToProphoto_default = convertXyz50ToProphoto;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/prophoto/convertProphotoToXyz50.js\nconst linearize$1 = (v = 0) => {\n\tlet abs$1 = Math.abs(v);\n\tif (abs$1 >= 16 / 512) return Math.sign(v) * Math.pow(abs$1, 1.8);\n\treturn v / 16;\n};\nconst convertProphotoToXyz50 = (prophoto$2) => {\n\tlet r$1 = linearize$1(prophoto$2.r);\n\tlet g = linearize$1(prophoto$2.g);\n\tlet b = linearize$1(prophoto$2.b);\n\tlet res = {\n\t\tmode: \"xyz50\",\n\t\tx: .7977666449006423 * r$1 + .1351812974005331 * g + .0313477341283922 * b,\n\t\ty: .2880748288194013 * r$1 + .7118352342418731 * g + 899369387256e-16 * b,\n\t\tz: 0 * r$1 + 0 * g + .8251046025104602 * b\n\t};\n\tif (prophoto$2.alpha !== void 0) res.alpha = prophoto$2.alpha;\n\treturn res;\n};\nvar convertProphotoToXyz50_default = convertProphotoToXyz50;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/prophoto/definition.js\nconst definition$14 = {\n\t...definition_default$12,\n\tmode: \"prophoto\",\n\tparse: [\"prophoto-rgb\"],\n\tserialize: \"prophoto-rgb\",\n\tfromMode: {\n\t\txyz50: convertXyz50ToProphoto_default,\n\t\trgb: (color) => convertXyz50ToProphoto_default(convertRgbToXyz50_default(color))\n\t},\n\ttoMode: {\n\t\txyz50: convertProphotoToXyz50_default,\n\t\trgb: (color) => convertXyz50ToRgb_default(convertProphotoToXyz50_default(color))\n\t}\n};\nvar definition_default$10 = definition$14;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/rec2020/convertXyz65ToRec2020.js\nconst α$1 = 1.09929682680944;\nconst β$1 = .018053968510807;\nconst gamma = (v) => {\n\tconst abs$1 = Math.abs(v);\n\tif (abs$1 > β$1) return (Math.sign(v) || 1) * (α$1 * Math.pow(abs$1, .45) - (α$1 - 1));\n\treturn 4.5 * v;\n};\nconst convertXyz65ToRec2020 = ({ x, y, z, alpha }) => {\n\tif (x === void 0) x = 0;\n\tif (y === void 0) y = 0;\n\tif (z === void 0) z = 0;\n\tlet res = {\n\t\tmode: \"rec2020\",\n\t\tr: gamma(x * 1.7166511879712683 - y * .3556707837763925 - .2533662813736599 * z),\n\t\tg: gamma(x * -.6666843518324893 + y * 1.6164812366349395 + .0157685458139111 * z),\n\t\tb: gamma(x * .0176398574453108 - y * .0427706132578085 + .9421031212354739 * z)\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertXyz65ToRec2020_default = convertXyz65ToRec2020;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/rec2020/convertRec2020ToXyz65.js\nconst α = 1.09929682680944;\nconst β = .018053968510807;\nconst linearize = (v = 0) => {\n\tlet abs$1 = Math.abs(v);\n\tif (abs$1 < β * 4.5) return v / 4.5;\n\treturn (Math.sign(v) || 1) * Math.pow((abs$1 + α - 1) / α, 1 / .45);\n};\nconst convertRec2020ToXyz65 = (rec2020$2) => {\n\tlet r$1 = linearize(rec2020$2.r);\n\tlet g = linearize(rec2020$2.g);\n\tlet b = linearize(rec2020$2.b);\n\tlet res = {\n\t\tmode: \"xyz65\",\n\t\tx: .6369580483012911 * r$1 + .1446169035862083 * g + .1688809751641721 * b,\n\t\ty: .262700212011267 * r$1 + .6779980715188708 * g + .059301716469862 * b,\n\t\tz: 0 * r$1 + .0280726930490874 * g + 1.0609850577107909 * b\n\t};\n\tif (rec2020$2.alpha !== void 0) res.alpha = rec2020$2.alpha;\n\treturn res;\n};\nvar convertRec2020ToXyz65_default = convertRec2020ToXyz65;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/rec2020/definition.js\nconst definition$13 = {\n\t...definition_default$12,\n\tmode: \"rec2020\",\n\tfromMode: {\n\t\txyz65: convertXyz65ToRec2020_default,\n\t\trgb: (color) => convertXyz65ToRec2020_default(convertRgbToXyz65_default(color))\n\t},\n\ttoMode: {\n\t\txyz65: convertRec2020ToXyz65_default,\n\t\trgb: (color) => convertXyz65ToRgb_default(convertRec2020ToXyz65_default(color))\n\t},\n\tparse: [\"rec2020\"],\n\tserialize: \"rec2020\"\n};\nvar definition_default$11 = definition$13;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/xyz50/definition.js\nconst definition$12 = {\n\tmode: \"xyz50\",\n\tparse: [\"xyz-d50\"],\n\tserialize: \"xyz-d50\",\n\ttoMode: {\n\t\trgb: convertXyz50ToRgb_default,\n\t\tlab: convertXyz50ToLab_default\n\t},\n\tfromMode: {\n\t\trgb: convertRgbToXyz50_default,\n\t\tlab: convertLabToXyz50_default\n\t},\n\tchannels: [\n\t\t\"x\",\n\t\t\"y\",\n\t\t\"z\",\n\t\t\"alpha\"\n\t],\n\tranges: {\n\t\tx: [0, .964],\n\t\ty: [0, .999],\n\t\tz: [0, .825]\n\t},\n\tinterpolate: {\n\t\tx: interpolatorLinear,\n\t\ty: interpolatorLinear,\n\t\tz: interpolatorLinear,\n\t\talpha: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupAlpha\n\t\t}\n\t}\n};\nvar definition_default$13 = definition$12;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/xyz65/convertXyz65ToXyz50.js\nconst convertXyz65ToXyz50 = (xyz65$2) => {\n\tlet { x, y, z, alpha } = xyz65$2;\n\tif (x === void 0) x = 0;\n\tif (y === void 0) y = 0;\n\tif (z === void 0) z = 0;\n\tlet res = {\n\t\tmode: \"xyz50\",\n\t\tx: 1.0479298208405488 * x + .0229467933410191 * y - .0501922295431356 * z,\n\t\ty: .0296278156881593 * x + .990434484573249 * y - .0170738250293851 * z,\n\t\tz: -.0092430581525912 * x + .0150551448965779 * y + .7518742899580008 * z\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertXyz65ToXyz50_default = convertXyz65ToXyz50;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/xyz65/convertXyz50ToXyz65.js\nconst convertXyz50ToXyz65 = (xyz50$2) => {\n\tlet { x, y, z, alpha } = xyz50$2;\n\tif (x === void 0) x = 0;\n\tif (y === void 0) y = 0;\n\tif (z === void 0) z = 0;\n\tlet res = {\n\t\tmode: \"xyz65\",\n\t\tx: .9554734527042182 * x - .0230985368742614 * y + .0632593086610217 * z,\n\t\ty: -.0283697069632081 * x + 1.0099954580058226 * y + .021041398966943 * z,\n\t\tz: .0123140016883199 * x - .0205076964334779 * y + 1.3303659366080753 * z\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertXyz50ToXyz65_default = convertXyz50ToXyz65;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/xyz65/definition.js\nconst definition$11 = {\n\tmode: \"xyz65\",\n\ttoMode: {\n\t\trgb: convertXyz65ToRgb_default,\n\t\txyz50: convertXyz65ToXyz50_default\n\t},\n\tfromMode: {\n\t\trgb: convertRgbToXyz65_default,\n\t\txyz50: convertXyz50ToXyz65_default\n\t},\n\tranges: {\n\t\tx: [0, .95],\n\t\ty: [0, 1],\n\t\tz: [0, 1.088]\n\t},\n\tchannels: [\n\t\t\"x\",\n\t\t\"y\",\n\t\t\"z\",\n\t\t\"alpha\"\n\t],\n\tparse: [\"xyz\", \"xyz-d65\"],\n\tserialize: \"xyz-d65\",\n\tinterpolate: {\n\t\tx: interpolatorLinear,\n\t\ty: interpolatorLinear,\n\t\tz: interpolatorLinear,\n\t\talpha: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupAlpha\n\t\t}\n\t}\n};\nvar definition_default$14 = definition$11;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/bootstrap/css.js\nconst a98$1 = useMode(definition_default);\nconst hsl$2 = useMode(definition_default$1);\nconst hsv$1 = useMode(definition_default$19);\nconst hwb$1 = useMode(definition_default$2);\nconst lab$1 = useMode(definition_default$3);\nconst lab65$1 = useMode(definition_default$4);\nconst lch$1 = useMode(definition_default$5);\nconst lch65$1 = useMode(definition_default$23);\nconst lrgb$1 = useMode(definition_default$6);\nconst oklab$1 = useMode(definition_default$7);\nconst oklch$1 = useMode(definition_default$8);\nconst p3$1 = useMode(definition_default$9);\nconst prophoto$1 = useMode(definition_default$10);\nconst rec2020$1 = useMode(definition_default$11);\nconst rgb$3 = useMode(definition_default$12);\nconst xyz50$1 = useMode(definition_default$13);\nconst xyz65$1 = useMode(definition_default$14);\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/cubehelix/constants.js\nconst M = [\n\t-.14861,\n\t1.78277,\n\t-.29227,\n\t-.90649,\n\t1.97294,\n\t0\n];\nconst degToRad = Math.PI / 180;\nconst radToDeg = 180 / Math.PI;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/cubehelix/convertRgbToCubehelix.js\nlet DE = M[3] * M[4];\nlet BE = M[1] * M[4];\nlet BCAD = M[1] * M[2] - M[0] * M[3];\nconst convertRgbToCubehelix = ({ r: r$1, g, b, alpha }) => {\n\tif (r$1 === void 0) r$1 = 0;\n\tif (g === void 0) g = 0;\n\tif (b === void 0) b = 0;\n\tlet l = (BCAD * b + r$1 * DE - g * BE) / (BCAD + DE - BE);\n\tlet x = b - l;\n\tlet y = (M[4] * (g - l) - M[2] * x) / M[3];\n\tlet res = {\n\t\tmode: \"cubehelix\",\n\t\tl,\n\t\ts: l === 0 || l === 1 ? void 0 : Math.sqrt(x * x + y * y) / (M[4] * l * (1 - l))\n\t};\n\tif (res.s) res.h = Math.atan2(y, x) * radToDeg - 120;\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertRgbToCubehelix_default = convertRgbToCubehelix;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/cubehelix/convertCubehelixToRgb.js\nconst convertCubehelixToRgb = ({ h, s, l, alpha }) => {\n\tlet res = { mode: \"rgb\" };\n\th = (h === void 0 ? 0 : h + 120) * degToRad;\n\tif (l === void 0) l = 0;\n\tlet amp = s === void 0 ? 0 : s * l * (1 - l);\n\tlet cosh = Math.cos(h);\n\tlet sinh = Math.sin(h);\n\tres.r = l + amp * (M[0] * cosh + M[1] * sinh);\n\tres.g = l + amp * (M[2] * cosh + M[3] * sinh);\n\tres.b = l + amp * (M[4] * cosh + M[5] * sinh);\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertCubehelixToRgb_default = convertCubehelixToRgb;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/cubehelix/definition.js\nconst definition$10 = {\n\tmode: \"cubehelix\",\n\tchannels: [\n\t\t\"h\",\n\t\t\"s\",\n\t\t\"l\",\n\t\t\"alpha\"\n\t],\n\tparse: [\"--cubehelix\"],\n\tserialize: \"--cubehelix\",\n\tranges: {\n\t\th: [0, 360],\n\t\ts: [0, 4.614],\n\t\tl: [0, 1]\n\t},\n\tfromMode: { rgb: convertRgbToCubehelix_default },\n\ttoMode: { rgb: convertCubehelixToRgb_default },\n\tinterpolate: {\n\t\th: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupHueShorter\n\t\t},\n\t\ts: interpolatorLinear,\n\t\tl: interpolatorLinear,\n\t\talpha: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupAlpha\n\t\t}\n\t},\n\tdifference: { h: differenceHueSaturation },\n\taverage: { h: averageAngle }\n};\nvar definition_default$15 = definition$10;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/dlch/constants.js\nconst kE = 1;\nconst kCH = 1;\nconst θ = 26 / 180 * Math.PI;\nconst cosθ = Math.cos(θ);\nconst sinθ = Math.sin(θ);\nconst factor = 100 / Math.log(139 / 100);\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/dlch/convertDlchToLab65.js\nconst convertDlchToLab65 = ({ l, c: c$1, h, alpha }) => {\n\tif (l === void 0) l = 0;\n\tif (c$1 === void 0) c$1 = 0;\n\tif (h === void 0) h = 0;\n\tlet res = {\n\t\tmode: \"lab65\",\n\t\tl: (Math.exp(l * kE / factor) - 1) / .0039\n\t};\n\tlet G = (Math.exp(.0435 * c$1 * kCH * kE) - 1) / .075;\n\tlet e$3 = G * Math.cos(h / 180 * Math.PI - θ);\n\tlet f$2 = G * Math.sin(h / 180 * Math.PI - θ);\n\tres.a = e$3 * cosθ - f$2 / .83 * sinθ;\n\tres.b = e$3 * sinθ + f$2 / .83 * cosθ;\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertDlchToLab65_default = convertDlchToLab65;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/dlch/convertLab65ToDlch.js\nconst convertLab65ToDlch = ({ l, a, b, alpha }) => {\n\tif (l === void 0) l = 0;\n\tif (a === void 0) a = 0;\n\tif (b === void 0) b = 0;\n\tlet e$3 = a * cosθ + b * sinθ;\n\tlet f$2 = .83 * (b * cosθ - a * sinθ);\n\tlet G = Math.sqrt(e$3 * e$3 + f$2 * f$2);\n\tlet res = {\n\t\tmode: \"dlch\",\n\t\tl: factor / kE * Math.log(1 + .0039 * l),\n\t\tc: Math.log(1 + .075 * G) / (.0435 * kCH * kE)\n\t};\n\tif (res.c) res.h = normalizeHue_default((Math.atan2(f$2, e$3) + θ) / Math.PI * 180);\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertLab65ToDlch_default = convertLab65ToDlch;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/dlab/definition.js\nconst convertDlabToLab65 = (c$1) => convertDlchToLab65_default(convertLabToLch_default(c$1, \"dlch\"));\nconst convertLab65ToDlab = (c$1) => convertLchToLab_default(convertLab65ToDlch_default(c$1), \"dlab\");\nconst definition$9 = {\n\tmode: \"dlab\",\n\tparse: [\"--din99o-lab\"],\n\tserialize: \"--din99o-lab\",\n\ttoMode: {\n\t\tlab65: convertDlabToLab65,\n\t\trgb: (c$1) => convertLab65ToRgb_default(convertDlabToLab65(c$1))\n\t},\n\tfromMode: {\n\t\tlab65: convertLab65ToDlab,\n\t\trgb: (c$1) => convertLab65ToDlab(convertRgbToLab65_default(c$1))\n\t},\n\tchannels: [\n\t\t\"l\",\n\t\t\"a\",\n\t\t\"b\",\n\t\t\"alpha\"\n\t],\n\tranges: {\n\t\tl: [0, 100],\n\t\ta: [-40.09, 45.501],\n\t\tb: [-40.469, 44.344]\n\t},\n\tinterpolate: {\n\t\tl: interpolatorLinear,\n\t\ta: interpolatorLinear,\n\t\tb: interpolatorLinear,\n\t\talpha: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupAlpha\n\t\t}\n\t}\n};\nvar definition_default$16 = definition$9;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/dlch/definition.js\nconst definition$8 = {\n\tmode: \"dlch\",\n\tparse: [\"--din99o-lch\"],\n\tserialize: \"--din99o-lch\",\n\ttoMode: {\n\t\tlab65: convertDlchToLab65_default,\n\t\tdlab: (c$1) => convertLchToLab_default(c$1, \"dlab\"),\n\t\trgb: (c$1) => convertLab65ToRgb_default(convertDlchToLab65_default(c$1))\n\t},\n\tfromMode: {\n\t\tlab65: convertLab65ToDlch_default,\n\t\tdlab: (c$1) => convertLabToLch_default(c$1, \"dlch\"),\n\t\trgb: (c$1) => convertLab65ToDlch_default(convertRgbToLab65_default(c$1))\n\t},\n\tchannels: [\n\t\t\"l\",\n\t\t\"c\",\n\t\t\"h\",\n\t\t\"alpha\"\n\t],\n\tranges: {\n\t\tl: [0, 100],\n\t\tc: [0, 51.484],\n\t\th: [0, 360]\n\t},\n\tinterpolate: {\n\t\tl: interpolatorLinear,\n\t\tc: interpolatorLinear,\n\t\th: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupHueShorter\n\t\t},\n\t\talpha: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupAlpha\n\t\t}\n\t},\n\tdifference: { h: differenceHueChroma },\n\taverage: { h: averageAngle }\n};\nvar definition_default$17 = definition$8;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/hsi/convertHsiToRgb.js\nfunction convertHsiToRgb({ h, s, i, alpha }) {\n\th = normalizeHue_default(h !== void 0 ? h : 0);\n\tif (s === void 0) s = 0;\n\tif (i === void 0) i = 0;\n\tlet f$2 = Math.abs(h / 60 % 2 - 1);\n\tlet res;\n\tswitch (Math.floor(h / 60)) {\n\t\tcase 0:\n\t\t\tres = {\n\t\t\t\tr: i * (1 + s * (3 / (2 - f$2) - 1)),\n\t\t\t\tg: i * (1 + s * (3 * (1 - f$2) / (2 - f$2) - 1)),\n\t\t\t\tb: i * (1 - s)\n\t\t\t};\n\t\t\tbreak;\n\t\tcase 1:\n\t\t\tres = {\n\t\t\t\tr: i * (1 + s * (3 * (1 - f$2) / (2 - f$2) - 1)),\n\t\t\t\tg: i * (1 + s * (3 / (2 - f$2) - 1)),\n\t\t\t\tb: i * (1 - s)\n\t\t\t};\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tres = {\n\t\t\t\tr: i * (1 - s),\n\t\t\t\tg: i * (1 + s * (3 / (2 - f$2) - 1)),\n\t\t\t\tb: i * (1 + s * (3 * (1 - f$2) / (2 - f$2) - 1))\n\t\t\t};\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tres = {\n\t\t\t\tr: i * (1 - s),\n\t\t\t\tg: i * (1 + s * (3 * (1 - f$2) / (2 - f$2) - 1)),\n\t\t\t\tb: i * (1 + s * (3 / (2 - f$2) - 1))\n\t\t\t};\n\t\t\tbreak;\n\t\tcase 4:\n\t\t\tres = {\n\t\t\t\tr: i * (1 + s * (3 * (1 - f$2) / (2 - f$2) - 1)),\n\t\t\t\tg: i * (1 - s),\n\t\t\t\tb: i * (1 + s * (3 / (2 - f$2) - 1))\n\t\t\t};\n\t\t\tbreak;\n\t\tcase 5:\n\t\t\tres = {\n\t\t\t\tr: i * (1 + s * (3 / (2 - f$2) - 1)),\n\t\t\t\tg: i * (1 - s),\n\t\t\t\tb: i * (1 + s * (3 * (1 - f$2) / (2 - f$2) - 1))\n\t\t\t};\n\t\t\tbreak;\n\t\tdefault: res = {\n\t\t\tr: i * (1 - s),\n\t\t\tg: i * (1 - s),\n\t\t\tb: i * (1 - s)\n\t\t};\n\t}\n\tres.mode = \"rgb\";\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/hsi/convertRgbToHsi.js\nfunction convertRgbToHsi({ r: r$1, g, b, alpha }) {\n\tif (r$1 === void 0) r$1 = 0;\n\tif (g === void 0) g = 0;\n\tif (b === void 0) b = 0;\n\tlet M$1 = Math.max(r$1, g, b), m = Math.min(r$1, g, b);\n\tlet res = {\n\t\tmode: \"hsi\",\n\t\ts: r$1 + g + b === 0 ? 0 : 1 - 3 * m / (r$1 + g + b),\n\t\ti: (r$1 + g + b) / 3\n\t};\n\tif (M$1 - m !== 0) res.h = (M$1 === r$1 ? (g - b) / (M$1 - m) + (g < b) * 6 : M$1 === g ? (b - r$1) / (M$1 - m) + 2 : (r$1 - g) / (M$1 - m) + 4) * 60;\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/hsi/definition.js\nconst definition$7 = {\n\tmode: \"hsi\",\n\ttoMode: { rgb: convertHsiToRgb },\n\tparse: [\"--hsi\"],\n\tserialize: \"--hsi\",\n\tfromMode: { rgb: convertRgbToHsi },\n\tchannels: [\n\t\t\"h\",\n\t\t\"s\",\n\t\t\"i\",\n\t\t\"alpha\"\n\t],\n\tranges: { h: [0, 360] },\n\tgamut: \"rgb\",\n\tinterpolate: {\n\t\th: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupHueShorter\n\t\t},\n\t\ts: interpolatorLinear,\n\t\ti: interpolatorLinear,\n\t\talpha: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupAlpha\n\t\t}\n\t},\n\tdifference: { h: differenceHueSaturation },\n\taverage: { h: averageAngle }\n};\nvar definition_default$18 = definition$7;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/hdr/constants.js\nconst YW = 203;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/hdr/transfer.js\nconst M1 = .1593017578125;\nconst M2 = 78.84375;\nconst C1 = .8359375;\nconst C2 = 18.8515625;\nconst C3 = 18.6875;\nfunction transferPqDecode(v) {\n\tif (v < 0) return 0;\n\tconst c$1 = Math.pow(v, 1 / M2);\n\treturn 1e4 * Math.pow(Math.max(0, c$1 - C1) / (C2 - C3 * c$1), 1 / M1);\n}\nfunction transferPqEncode(v) {\n\tif (v < 0) return 0;\n\tconst c$1 = Math.pow(v / 1e4, M1);\n\treturn Math.pow((C1 + C2 * c$1) / (1 + C3 * c$1), M2);\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/itp/convertItpToXyz65.js\nconst toRel = (c$1) => Math.max(c$1 / YW, 0);\nconst convertItpToXyz65 = ({ i, t, p: p$2, alpha }) => {\n\tif (i === void 0) i = 0;\n\tif (t === void 0) t = 0;\n\tif (p$2 === void 0) p$2 = 0;\n\tconst l = transferPqDecode(i + .008609037037932761 * t + .11102962500302593 * p$2);\n\tconst m = transferPqDecode(i - .00860903703793275 * t - .11102962500302599 * p$2);\n\tconst s = transferPqDecode(i + .5600313357106791 * t - .32062717498731885 * p$2);\n\tconst res = {\n\t\tmode: \"xyz65\",\n\t\tx: toRel(2.070152218389422 * l - 1.3263473389671556 * m + .2066510476294051 * s),\n\t\ty: toRel(.3647385209748074 * l + .680566024947227 * m - .0453045459220346 * s),\n\t\tz: toRel(-.049747207535812 * l - .0492609666966138 * m + 1.1880659249923042 * s)\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertItpToXyz65_default = convertItpToXyz65;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/itp/convertXyz65ToItp.js\nconst toAbs = (c$1 = 0) => Math.max(c$1 * YW, 0);\nconst convertXyz65ToItp = ({ x, y, z, alpha }) => {\n\tconst absX = toAbs(x);\n\tconst absY = toAbs(y);\n\tconst absZ = toAbs(z);\n\tconst l = transferPqEncode(.3592832590121217 * absX + .6976051147779502 * absY - .0358915932320289 * absZ);\n\tconst m = transferPqEncode(-.1920808463704995 * absX + 1.1004767970374323 * absY + .0753748658519118 * absZ);\n\tconst s = transferPqEncode(.0070797844607477 * absX + .0748396662186366 * absY + .8433265453898765 * absZ);\n\tconst i = .5 * l + .5 * m;\n\tconst t = 1.61376953125 * l - 3.323486328125 * m + 1.709716796875 * s;\n\tconst p$2 = 4.378173828125 * l - 4.24560546875 * m - .132568359375 * s;\n\tconst res = {\n\t\tmode: \"itp\",\n\t\ti,\n\t\tt,\n\t\tp: p$2\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertXyz65ToItp_default = convertXyz65ToItp;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/itp/definition.js\nconst definition$6 = {\n\tmode: \"itp\",\n\tchannels: [\n\t\t\"i\",\n\t\t\"t\",\n\t\t\"p\",\n\t\t\"alpha\"\n\t],\n\tparse: [\"--ictcp\"],\n\tserialize: \"--ictcp\",\n\ttoMode: {\n\t\txyz65: convertItpToXyz65_default,\n\t\trgb: (color) => convertXyz65ToRgb_default(convertItpToXyz65_default(color))\n\t},\n\tfromMode: {\n\t\txyz65: convertXyz65ToItp_default,\n\t\trgb: (color) => convertXyz65ToItp_default(convertRgbToXyz65_default(color))\n\t},\n\tranges: {\n\t\ti: [0, .581],\n\t\tt: [-.369, .272],\n\t\tp: [-.164, .331]\n\t},\n\tinterpolate: {\n\t\ti: interpolatorLinear,\n\t\tt: interpolatorLinear,\n\t\tp: interpolatorLinear,\n\t\talpha: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupAlpha\n\t\t}\n\t}\n};\nvar definition_default$20 = definition$6;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/jab/convertXyz65ToJab.js\nconst p$1 = 134.03437499999998;\nconst d0$1 = 16295499532821565e-27;\nconst jabPqEncode = (v) => {\n\tif (v < 0) return 0;\n\tlet vn$2 = Math.pow(v / 1e4, M1);\n\treturn Math.pow((C1 + C2 * vn$2) / (1 + C3 * vn$2), p$1);\n};\nconst abs = (v = 0) => Math.max(v * 203, 0);\nconst convertXyz65ToJab = ({ x, y, z, alpha }) => {\n\tx = abs(x);\n\ty = abs(y);\n\tz = abs(z);\n\tlet xp = 1.15 * x - .15 * z;\n\tlet yp = .66 * y + .34 * x;\n\tlet l = jabPqEncode(.41478972 * xp + .579999 * yp + .014648 * z);\n\tlet m = jabPqEncode(-.20151 * xp + 1.120649 * yp + .0531008 * z);\n\tlet s = jabPqEncode(-.0166008 * xp + .2648 * yp + .6684799 * z);\n\tlet i = (l + m) / 2;\n\tlet res = {\n\t\tmode: \"jab\",\n\t\tj: .44 * i / (1 - .56 * i) - d0$1,\n\t\ta: 3.524 * l - 4.066708 * m + .542708 * s,\n\t\tb: .199076 * l + 1.096799 * m - 1.295875 * s\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertXyz65ToJab_default = convertXyz65ToJab;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/jab/convertJabToXyz65.js\nconst p = 134.03437499999998;\nconst d0 = 16295499532821565e-27;\nconst jabPqDecode = (v) => {\n\tif (v < 0) return 0;\n\tlet vp = Math.pow(v, 1 / p);\n\treturn 1e4 * Math.pow((C1 - vp) / (C3 * vp - C2), 1 / M1);\n};\nconst rel = (v) => v / 203;\nconst convertJabToXyz65 = ({ j, a, b, alpha }) => {\n\tif (j === void 0) j = 0;\n\tif (a === void 0) a = 0;\n\tif (b === void 0) b = 0;\n\tlet i = (j + d0) / (.44 + .56 * (j + d0));\n\tlet l = jabPqDecode(i + .13860504 * a + .058047316 * b);\n\tlet m = jabPqDecode(i - .13860504 * a - .058047316 * b);\n\tlet s = jabPqDecode(i - .096019242 * a - .8118919 * b);\n\tlet res = {\n\t\tmode: \"xyz65\",\n\t\tx: rel(1.661373024652174 * l - .914523081304348 * m + .23136208173913045 * s),\n\t\ty: rel(-.3250758611844533 * l + 1.571847026732543 * m - .21825383453227928 * s),\n\t\tz: rel(-.090982811 * l - .31272829 * m + 1.5227666 * s)\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertJabToXyz65_default = convertJabToXyz65;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/jab/convertRgbToJab.js\nconst convertRgbToJab = (rgb$4) => {\n\tlet res = convertXyz65ToJab_default(convertRgbToXyz65_default(rgb$4));\n\tif (rgb$4.r === rgb$4.b && rgb$4.b === rgb$4.g) res.a = res.b = 0;\n\treturn res;\n};\nvar convertRgbToJab_default = convertRgbToJab;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/jab/convertJabToRgb.js\nconst convertJabToRgb = (color) => convertXyz65ToRgb_default(convertJabToXyz65_default(color));\nvar convertJabToRgb_default = convertJabToRgb;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/jab/definition.js\nconst definition$5 = {\n\tmode: \"jab\",\n\tchannels: [\n\t\t\"j\",\n\t\t\"a\",\n\t\t\"b\",\n\t\t\"alpha\"\n\t],\n\tparse: [\"--jzazbz\"],\n\tserialize: \"--jzazbz\",\n\tfromMode: {\n\t\trgb: convertRgbToJab_default,\n\t\txyz65: convertXyz65ToJab_default\n\t},\n\ttoMode: {\n\t\trgb: convertJabToRgb_default,\n\t\txyz65: convertJabToXyz65_default\n\t},\n\tranges: {\n\t\tj: [0, .222],\n\t\ta: [-.109, .129],\n\t\tb: [-.185, .134]\n\t},\n\tinterpolate: {\n\t\tj: interpolatorLinear,\n\t\ta: interpolatorLinear,\n\t\tb: interpolatorLinear,\n\t\talpha: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupAlpha\n\t\t}\n\t}\n};\nvar definition_default$21 = definition$5;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/jch/convertJabToJch.js\nconst convertJabToJch = ({ j, a, b, alpha }) => {\n\tif (a === void 0) a = 0;\n\tif (b === void 0) b = 0;\n\tlet c$1 = Math.sqrt(a * a + b * b);\n\tlet res = {\n\t\tmode: \"jch\",\n\t\tj,\n\t\tc: c$1\n\t};\n\tif (c$1) res.h = normalizeHue_default(Math.atan2(b, a) * 180 / Math.PI);\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertJabToJch_default = convertJabToJch;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/jch/convertJchToJab.js\nconst convertJchToJab = ({ j, c: c$1, h, alpha }) => {\n\tif (h === void 0) h = 0;\n\tlet res = {\n\t\tmode: \"jab\",\n\t\tj,\n\t\ta: c$1 ? c$1 * Math.cos(h / 180 * Math.PI) : 0,\n\t\tb: c$1 ? c$1 * Math.sin(h / 180 * Math.PI) : 0\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertJchToJab_default = convertJchToJab;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/jch/definition.js\nconst definition$4 = {\n\tmode: \"jch\",\n\tparse: [\"--jzczhz\"],\n\tserialize: \"--jzczhz\",\n\ttoMode: {\n\t\tjab: convertJchToJab_default,\n\t\trgb: (c$1) => convertJabToRgb_default(convertJchToJab_default(c$1))\n\t},\n\tfromMode: {\n\t\trgb: (c$1) => convertJabToJch_default(convertRgbToJab_default(c$1)),\n\t\tjab: convertJabToJch_default\n\t},\n\tchannels: [\n\t\t\"j\",\n\t\t\"c\",\n\t\t\"h\",\n\t\t\"alpha\"\n\t],\n\tranges: {\n\t\tj: [0, .221],\n\t\tc: [0, .19],\n\t\th: [0, 360]\n\t},\n\tinterpolate: {\n\t\th: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupHueShorter\n\t\t},\n\t\tc: interpolatorLinear,\n\t\tj: interpolatorLinear,\n\t\talpha: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupAlpha\n\t\t}\n\t},\n\tdifference: { h: differenceHueChroma },\n\taverage: { h: averageAngle }\n};\nvar definition_default$22 = definition$4;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lchuv/convertLuvToLchuv.js\nconst convertLuvToLchuv = ({ l, u, v, alpha }) => {\n\tif (u === void 0) u = 0;\n\tif (v === void 0) v = 0;\n\tlet c$1 = Math.sqrt(u * u + v * v);\n\tlet res = {\n\t\tmode: \"lchuv\",\n\t\tl,\n\t\tc: c$1\n\t};\n\tif (c$1) res.h = normalizeHue_default(Math.atan2(v, u) * 180 / Math.PI);\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertLuvToLchuv_default = convertLuvToLchuv;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lchuv/convertLchuvToLuv.js\nconst convertLchuvToLuv = ({ l, c: c$1, h, alpha }) => {\n\tif (h === void 0) h = 0;\n\tlet res = {\n\t\tmode: \"luv\",\n\t\tl,\n\t\tu: c$1 ? c$1 * Math.cos(h / 180 * Math.PI) : 0,\n\t\tv: c$1 ? c$1 * Math.sin(h / 180 * Math.PI) : 0\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertLchuvToLuv_default = convertLchuvToLuv;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/luv/convertXyz50ToLuv.js\nconst u_fn$1 = (x, y, z) => 4 * x / (x + 15 * y + 3 * z);\nconst v_fn$1 = (x, y, z) => 9 * y / (x + 15 * y + 3 * z);\nconst un$1 = u_fn$1(D50.X, D50.Y, D50.Z);\nconst vn$1 = v_fn$1(D50.X, D50.Y, D50.Z);\nconst l_fn = (value) => value <= e ? k * value : 116 * Math.cbrt(value) - 16;\nconst convertXyz50ToLuv = ({ x, y, z, alpha }) => {\n\tif (x === void 0) x = 0;\n\tif (y === void 0) y = 0;\n\tif (z === void 0) z = 0;\n\tlet l = l_fn(y / D50.Y);\n\tlet u = u_fn$1(x, y, z);\n\tlet v = v_fn$1(x, y, z);\n\tif (!isFinite(u) || !isFinite(v)) l = u = v = 0;\n\telse {\n\t\tu = 13 * l * (u - un$1);\n\t\tv = 13 * l * (v - vn$1);\n\t}\n\tlet res = {\n\t\tmode: \"luv\",\n\t\tl,\n\t\tu,\n\t\tv\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertXyz50ToLuv_default = convertXyz50ToLuv;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/luv/convertLuvToXyz50.js\nconst u_fn = (x, y, z) => 4 * x / (x + 15 * y + 3 * z);\nconst v_fn = (x, y, z) => 9 * y / (x + 15 * y + 3 * z);\nconst un = u_fn(D50.X, D50.Y, D50.Z);\nconst vn = v_fn(D50.X, D50.Y, D50.Z);\nconst convertLuvToXyz50 = ({ l, u, v, alpha }) => {\n\tif (l === void 0) l = 0;\n\tif (l === 0) return {\n\t\tmode: \"xyz50\",\n\t\tx: 0,\n\t\ty: 0,\n\t\tz: 0\n\t};\n\tif (u === void 0) u = 0;\n\tif (v === void 0) v = 0;\n\tlet up = u / (13 * l) + un;\n\tlet vp = v / (13 * l) + vn;\n\tlet y = D50.Y * (l <= 8 ? l / k : Math.pow((l + 16) / 116, 3));\n\tlet x = y * (9 * up) / (4 * vp);\n\tlet z = y * (12 - 3 * up - 20 * vp) / (4 * vp);\n\tlet res = {\n\t\tmode: \"xyz50\",\n\t\tx,\n\t\ty,\n\t\tz\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertLuvToXyz50_default = convertLuvToXyz50;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lchuv/definition.js\nconst convertRgbToLchuv = (rgb$4) => convertLuvToLchuv_default(convertXyz50ToLuv_default(convertRgbToXyz50_default(rgb$4)));\nconst convertLchuvToRgb = (lchuv$1) => convertXyz50ToRgb_default(convertLuvToXyz50_default(convertLchuvToLuv_default(lchuv$1)));\nconst definition$3 = {\n\tmode: \"lchuv\",\n\ttoMode: {\n\t\tluv: convertLchuvToLuv_default,\n\t\trgb: convertLchuvToRgb\n\t},\n\tfromMode: {\n\t\trgb: convertRgbToLchuv,\n\t\tluv: convertLuvToLchuv_default\n\t},\n\tchannels: [\n\t\t\"l\",\n\t\t\"c\",\n\t\t\"h\",\n\t\t\"alpha\"\n\t],\n\tparse: [\"--lchuv\"],\n\tserialize: \"--lchuv\",\n\tranges: {\n\t\tl: [0, 100],\n\t\tc: [0, 176.956],\n\t\th: [0, 360]\n\t},\n\tinterpolate: {\n\t\th: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupHueShorter\n\t\t},\n\t\tc: interpolatorLinear,\n\t\tl: interpolatorLinear,\n\t\talpha: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupAlpha\n\t\t}\n\t},\n\tdifference: { h: differenceHueChroma },\n\taverage: { h: averageAngle }\n};\nvar definition_default$24 = definition$3;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/luv/definition.js\nconst definition$2 = {\n\tmode: \"luv\",\n\ttoMode: {\n\t\txyz50: convertLuvToXyz50_default,\n\t\trgb: (luv$1) => convertXyz50ToRgb_default(convertLuvToXyz50_default(luv$1))\n\t},\n\tfromMode: {\n\t\txyz50: convertXyz50ToLuv_default,\n\t\trgb: (rgb$4) => convertXyz50ToLuv_default(convertRgbToXyz50_default(rgb$4))\n\t},\n\tchannels: [\n\t\t\"l\",\n\t\t\"u\",\n\t\t\"v\",\n\t\t\"alpha\"\n\t],\n\tparse: [\"--luv\"],\n\tserialize: \"--luv\",\n\tranges: {\n\t\tl: [0, 100],\n\t\tu: [-84.936, 175.042],\n\t\tv: [-125.882, 87.243]\n\t},\n\tinterpolate: {\n\t\tl: interpolatorLinear,\n\t\tu: interpolatorLinear,\n\t\tv: interpolatorLinear,\n\t\talpha: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupAlpha\n\t\t}\n\t}\n};\nvar definition_default$25 = definition$2;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/okhsl/helpers.js\nfunction toe(x) {\n\tconst k_1 = .206;\n\tconst k_2 = .03;\n\tconst k_3 = (1 + k_1) / (1 + k_2);\n\treturn .5 * (k_3 * x - k_1 + Math.sqrt((k_3 * x - k_1) * (k_3 * x - k_1) + 4 * k_2 * k_3 * x));\n}\nfunction toe_inv(x) {\n\tconst k_1 = .206;\n\tconst k_2 = .03;\n\tconst k_3 = (1 + k_1) / (1 + k_2);\n\treturn (x * x + k_1 * x) / (k_3 * (x + k_2));\n}\nfunction compute_max_saturation(a, b) {\n\tlet k0, k1, k2, k3, k4, wl, wm, ws;\n\tif (-1.88170328 * a - .80936493 * b > 1) {\n\t\tk0 = 1.19086277;\n\t\tk1 = 1.76576728;\n\t\tk2 = .59662641;\n\t\tk3 = .75515197;\n\t\tk4 = .56771245;\n\t\twl = 4.0767416621;\n\t\twm = -3.3077115913;\n\t\tws = .2309699292;\n\t} else if (1.81444104 * a - 1.19445276 * b > 1) {\n\t\tk0 = .73956515;\n\t\tk1 = -.45954404;\n\t\tk2 = .08285427;\n\t\tk3 = .1254107;\n\t\tk4 = .14503204;\n\t\twl = -1.2684380046;\n\t\twm = 2.6097574011;\n\t\tws = -.3413193965;\n\t} else {\n\t\tk0 = 1.35733652;\n\t\tk1 = -.00915799;\n\t\tk2 = -1.1513021;\n\t\tk3 = -.50559606;\n\t\tk4 = .00692167;\n\t\twl = -.0041960863;\n\t\twm = -.7034186147;\n\t\tws = 1.707614701;\n\t}\n\tlet S = k0 + k1 * a + k2 * b + k3 * a * a + k4 * a * b;\n\tlet k_l = .3963377774 * a + .2158037573 * b;\n\tlet k_m = -.1055613458 * a - .0638541728 * b;\n\tlet k_s = -.0894841775 * a - 1.291485548 * b;\n\t{\n\t\tlet l_ = 1 + S * k_l;\n\t\tlet m_ = 1 + S * k_m;\n\t\tlet s_ = 1 + S * k_s;\n\t\tlet l = l_ * l_ * l_;\n\t\tlet m = m_ * m_ * m_;\n\t\tlet s = s_ * s_ * s_;\n\t\tlet l_dS = 3 * k_l * l_ * l_;\n\t\tlet m_dS = 3 * k_m * m_ * m_;\n\t\tlet s_dS = 3 * k_s * s_ * s_;\n\t\tlet l_dS2 = 6 * k_l * k_l * l_;\n\t\tlet m_dS2 = 6 * k_m * k_m * m_;\n\t\tlet s_dS2 = 6 * k_s * k_s * s_;\n\t\tlet f$2 = wl * l + wm * m + ws * s;\n\t\tlet f1 = wl * l_dS + wm * m_dS + ws * s_dS;\n\t\tlet f2 = wl * l_dS2 + wm * m_dS2 + ws * s_dS2;\n\t\tS = S - f$2 * f1 / (f1 * f1 - .5 * f$2 * f2);\n\t}\n\treturn S;\n}\nfunction find_cusp(a, b) {\n\tlet S_cusp = compute_max_saturation(a, b);\n\tlet rgb$4 = convertOklabToLrgb_default({\n\t\tl: 1,\n\t\ta: S_cusp * a,\n\t\tb: S_cusp * b\n\t});\n\tlet L_cusp = Math.cbrt(1 / Math.max(rgb$4.r, rgb$4.g, rgb$4.b));\n\tlet C_cusp = L_cusp * S_cusp;\n\treturn [L_cusp, C_cusp];\n}\nfunction find_gamut_intersection(a, b, L1, C1$1, L0, cusp = null) {\n\tif (!cusp) cusp = find_cusp(a, b);\n\tlet t;\n\tif ((L1 - L0) * cusp[1] - (cusp[0] - L0) * C1$1 <= 0) t = cusp[1] * L0 / (C1$1 * cusp[0] + cusp[1] * (L0 - L1));\n\telse {\n\t\tt = cusp[1] * (L0 - 1) / (C1$1 * (cusp[0] - 1) + cusp[1] * (L0 - L1));\n\t\t{\n\t\t\tlet dL = L1 - L0;\n\t\t\tlet dC = C1$1;\n\t\t\tlet k_l = .3963377774 * a + .2158037573 * b;\n\t\t\tlet k_m = -.1055613458 * a - .0638541728 * b;\n\t\t\tlet k_s = -.0894841775 * a - 1.291485548 * b;\n\t\t\tlet l_dt = dL + dC * k_l;\n\t\t\tlet m_dt = dL + dC * k_m;\n\t\t\tlet s_dt = dL + dC * k_s;\n\t\t\t{\n\t\t\t\tlet L = L0 * (1 - t) + t * L1;\n\t\t\t\tlet C = t * C1$1;\n\t\t\t\tlet l_ = L + C * k_l;\n\t\t\t\tlet m_ = L + C * k_m;\n\t\t\t\tlet s_ = L + C * k_s;\n\t\t\t\tlet l = l_ * l_ * l_;\n\t\t\t\tlet m = m_ * m_ * m_;\n\t\t\t\tlet s = s_ * s_ * s_;\n\t\t\t\tlet ldt = 3 * l_dt * l_ * l_;\n\t\t\t\tlet mdt = 3 * m_dt * m_ * m_;\n\t\t\t\tlet sdt = 3 * s_dt * s_ * s_;\n\t\t\t\tlet ldt2 = 6 * l_dt * l_dt * l_;\n\t\t\t\tlet mdt2 = 6 * m_dt * m_dt * m_;\n\t\t\t\tlet sdt2 = 6 * s_dt * s_dt * s_;\n\t\t\t\tlet r$1 = 4.0767416621 * l - 3.3077115913 * m + .2309699292 * s - 1;\n\t\t\t\tlet r1 = 4.0767416621 * ldt - 3.3077115913 * mdt + .2309699292 * sdt;\n\t\t\t\tlet r2 = 4.0767416621 * ldt2 - 3.3077115913 * mdt2 + .2309699292 * sdt2;\n\t\t\t\tlet u_r = r1 / (r1 * r1 - .5 * r$1 * r2);\n\t\t\t\tlet t_r = -r$1 * u_r;\n\t\t\t\tlet g = -1.2684380046 * l + 2.6097574011 * m - .3413193965 * s - 1;\n\t\t\t\tlet g1 = -1.2684380046 * ldt + 2.6097574011 * mdt - .3413193965 * sdt;\n\t\t\t\tlet g2 = -1.2684380046 * ldt2 + 2.6097574011 * mdt2 - .3413193965 * sdt2;\n\t\t\t\tlet u_g = g1 / (g1 * g1 - .5 * g * g2);\n\t\t\t\tlet t_g = -g * u_g;\n\t\t\t\tlet b$1 = -.0041960863 * l - .7034186147 * m + 1.707614701 * s - 1;\n\t\t\t\tlet b1 = -.0041960863 * ldt - .7034186147 * mdt + 1.707614701 * sdt;\n\t\t\t\tlet b2 = -.0041960863 * ldt2 - .7034186147 * mdt2 + 1.707614701 * sdt2;\n\t\t\t\tlet u_b = b1 / (b1 * b1 - .5 * b$1 * b2);\n\t\t\t\tlet t_b = -b$1 * u_b;\n\t\t\t\tt_r = u_r >= 0 ? t_r : 1e6;\n\t\t\t\tt_g = u_g >= 0 ? t_g : 1e6;\n\t\t\t\tt_b = u_b >= 0 ? t_b : 1e6;\n\t\t\t\tt += Math.min(t_r, Math.min(t_g, t_b));\n\t\t\t}\n\t\t}\n\t}\n\treturn t;\n}\nfunction get_ST_max(a_, b_, cusp = null) {\n\tif (!cusp) cusp = find_cusp(a_, b_);\n\tlet L = cusp[0];\n\tlet C = cusp[1];\n\treturn [C / L, C / (1 - L)];\n}\nfunction get_Cs(L, a_, b_) {\n\tlet cusp = find_cusp(a_, b_);\n\tlet C_max = find_gamut_intersection(a_, b_, L, 1, L, cusp);\n\tlet ST_max = get_ST_max(a_, b_, cusp);\n\tlet S_mid = .11516993 + 1 / (7.4477897 + 4.1590124 * b_ + a_ * (-2.19557347 + 1.75198401 * b_ + a_ * (-2.13704948 - 10.02301043 * b_ + a_ * (-4.24894561 + 5.38770819 * b_ + 4.69891013 * a_))));\n\tlet T_mid = .11239642 + 1 / (1.6132032 - .68124379 * b_ + a_ * (.40370612 + .90148123 * b_ + a_ * (-.27087943 + .6122399 * b_ + a_ * (.00299215 - .45399568 * b_ - .14661872 * a_))));\n\tlet k$3 = C_max / Math.min(L * ST_max[0], (1 - L) * ST_max[1]);\n\tlet C_a = L * S_mid;\n\tlet C_b = (1 - L) * T_mid;\n\tlet C_mid = .9 * k$3 * Math.sqrt(Math.sqrt(1 / (1 / (C_a * C_a * C_a * C_a) + 1 / (C_b * C_b * C_b * C_b))));\n\tC_a = L * .4;\n\tC_b = (1 - L) * .8;\n\treturn [\n\t\tMath.sqrt(1 / (1 / (C_a * C_a) + 1 / (C_b * C_b))),\n\t\tC_mid,\n\t\tC_max\n\t];\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/okhsl/convertOklabToOkhsl.js\nfunction convertOklabToOkhsl(lab$2) {\n\tconst l = lab$2.l !== void 0 ? lab$2.l : 0;\n\tconst a = lab$2.a !== void 0 ? lab$2.a : 0;\n\tconst b = lab$2.b !== void 0 ? lab$2.b : 0;\n\tconst ret = {\n\t\tmode: \"okhsl\",\n\t\tl: toe(l)\n\t};\n\tif (lab$2.alpha !== void 0) ret.alpha = lab$2.alpha;\n\tlet c$1 = Math.sqrt(a * a + b * b);\n\tif (!c$1) {\n\t\tret.s = 0;\n\t\treturn ret;\n\t}\n\tlet [C_0, C_mid, C_max] = get_Cs(l, a / c$1, b / c$1);\n\tlet s;\n\tif (c$1 < C_mid) {\n\t\tlet k_0 = 0;\n\t\tlet k_1 = .8 * C_0;\n\t\tlet k_2 = 1 - k_1 / C_mid;\n\t\ts = (c$1 - k_0) / (k_1 + k_2 * (c$1 - k_0)) * .8;\n\t} else {\n\t\tlet k_0 = C_mid;\n\t\tlet k_1 = .2 * C_mid * C_mid * 1.25 * 1.25 / C_0;\n\t\tlet k_2 = 1 - k_1 / (C_max - C_mid);\n\t\ts = .8 + .2 * ((c$1 - k_0) / (k_1 + k_2 * (c$1 - k_0)));\n\t}\n\tif (s) {\n\t\tret.s = s;\n\t\tret.h = normalizeHue_default(Math.atan2(b, a) * 180 / Math.PI);\n\t}\n\treturn ret;\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/okhsl/convertOkhslToOklab.js\nfunction convertOkhslToOklab(hsl$3) {\n\tlet h = hsl$3.h !== void 0 ? hsl$3.h : 0;\n\tlet s = hsl$3.s !== void 0 ? hsl$3.s : 0;\n\tlet l = hsl$3.l !== void 0 ? hsl$3.l : 0;\n\tconst ret = {\n\t\tmode: \"oklab\",\n\t\tl: toe_inv(l)\n\t};\n\tif (hsl$3.alpha !== void 0) ret.alpha = hsl$3.alpha;\n\tif (!s || l === 1) {\n\t\tret.a = ret.b = 0;\n\t\treturn ret;\n\t}\n\tlet a_ = Math.cos(h / 180 * Math.PI);\n\tlet b_ = Math.sin(h / 180 * Math.PI);\n\tlet [C_0, C_mid, C_max] = get_Cs(ret.l, a_, b_);\n\tlet t, k_0, k_1, k_2;\n\tif (s < .8) {\n\t\tt = 1.25 * s;\n\t\tk_0 = 0;\n\t\tk_1 = .8 * C_0;\n\t\tk_2 = 1 - k_1 / C_mid;\n\t} else {\n\t\tt = 5 * (s - .8);\n\t\tk_0 = C_mid;\n\t\tk_1 = .2 * C_mid * C_mid * 1.25 * 1.25 / C_0;\n\t\tk_2 = 1 - k_1 / (C_max - C_mid);\n\t}\n\tlet C = k_0 + t * k_1 / (1 - k_2 * t);\n\tret.a = C * a_;\n\tret.b = C * b_;\n\treturn ret;\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/okhsl/modeOkhsl.js\nconst modeOkhsl = {\n\t...definition_default$1,\n\tmode: \"okhsl\",\n\tchannels: [\n\t\t\"h\",\n\t\t\"s\",\n\t\t\"l\",\n\t\t\"alpha\"\n\t],\n\tparse: [\"--okhsl\"],\n\tserialize: \"--okhsl\",\n\tfromMode: {\n\t\toklab: convertOklabToOkhsl,\n\t\trgb: (c$1) => convertOklabToOkhsl(convertRgbToOklab_default(c$1))\n\t},\n\ttoMode: {\n\t\toklab: convertOkhslToOklab,\n\t\trgb: (c$1) => convertOklabToRgb_default(convertOkhslToOklab(c$1))\n\t}\n};\nvar modeOkhsl_default = modeOkhsl;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/okhsv/convertOklabToOkhsv.js\nfunction convertOklabToOkhsv(lab$2) {\n\tlet l = lab$2.l !== void 0 ? lab$2.l : 0;\n\tlet a = lab$2.a !== void 0 ? lab$2.a : 0;\n\tlet b = lab$2.b !== void 0 ? lab$2.b : 0;\n\tlet c$1 = Math.sqrt(a * a + b * b);\n\tlet a_ = c$1 ? a / c$1 : 1;\n\tlet b_ = c$1 ? b / c$1 : 1;\n\tlet [S_max, T] = get_ST_max(a_, b_);\n\tlet S_0 = .5;\n\tlet k$3 = 1 - S_0 / S_max;\n\tlet t = T / (c$1 + l * T);\n\tlet L_v = t * l;\n\tlet C_v = t * c$1;\n\tlet L_vt = toe_inv(L_v);\n\tlet C_vt = C_v * L_vt / L_v;\n\tlet rgb_scale = convertOklabToLrgb_default({\n\t\tl: L_vt,\n\t\ta: a_ * C_vt,\n\t\tb: b_ * C_vt\n\t});\n\tlet scale_L = Math.cbrt(1 / Math.max(rgb_scale.r, rgb_scale.g, rgb_scale.b, 0));\n\tl = l / scale_L;\n\tc$1 = c$1 / scale_L * toe(l) / l;\n\tl = toe(l);\n\tconst ret = {\n\t\tmode: \"okhsv\",\n\t\ts: c$1 ? (S_0 + T) * C_v / (T * S_0 + T * k$3 * C_v) : 0,\n\t\tv: l ? l / L_v : 0\n\t};\n\tif (ret.s) ret.h = normalizeHue_default(Math.atan2(b, a) * 180 / Math.PI);\n\tif (lab$2.alpha !== void 0) ret.alpha = lab$2.alpha;\n\treturn ret;\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/okhsv/convertOkhsvToOklab.js\nfunction convertOkhsvToOklab(hsv$2) {\n\tconst ret = { mode: \"oklab\" };\n\tif (hsv$2.alpha !== void 0) ret.alpha = hsv$2.alpha;\n\tconst h = hsv$2.h !== void 0 ? hsv$2.h : 0;\n\tconst s = hsv$2.s !== void 0 ? hsv$2.s : 0;\n\tconst v = hsv$2.v !== void 0 ? hsv$2.v : 0;\n\tconst a_ = Math.cos(h / 180 * Math.PI);\n\tconst b_ = Math.sin(h / 180 * Math.PI);\n\tconst [S_max, T] = get_ST_max(a_, b_);\n\tconst S_0 = .5;\n\tconst k$3 = 1 - S_0 / S_max;\n\tconst L_v = 1 - s * S_0 / (S_0 + T - T * k$3 * s);\n\tconst C_v = s * T * S_0 / (S_0 + T - T * k$3 * s);\n\tconst L_vt = toe_inv(L_v);\n\tconst C_vt = C_v * L_vt / L_v;\n\tconst rgb_scale = convertOklabToLrgb_default({\n\t\tl: L_vt,\n\t\ta: a_ * C_vt,\n\t\tb: b_ * C_vt\n\t});\n\tconst scale_L = Math.cbrt(1 / Math.max(rgb_scale.r, rgb_scale.g, rgb_scale.b, 0));\n\tconst L_new = toe_inv(v * L_v);\n\tconst C = C_v * L_new / L_v;\n\tret.l = L_new * scale_L;\n\tret.a = C * a_ * scale_L;\n\tret.b = C * b_ * scale_L;\n\treturn ret;\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/okhsv/modeOkhsv.js\nconst modeOkhsv = {\n\t...definition_default$19,\n\tmode: \"okhsv\",\n\tchannels: [\n\t\t\"h\",\n\t\t\"s\",\n\t\t\"v\",\n\t\t\"alpha\"\n\t],\n\tparse: [\"--okhsv\"],\n\tserialize: \"--okhsv\",\n\tfromMode: {\n\t\toklab: convertOklabToOkhsv,\n\t\trgb: (c$1) => convertOklabToOkhsv(convertRgbToOklab_default(c$1))\n\t},\n\ttoMode: {\n\t\toklab: convertOkhsvToOklab,\n\t\trgb: (c$1) => convertOklabToRgb_default(convertOkhsvToOklab(c$1))\n\t}\n};\nvar modeOkhsv_default = modeOkhsv;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/xyb/constants.js\nconst bias = .0037930732552754493;\nconst bias_cbrt = Math.cbrt(bias);\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/xyb/convertRgbToXyb.js\nconst transfer$1 = (v) => Math.cbrt(v) - bias_cbrt;\nconst convertRgbToXyb = (color) => {\n\tconst { r: r$1, g, b, alpha } = convertRgbToLrgb_default(color);\n\tconst l = transfer$1(.3 * r$1 + .622 * g + .078 * b + bias);\n\tconst m = transfer$1(.23 * r$1 + .692 * g + .078 * b + bias);\n\tconst s = transfer$1(.2434226892454782 * r$1 + .2047674442449682 * g + .5518098665095535 * b + bias);\n\tconst res = {\n\t\tmode: \"xyb\",\n\t\tx: (l - m) / 2,\n\t\ty: (l + m) / 2,\n\t\tb: s - (l + m) / 2\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertRgbToXyb_default = convertRgbToXyb;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/xyb/convertXybToRgb.js\nconst transfer = (v) => Math.pow(v + bias_cbrt, 3);\nconst convertXybToRgb = ({ x, y, b, alpha }) => {\n\tif (x === void 0) x = 0;\n\tif (y === void 0) y = 0;\n\tif (b === void 0) b = 0;\n\tconst l = transfer(x + y) - bias;\n\tconst m = transfer(y - x) - bias;\n\tconst s = transfer(b + y) - bias;\n\tconst res = convertLrgbToRgb_default({\n\t\tr: 11.031566904639861 * l - 9.866943908131562 * m - .16462299650829934 * s,\n\t\tg: -3.2541473810744237 * l + 4.418770377582723 * m - .16462299650829934 * s,\n\t\tb: -3.6588512867136815 * l + 2.7129230459360922 * m + 1.9459282407775895 * s\n\t});\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertXybToRgb_default = convertXybToRgb;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/xyb/definition.js\nconst definition$1 = {\n\tmode: \"xyb\",\n\tchannels: [\n\t\t\"x\",\n\t\t\"y\",\n\t\t\"b\",\n\t\t\"alpha\"\n\t],\n\tparse: [\"--xyb\"],\n\tserialize: \"--xyb\",\n\ttoMode: { rgb: convertXybToRgb_default },\n\tfromMode: { rgb: convertRgbToXyb_default },\n\tranges: {\n\t\tx: [-.0154, .0281],\n\t\ty: [0, .8453],\n\t\tb: [-.2778, .388]\n\t},\n\tinterpolate: {\n\t\tx: interpolatorLinear,\n\t\ty: interpolatorLinear,\n\t\tb: interpolatorLinear,\n\t\talpha: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupAlpha\n\t\t}\n\t}\n};\nvar definition_default$26 = definition$1;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/yiq/convertRgbToYiq.js\nconst convertRgbToYiq = ({ r: r$1, g, b, alpha }) => {\n\tif (r$1 === void 0) r$1 = 0;\n\tif (g === void 0) g = 0;\n\tif (b === void 0) b = 0;\n\tconst res = {\n\t\tmode: \"yiq\",\n\t\ty: .29889531 * r$1 + .58662247 * g + .11448223 * b,\n\t\ti: .59597799 * r$1 - .2741761 * g - .32180189 * b,\n\t\tq: .21147017 * r$1 - .52261711 * g + .31114694 * b\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertRgbToYiq_default = convertRgbToYiq;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/yiq/convertYiqToRgb.js\nconst convertYiqToRgb = ({ y, i, q, alpha }) => {\n\tif (y === void 0) y = 0;\n\tif (i === void 0) i = 0;\n\tif (q === void 0) q = 0;\n\tconst res = {\n\t\tmode: \"rgb\",\n\t\tr: y + .95608445 * i + .6208885 * q,\n\t\tg: y - .27137664 * i - .6486059 * q,\n\t\tb: y - 1.10561724 * i + 1.70250126 * q\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertYiqToRgb_default = convertYiqToRgb;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/yiq/definition.js\nconst definition = {\n\tmode: \"yiq\",\n\ttoMode: { rgb: convertYiqToRgb_default },\n\tfromMode: { rgb: convertRgbToYiq_default },\n\tchannels: [\n\t\t\"y\",\n\t\t\"i\",\n\t\t\"q\",\n\t\t\"alpha\"\n\t],\n\tparse: [\"--yiq\"],\n\tserialize: \"--yiq\",\n\tranges: {\n\t\ti: [-.595, .595],\n\t\tq: [-.522, .522]\n\t},\n\tinterpolate: {\n\t\ty: interpolatorLinear,\n\t\ti: interpolatorLinear,\n\t\tq: interpolatorLinear,\n\t\talpha: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupAlpha\n\t\t}\n\t}\n};\nvar definition_default$27 = definition;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/round.js\nconst r = (value, precision) => Math.round(value * (precision = Math.pow(10, precision))) / precision;\nconst round = (precision = 4) => (value) => typeof value === \"number\" ? r(value, precision) : value;\nvar round_default = round;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/formatter.js\nlet twoDecimals = round_default(2);\nconst clamp = (value) => Math.max(0, Math.min(1, value || 0));\nconst fixup = (value) => Math.round(clamp(value) * 255);\nconst rgb$2 = converter_default(\"rgb\");\nconst hsl$1 = converter_default(\"hsl\");\nconst serializeHex = (color) => {\n\tif (color === void 0) return;\n\tlet r$1 = fixup(color.r);\n\tlet g = fixup(color.g);\n\tlet b = fixup(color.b);\n\treturn \"#\" + (1 << 24 | r$1 << 16 | g << 8 | b).toString(16).slice(1);\n};\nconst serializeHex8 = (color) => {\n\tif (color === void 0) return;\n\tlet a = fixup(color.alpha !== void 0 ? color.alpha : 1);\n\treturn serializeHex(color) + (256 | a).toString(16).slice(1);\n};\nconst formatCss = (c$1) => {\n\tconst color = _prepare_default(c$1);\n\tif (!color) return;\n\tconst def = getMode(color.mode);\n\tif (!def.serialize || typeof def.serialize === \"string\") {\n\t\tlet res = `color(${def.serialize || `--${color.mode}`} `;\n\t\tdef.channels.forEach((ch, i) => {\n\t\t\tif (ch !== \"alpha\") res += (i ? \" \" : \"\") + (color[ch] !== void 0 ? color[ch] : \"none\");\n\t\t});\n\t\tif (color.alpha !== void 0 && color.alpha < 1) res += ` / ${color.alpha}`;\n\t\treturn res + \")\";\n\t}\n\tif (typeof def.serialize === \"function\") return def.serialize(color);\n};\nconst formatHex = (c$1) => serializeHex(rgb$2(c$1));\nconst formatHex8 = (c$1) => serializeHex8(rgb$2(c$1));\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/clamp.js\nconst rgb$1 = converter_default(\"rgb\");\nconst fixup_rgb = (c$1) => {\n\tconst res = {\n\t\tmode: c$1.mode,\n\t\tr: Math.max(0, Math.min(c$1.r !== void 0 ? c$1.r : 0, 1)),\n\t\tg: Math.max(0, Math.min(c$1.g !== void 0 ? c$1.g : 0, 1)),\n\t\tb: Math.max(0, Math.min(c$1.b !== void 0 ? c$1.b : 0, 1))\n\t};\n\tif (c$1.alpha !== void 0) res.alpha = c$1.alpha;\n\treturn res;\n};\nconst inrange_rgb = (c$1) => {\n\treturn c$1 !== void 0 && (c$1.r === void 0 || c$1.r >= 0 && c$1.r <= 1) && (c$1.g === void 0 || c$1.g >= 0 && c$1.g <= 1) && (c$1.b === void 0 || c$1.b >= 0 && c$1.b <= 1);\n};\nfunction displayable(color) {\n\treturn inrange_rgb(rgb$1(color));\n}\nfunction inGamut(mode = \"rgb\") {\n\tconst { gamut } = getMode(mode);\n\tif (!gamut) return (color) => true;\n\tconst conv = converter_default(typeof gamut === \"string\" ? gamut : mode);\n\treturn (color) => inrange_rgb(conv(color));\n}\nfunction clampGamut(mode = \"rgb\") {\n\tconst { gamut } = getMode(mode);\n\tif (!gamut) return (color) => _prepare_default(color);\n\tconst destMode = typeof gamut === \"string\" ? gamut : mode;\n\tconst destConv = converter_default(destMode);\n\tconst inDestGamut = inGamut(destMode);\n\treturn (color) => {\n\t\tconst original = _prepare_default(color);\n\t\tif (!original) return;\n\t\tconst converted = destConv(original);\n\t\tif (inDestGamut(converted)) return original;\n\t\tconst clamped = fixup_rgb(converted);\n\t\tif (original.mode === clamped.mode) return clamped;\n\t\treturn converter_default(original.mode)(clamped);\n\t};\n}\nfunction toGamut(dest = \"rgb\", mode = \"oklch\", delta = differenceEuclidean(\"oklch\"), jnd = .02) {\n\tconst destConv = converter_default(dest);\n\tconst destMode = getMode(dest);\n\tif (!destMode.gamut) return (color) => destConv(color);\n\tconst inDestinationGamut = inGamut(dest);\n\tconst clipToGamut = clampGamut(dest);\n\tconst ucs = converter_default(mode);\n\tconst { ranges } = getMode(mode);\n\tif (!ranges.l || !ranges.c) throw new Error(\"LCH-like space expected\");\n\treturn (color) => {\n\t\tcolor = _prepare_default(color);\n\t\tif (color === void 0) return;\n\t\tconst candidate = { ...ucs(color) };\n\t\tif (candidate.l === void 0) candidate.l = 0;\n\t\tif (candidate.c === void 0) candidate.c = 0;\n\t\tif (candidate.l >= ranges.l[1]) {\n\t\t\tconst res = {\n\t\t\t\t...destMode.white,\n\t\t\t\tmode: dest\n\t\t\t};\n\t\t\tif (color.alpha !== void 0) res.alpha = color.alpha;\n\t\t\treturn res;\n\t\t}\n\t\tif (candidate.l <= ranges.l[0]) {\n\t\t\tconst res = {\n\t\t\t\t...destMode.black,\n\t\t\t\tmode: dest\n\t\t\t};\n\t\t\tif (color.alpha !== void 0) res.alpha = color.alpha;\n\t\t\treturn res;\n\t\t}\n\t\tif (inDestinationGamut(candidate)) return destConv(candidate);\n\t\tlet start = 0;\n\t\tlet end = candidate.c;\n\t\tlet epsilon = (ranges.c[1] - ranges.c[0]) / 4e3;\n\t\tlet clipped = clipToGamut(candidate);\n\t\twhile (end - start > epsilon) {\n\t\t\tcandidate.c = (start + end) * .5;\n\t\t\tclipped = clipToGamut(candidate);\n\t\t\tif (inDestinationGamut(candidate) || delta && jnd > 0 && delta(candidate, clipped) <= jnd) start = candidate.c;\n\t\t\telse end = candidate.c;\n\t\t}\n\t\treturn destConv(inDestinationGamut(candidate) ? candidate : clipped);\n\t};\n}\n\n//#endregion\n//#region ../token-tools/dist/string-D3-qmBT2.js\nconst HEX_RE = /^#?([0-9a-f]{8}|[0-9a-f]{6}|[0-9a-f]{4}|[0-9a-f]{3})$/i;\nconst CULORI_TO_CSS = {\n\ta98: \"a98-rgb\",\n\thsl: \"hsl\",\n\thwb: \"hwb\",\n\tlab: \"lab\",\n\tlab65: \"lab-d65\",\n\tlch: \"lch\",\n\tlrgb: \"srgb-linear\",\n\toklab: \"oklab\",\n\toklch: \"oklch\",\n\tokhsv: \"okhsv\",\n\tp3: \"display-p3\",\n\tprophoto: \"prophoto-rgb\",\n\trec2020: \"rec2020\",\n\trgb: \"srgb\",\n\txyz50: \"xyz-d50\",\n\txyz65: \"xyz-d65\"\n};\nconst CSS_TO_CULORI = {\n\t\"a98-rgb\": \"a98\",\n\t\"display-p3\": \"p3\",\n\thsl: \"hsl\",\n\thwb: \"hwb\",\n\tlab: \"lab\",\n\t\"lab-d65\": \"lab65\",\n\tlch: \"lch\",\n\toklab: \"oklab\",\n\toklch: \"oklch\",\n\tokhsv: \"okhsv\",\n\t\"prophoto-rgb\": \"prophoto\",\n\trec2020: \"rec2020\",\n\tsrgb: \"rgb\",\n\t\"srgb-linear\": \"lrgb\",\n\txyz: \"xyz65\",\n\t\"xyz-d50\": \"xyz50\",\n\t\"xyz-d65\": \"xyz65\"\n};\n/** Parse any color */\nfunction parseColor(color) {\n\tconst result = parse_default(color);\n\tif (!result) throw new Error(`Unable to parse color \"${color}\"`);\n\tif (!(result.mode in CULORI_TO_CSS)) throw new Error(`Unsupported color space: ${result.mode}`);\n\tconst colorSpace = CULORI_TO_CSS[result.mode];\n\tlet components = [\n\t\t0,\n\t\t0,\n\t\t0\n\t];\n\tswitch (result.mode) {\n\t\tcase \"a98\":\n\t\tcase \"rec2020\":\n\t\tcase \"p3\":\n\t\tcase \"prophoto\":\n\t\tcase \"lrgb\":\n\t\tcase \"rgb\":\n\t\t\tcomponents = [\n\t\t\t\tresult.r,\n\t\t\t\tresult.g,\n\t\t\t\tresult.b\n\t\t\t];\n\t\t\tbreak;\n\t\tcase \"hsl\": {\n\t\t\tconst maxS = COLORSPACE[colorSpace].ranges[1]?.[1] ?? 1;\n\t\t\tconst maxL = COLORSPACE[colorSpace].ranges[2]?.[1] ?? 1;\n\t\t\tcomponents = [\n\t\t\t\tresult.h ?? 0,\n\t\t\t\tresult.s * maxS,\n\t\t\t\tresult.l * maxL\n\t\t\t];\n\t\t\tbreak;\n\t\t}\n\t\tcase \"hwb\": {\n\t\t\tconst maxW = COLORSPACE[colorSpace].ranges[1]?.[1] ?? 1;\n\t\t\tconst maxB = COLORSPACE[colorSpace].ranges[2]?.[1] ?? 1;\n\t\t\tcomponents = [\n\t\t\t\tresult.h ?? 0,\n\t\t\t\tresult.w * maxW,\n\t\t\t\tresult.b * maxB\n\t\t\t];\n\t\t\tbreak;\n\t\t}\n\t\tcase \"lab\":\n\t\tcase \"lab65\":\n\t\tcase \"oklab\":\n\t\t\tcomponents = [\n\t\t\t\tresult.l,\n\t\t\t\tresult.a,\n\t\t\t\tresult.b\n\t\t\t];\n\t\t\tbreak;\n\t\tcase \"lch\":\n\t\tcase \"oklch\":\n\t\t\tcomponents = [\n\t\t\t\tresult.l,\n\t\t\t\tresult.c,\n\t\t\t\tresult.h ?? 0\n\t\t\t];\n\t\t\tbreak;\n\t\tcase \"okhsv\":\n\t\t\tcomponents = [\n\t\t\t\tresult.h ?? 0,\n\t\t\t\tresult.s,\n\t\t\t\tresult.v\n\t\t\t];\n\t\t\tbreak;\n\t\tcase \"xyz50\":\n\t\tcase \"xyz65\":\n\t\t\tcomponents = [\n\t\t\t\tresult.x,\n\t\t\t\tresult.y,\n\t\t\t\tresult.z\n\t\t\t];\n\t\t\tbreak;\n\t}\n\tconst value = {\n\t\tcolorSpace,\n\t\tcomponents,\n\t\talpha: result.alpha ?? 1\n\t};\n\tif (HEX_RE.test(color)) value.hex = formatHex(result);\n\treturn value;\n}\n/** Convert a color token to a Culori color */\nfunction tokenToCulori(value) {\n\tswitch (value.colorSpace) {\n\t\tcase \"a98-rgb\":\n\t\tcase \"display-p3\":\n\t\tcase \"prophoto-rgb\":\n\t\tcase \"rec2020\":\n\t\tcase \"srgb\":\n\t\tcase \"srgb-linear\": {\n\t\t\tconst [r$1, g, b] = value.components;\n\t\t\treturn {\n\t\t\t\tmode: CSS_TO_CULORI[value.colorSpace] || value.colorSpace,\n\t\t\t\tr: r$1,\n\t\t\t\tg,\n\t\t\t\tb,\n\t\t\t\talpha: value.alpha\n\t\t\t};\n\t\t}\n\t\tcase \"hsl\": {\n\t\t\tconst [h, s, l] = value.components;\n\t\t\tconst maxS = COLORSPACE[value.colorSpace].ranges[1]?.[1] ?? 1;\n\t\t\tconst maxL = COLORSPACE[value.colorSpace].ranges[2]?.[1] ?? 1;\n\t\t\treturn {\n\t\t\t\tmode: \"hsl\",\n\t\t\t\th,\n\t\t\t\ts: s / maxS,\n\t\t\t\tl: l / maxL,\n\t\t\t\talpha: value.alpha\n\t\t\t};\n\t\t}\n\t\tcase \"hwb\": {\n\t\t\tconst [h, w, b] = value.components;\n\t\t\tconst maxW = COLORSPACE[value.colorSpace].ranges[1]?.[1] ?? 1;\n\t\t\tconst maxB = COLORSPACE[value.colorSpace].ranges[2]?.[1] ?? 1;\n\t\t\treturn {\n\t\t\t\tmode: \"hwb\",\n\t\t\t\th,\n\t\t\t\tw: w / maxW,\n\t\t\t\tb: b / maxB,\n\t\t\t\talpha: value.alpha\n\t\t\t};\n\t\t}\n\t\tcase \"lab\":\n\t\tcase \"lab-d65\":\n\t\tcase \"oklab\": {\n\t\t\tconst [l = 0, a = 0, b = 0] = value.components;\n\t\t\treturn {\n\t\t\t\tmode: value.colorSpace === \"lab-d65\" ? \"lab65\" : value.colorSpace,\n\t\t\t\tl,\n\t\t\t\ta,\n\t\t\t\tb,\n\t\t\t\talpha: value.alpha\n\t\t\t};\n\t\t}\n\t\tcase \"lch\":\n\t\tcase \"oklch\": {\n\t\t\tconst [l, c$1, h] = value.components;\n\t\t\treturn {\n\t\t\t\tmode: value.colorSpace,\n\t\t\t\tl,\n\t\t\t\tc: c$1,\n\t\t\t\th,\n\t\t\t\talpha: value.alpha\n\t\t\t};\n\t\t}\n\t\tcase \"okhsv\": {\n\t\t\tconst [h, s, v] = value.components;\n\t\t\treturn {\n\t\t\t\tmode: value.colorSpace,\n\t\t\t\th,\n\t\t\t\ts,\n\t\t\t\tv,\n\t\t\t\talpha: value.alpha\n\t\t\t};\n\t\t}\n\t\tcase \"xyz\":\n\t\tcase \"xyz-d50\":\n\t\tcase \"xyz-d65\": {\n\t\t\tconst [x, y, z] = value.components;\n\t\t\treturn {\n\t\t\t\tmode: CSS_TO_CULORI[value.colorSpace],\n\t\t\t\tx,\n\t\t\t\ty,\n\t\t\t\tz,\n\t\t\t\talpha: value.alpha\n\t\t\t};\n\t\t}\n\t\tdefault: throw new Error(`Invalid colorSpace \"${value.colorSpace}\". Expected one of ${Object.keys(CSS_TO_CULORI).join(\", \")}`);\n\t}\n}\n/** Complete list of CSS Module 4 Colorspaces */\nconst COLORSPACE = {\n\t\"a98-rgb\": { ranges: [\n\t\t[0, 1],\n\t\t[0, 1],\n\t\t[0, 1]\n\t] },\n\t\"display-p3\": { ranges: [\n\t\t[0, 1],\n\t\t[0, 1],\n\t\t[0, 1]\n\t] },\n\thsl: { ranges: [\n\t\t[0, 360],\n\t\t[0, 100],\n\t\t[0, 100]\n\t] },\n\thwb: { ranges: [\n\t\t[0, 360],\n\t\t[0, 100],\n\t\t[0, 100]\n\t] },\n\tlab: { ranges: [\n\t\t[0, 100],\n\t\t[-125, 125],\n\t\t[-125, 125]\n\t] },\n\t\"lab-d65\": { ranges: [\n\t\t[0, 100],\n\t\t[-125, 125],\n\t\t[-125, 125]\n\t] },\n\tlch: { ranges: [\n\t\t[0, 100],\n\t\t[0, 150],\n\t\t[0, 360]\n\t] },\n\toklab: { ranges: [\n\t\t[0, 1],\n\t\t[-.4, .4],\n\t\t[-.4, .4]\n\t] },\n\toklch: { ranges: [\n\t\t[0, 1],\n\t\t[0, .4],\n\t\t[0, 360]\n\t] },\n\tokhsv: { ranges: [\n\t\t[0, 360],\n\t\t[0, 1],\n\t\t[0, 1]\n\t] },\n\t\"prophoto-rgb\": { ranges: [\n\t\t[0, 1],\n\t\t[0, 1],\n\t\t[0, 1]\n\t] },\n\trec2020: { ranges: [\n\t\t[0, 1],\n\t\t[0, 1],\n\t\t[0, 1]\n\t] },\n\tsrgb: { ranges: [\n\t\t[0, 1],\n\t\t[0, 1],\n\t\t[0, 1]\n\t] },\n\t\"srgb-linear\": { ranges: [\n\t\t[0, 1],\n\t\t[0, 1],\n\t\t[0, 1]\n\t] },\n\t\"xyz-d50\": { ranges: [\n\t\t[0, 1],\n\t\t[0, 1],\n\t\t[0, 1]\n\t] },\n\txyz: { ranges: [\n\t\t[0, 1],\n\t\t[0, 1],\n\t\t[0, 1]\n\t] },\n\t\"xyz-d65\": { ranges: [\n\t\t[0, 1],\n\t\t[0, 1],\n\t\t[0, 1]\n\t] }\n};\n/** Turn a string into kebab-case */\nfunction kebabCase(str) {\n\tlet output = \"\";\n\tfor (const c$1 of str.split(\"\")) {\n\t\tif (c$1 === \".\") {\n\t\t\toutput += \"-\";\n\t\t\tcontinue;\n\t\t}\n\t\tlet isFirstUppercase = true;\n\t\tif (isFirstUppercase && /\\p{Uppercase_Letter}/u.test(c$1)) {\n\t\t\toutput += `-${c$1.toLocaleLowerCase()}`;\n\t\t\tisFirstUppercase = false;\n\t\t\tcontinue;\n\t\t} else isFirstUppercase = true;\n\t\toutput += c$1;\n\t}\n\treturn output;\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/wildcard-match@5.1.4/node_modules/wildcard-match/build/index.es.mjs\n/**\n* Escapes a character if it has a special meaning in regular expressions\n* and returns the character as is if it doesn't\n*/\nfunction escapeRegExpChar(char) {\n\tif (char === \"-\" || char === \"^\" || char === \"$\" || char === \"+\" || char === \".\" || char === \"(\" || char === \")\" || char === \"|\" || char === \"[\" || char === \"]\" || char === \"{\" || char === \"}\" || char === \"*\" || char === \"?\" || char === \"\\\\\") return \"\\\\\".concat(char);\n\telse return char;\n}\n/**\n* Escapes all characters in a given string that have a special meaning in regular expressions\n*/\nfunction escapeRegExpString(str) {\n\tvar result = \"\";\n\tfor (var i = 0; i < str.length; i++) result += escapeRegExpChar(str[i]);\n\treturn result;\n}\n/**\n* Transforms one or more glob patterns into a RegExp pattern\n*/\nfunction transform(pattern, separator) {\n\tif (separator === void 0) separator = true;\n\tif (Array.isArray(pattern)) {\n\t\tvar regExpPatterns = pattern.map(function(p$2) {\n\t\t\treturn \"^\".concat(transform(p$2, separator), \"$\");\n\t\t});\n\t\treturn \"(?:\".concat(regExpPatterns.join(\"|\"), \")\");\n\t}\n\tvar separatorSplitter = \"\";\n\tvar separatorMatcher = \"\";\n\tvar wildcard = \".\";\n\tif (separator === true) {\n\t\tseparatorSplitter = \"/\";\n\t\tseparatorMatcher = \"[/\\\\\\\\]\";\n\t\twildcard = \"[^/\\\\\\\\]\";\n\t} else if (separator) {\n\t\tseparatorSplitter = separator;\n\t\tseparatorMatcher = escapeRegExpString(separatorSplitter);\n\t\tif (separatorMatcher.length > 1) {\n\t\t\tseparatorMatcher = \"(?:\".concat(separatorMatcher, \")\");\n\t\t\twildcard = \"((?!\".concat(separatorMatcher, \").)\");\n\t\t} else wildcard = \"[^\".concat(separatorMatcher, \"]\");\n\t}\n\tvar requiredSeparator = separator ? \"\".concat(separatorMatcher, \"+?\") : \"\";\n\tvar optionalSeparator = separator ? \"\".concat(separatorMatcher, \"*?\") : \"\";\n\tvar segments = separator ? pattern.split(separatorSplitter) : [pattern];\n\tvar result = \"\";\n\tfor (var s = 0; s < segments.length; s++) {\n\t\tvar segment = segments[s];\n\t\tvar nextSegment = segments[s + 1];\n\t\tvar currentSeparator = \"\";\n\t\tif (!segment && s > 0) continue;\n\t\tif (separator) if (s === segments.length - 1) currentSeparator = optionalSeparator;\n\t\telse if (nextSegment !== \"**\") currentSeparator = requiredSeparator;\n\t\telse currentSeparator = \"\";\n\t\tif (separator && segment === \"**\") {\n\t\t\tif (currentSeparator) {\n\t\t\t\tresult += s === 0 ? \"\" : s === segments.length - 1 ? \"(?:\".concat(requiredSeparator, \"|$)\") : requiredSeparator;\n\t\t\t\tresult += \"(?:\".concat(wildcard, \"*?\").concat(currentSeparator, \")*?\");\n\t\t\t}\n\t\t\tcontinue;\n\t\t}\n\t\tfor (var c$1 = 0; c$1 < segment.length; c$1++) {\n\t\t\tvar char = segment[c$1];\n\t\t\tif (char === \"\\\\\") {\n\t\t\t\tif (c$1 < segment.length - 1) {\n\t\t\t\t\tresult += escapeRegExpChar(segment[c$1 + 1]);\n\t\t\t\t\tc$1++;\n\t\t\t\t}\n\t\t\t} else if (char === \"?\") result += wildcard;\n\t\t\telse if (char === \"*\") result += \"\".concat(wildcard, \"*?\");\n\t\t\telse result += escapeRegExpChar(char);\n\t\t}\n\t\tresult += currentSeparator;\n\t}\n\treturn result;\n}\nfunction isMatch(regexp, sample) {\n\tif (typeof sample !== \"string\") throw new TypeError(\"Sample must be a string, but \".concat(typeof sample, \" given\"));\n\treturn regexp.test(sample);\n}\n/**\n* Compiles one or more glob patterns into a RegExp and returns an isMatch function.\n* The isMatch function takes a sample string as its only argument and returns `true`\n* if the string matches the pattern(s).\n*\n* ```js\n* wildcardMatch('src/*.js')('src/index.js') //=> true\n* ```\n*\n* ```js\n* const isMatch = wildcardMatch('*.example.com', '.')\n* isMatch('foo.example.com') //=> true\n* isMatch('foo.bar.com') //=> false\n* ```\n*/\nfunction wildcardMatch(pattern, options) {\n\tif (typeof pattern !== \"string\" && !Array.isArray(pattern)) throw new TypeError(\"The first argument must be a single pattern string or an array of patterns, but \".concat(typeof pattern, \" given\"));\n\tif (typeof options === \"string\" || typeof options === \"boolean\") options = { separator: options };\n\tif (arguments.length === 2 && !(typeof options === \"undefined\" || typeof options === \"object\" && options !== null && !Array.isArray(options))) throw new TypeError(\"The second argument must be an options object or a string/boolean separator, but \".concat(typeof options, \" given\"));\n\toptions = options || {};\n\tif (options.separator === \"\\\\\") throw new Error(\"\\\\ is not a valid separator because it is used for escaping. Try setting the separator to `true` instead\");\n\tvar regexpPattern = transform(pattern, options.separator);\n\tvar regexp = new RegExp(\"^\".concat(regexpPattern, \"$\"), options.flags);\n\tvar fn$4 = isMatch.bind(null, regexp);\n\tfn$4.options = options;\n\tfn$4.pattern = pattern;\n\tfn$4.regexp = regexp;\n\treturn fn$4;\n}\n\n//#endregion\n//#region ../token-tools/dist/index.js\n/** Give a user pertinent feedback if they override a transform incorrectly */\nfunction validateCustomTransform(value, { $type }) {\n\tif (value) {\n\t\tif (typeof value !== \"string\" && typeof value !== \"object\" || Array.isArray(value)) throw new Error(`transform(): expected string or Object of strings, received ${Array.isArray(value) ? \"Array\" : typeof value}`);\n\t\tswitch ($type) {\n\t\t\tcase \"typography\":\n\t\t\t\tif (typeof value !== \"object\") throw new Error(\"transform(): typography tokens must be an object of keys\");\n\t\t\t\tbreak;\n\t\t}\n\t}\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/index.js\nconst a98 = useMode(definition_default);\nconst cubehelix = useMode(definition_default$15);\nconst dlab = useMode(definition_default$16);\nconst dlch = useMode(definition_default$17);\nconst hsi = useMode(definition_default$18);\nconst hsl = useMode(definition_default$1);\nconst hsv = useMode(definition_default$19);\nconst hwb = useMode(definition_default$2);\nconst itp = useMode(definition_default$20);\nconst jab = useMode(definition_default$21);\nconst jch = useMode(definition_default$22);\nconst lab = useMode(definition_default$3);\nconst lab65 = useMode(definition_default$4);\nconst lch = useMode(definition_default$5);\nconst lch65 = useMode(definition_default$23);\nconst lchuv = useMode(definition_default$24);\nconst lrgb = useMode(definition_default$6);\nconst luv = useMode(definition_default$25);\nconst okhsl = useMode(modeOkhsl_default);\nconst okhsv = useMode(modeOkhsv_default);\nconst oklab = useMode(definition_default$7);\nconst oklch = useMode(definition_default$8);\nconst p3 = useMode(definition_default$9);\nconst prophoto = useMode(definition_default$10);\nconst rec2020 = useMode(definition_default$11);\nconst rgb = useMode(definition_default$12);\nconst xyb = useMode(definition_default$26);\nconst xyz50 = useMode(definition_default$13);\nconst xyz65 = useMode(definition_default$14);\nconst yiq = useMode(definition_default$27);\n\n//#endregion\n//#region ../token-tools/dist/css.js\nfunction defaultAliasTransform(token) {\n\tif (!token) throw new Error(\"Undefined token\");\n\treturn `var(${makeCSSVar(token.id)})`;\n}\n/** Generate shorthand CSS for select token types */\nfunction generateShorthand({ $type, localID }) {\n\tswitch ($type) {\n\t\tcase \"transition\": return [\n\t\t\t\"duration\",\n\t\t\t\"delay\",\n\t\t\t\"timing-function\"\n\t\t].map((p$2) => makeCSSVar(`${localID}-${p$2}`, { wrapVar: true })).join(\" \");\n\t}\n}\nconst CSS_VAR_RE = /(?:(\\p{Uppercase_Letter}?[\\p{Lowercase_Letter}\\p{Number}]+|[\\p{Uppercase_Letter}\\p{Number}]+|[\\u{80}-\\u{10FFFF}\\p{Number}]+)|.)/u;\n/**\n* Generate a valid CSS variable from any string\n* Code by @dfrankland\n*/\nfunction makeCSSVar(name, { prefix, wrapVar = false } = {}) {\n\tif (typeof name !== \"string\") throw new Error(`makeCSSVar() Expected string, received ${name}`);\n\tlet property = name.split(CSS_VAR_RE).filter(Boolean).join(\"-\");\n\tif (prefix && !property.startsWith(`${prefix}-`)) property = `${prefix}-${property}`;\n\tconst finalProperty = `--${property}`.toLocaleLowerCase();\n\treturn wrapVar ? `var(${finalProperty})` : finalProperty;\n}\n/** Convert boolean value to CSS string */\nfunction transformBoolean(token, { tokensSet, transformAlias = defaultAliasTransform }) {\n\tif (token.aliasChain?.[0]) return transformAlias(tokensSet[token.aliasChain[0]]);\n\treturn token.$value === true ? \"1\" : \"0\";\n}\n/** Convert color value to CSS string */\nfunction transformColor(token, options) {\n\tconst { transformAlias = defaultAliasTransform, tokensSet } = options;\n\tif (token.aliasChain?.[0]) return transformAlias(tokensSet[token.aliasChain[0]]);\n\tconst { colorSpace, components, alpha = 1 } = typeof token.$value === \"string\" ? parseColor(token.$value) : token.$value;\n\tconst color = tokenToCulori({\n\t\tcolorSpace,\n\t\tcomponents,\n\t\talpha\n\t});\n\tif (!color) throw new Error(`Can’t convert color ${JSON.stringify(token.$value)} to Culori color`);\n\tlet formatColor = formatCss;\n\tif (options.color?.legacyHex) formatColor = color.alpha !== 1 ? formatHex8 : formatHex;\n\treturn displayable(color) ? formatColor(color) : downsample({\n\t\tcolorSpace,\n\t\tcomponents,\n\t\talpha\n\t}, color, options.color?.depth);\n}\nconst converters = {\n\ta98: useMode(definition_default),\n\thsl: useMode(definition_default$1),\n\thwb: useMode(definition_default$2),\n\tlab: useMode(definition_default$3),\n\tlab65: useMode(definition_default$4),\n\tlch: useMode(definition_default$5),\n\tlrgb: useMode(definition_default$6),\n\toklab: useMode(definition_default$7),\n\toklch: useMode(definition_default$8),\n\tokhsv: useMode(modeOkhsv_default),\n\tp3: useMode(definition_default$9),\n\tprophoto: useMode(definition_default$10),\n\trec2020: useMode(definition_default$11),\n\trgb: useMode(definition_default$12),\n\txyz50: useMode(definition_default$13),\n\txyz65: useMode(definition_default$14)\n};\nconst DEPTH_ROUNDING = {\n\t24: round_default(4),\n\t30: round_default(4),\n\t36: round_default(5),\n\t48: round_default(6)\n};\n/**\n* Downsample color to sRGB/Display P3/Rec2020 colorspaces.\n* Note: because Culori tends to convert to RGB color spaces to ensure the operation,\n* we have to do an additional step of converting back. So we’re not really converting;\n* we’re just preserving the original colorspace.\n*/\nfunction downsample($value, culoriColor, depth = 30) {\n\tif (!($value.colorSpace in CSS_TO_CULORI)) throw new Error(`Invalid colorSpace \"${$value.colorSpace}\". Expected one of: ${Object.keys(CSS_TO_CULORI).join(\", \")}`);\n\tconst conversionSpace = CSS_TO_CULORI[$value.colorSpace] || \"oklab\";\n\tlet gamutSpace = conversionSpace;\n\tif (gamutSpace === \"lab\" || gamutSpace === \"lab65\") gamutSpace = \"lch\";\n\telse if (gamutSpace === \"oklab\") gamutSpace = \"oklch\";\n\tlet srgb = converters[conversionSpace](toGamut(\"rgb\", gamutSpace)(culoriColor));\n\tlet p3$2 = converters[conversionSpace](toGamut(\"p3\", gamutSpace)(culoriColor));\n\tlet rec2020$2 = converters[conversionSpace](toGamut(\"rec2020\", gamutSpace)(culoriColor));\n\tif (typeof depth === \"number\") {\n\t\tif (!DEPTH_ROUNDING[depth]) throw new Error(`Invalid bit depth: ${depth}. Supported values: ${Object.keys(DEPTH_ROUNDING).join(\", \")}`);\n\t\tsrgb = roundColor(srgb, depth);\n\t\tp3$2 = roundColor(p3$2, depth);\n\t\trec2020$2 = roundColor(rec2020$2, depth);\n\t}\n\treturn {\n\t\t\".\": formatCss(culoriColor),\n\t\tsrgb: formatCss(srgb),\n\t\tp3: formatCss(p3$2),\n\t\trec2020: formatCss(rec2020$2)\n\t};\n}\n/** Round color to certain depth. */\nfunction roundColor(color, depth = 30) {\n\tif (depth === \"unlimited\") return color;\n\tconst newColor = { ...color };\n\tfor (const [k$3, v] of Object.entries(color)) {\n\t\tif (typeof v !== \"number\" || k$3 === \"mode\") continue;\n\t\tnewColor[k$3] = DEPTH_ROUNDING[depth](v);\n\t}\n\treturn newColor;\n}\n/** Convert dimension value to CSS */\nfunction transformDimension(token, options) {\n\tconst { tokensSet, transformAlias = defaultAliasTransform } = options;\n\tif (token.aliasChain?.[0]) return transformAlias(tokensSet[token.aliasChain[0]]);\n\treturn token.$value.value === 0 ? \"0\" : `${token.$value.value}${token.$value.unit}`;\n}\n/** Convert strokeStyle value to CSS */\nfunction transformStrokeStyle(token, options) {\n\tconst { tokensSet, transformAlias = defaultAliasTransform } = options;\n\tif (token.aliasChain?.[0]) return transformAlias(tokensSet[token.aliasChain[0]]);\n\treturn typeof token.$value === \"string\" ? token.$value : \"dashed\";\n}\n/** Convert border value to multiple CSS values */\nfunction transformBorder(token, options) {\n\tconst { tokensSet, transformAlias = defaultAliasTransform } = options;\n\tif (token.aliasChain?.[0]) return transformAlias(tokensSet[token.aliasChain[0]]);\n\tconst width = token.partialAliasOf?.width ? transformAlias(tokensSet[token.partialAliasOf.width]) : transformDimension({ $value: token.$value.width }, options);\n\tconst color = token.partialAliasOf?.color ? transformAlias(tokensSet[token.partialAliasOf.color]) : transformColor({ $value: token.$value.color }, options);\n\tconst style = token.partialAliasOf?.style ? transformAlias(tokensSet[token.partialAliasOf.style]) : transformStrokeStyle({ $value: token.$value.style }, options);\n\tconst formatBorder = (colorKey) => [\n\t\twidth,\n\t\tstyle,\n\t\ttypeof color === \"string\" ? color : color[colorKey]\n\t].join(\" \");\n\treturn typeof color === \"string\" || displayable(color.p3) ? formatBorder(\".\") : {\n\t\t\".\": formatBorder(\".\"),\n\t\tsrgb: formatBorder(\"srgb\"),\n\t\tp3: formatBorder(\"p3\"),\n\t\trec2020: formatBorder(\"rec2020\")\n\t};\n}\n/** Convert cubicBezier value to CSS */\nfunction transformCubicBezier(token, options) {\n\tconst { tokensSet, transformAlias = defaultAliasTransform } = options;\n\tif (token.aliasChain?.[0]) return transformAlias(tokensSet[token.aliasChain[0]]);\n\treturn `cubic-bezier(${token.$value.map((v, i) => token.partialAliasOf?.[i] ? transformAlias(tokensSet[token.partialAliasOf[i]]) : v).join(\", \")})`;\n}\n/** Convert duration value to CSS */\nfunction transformDuration(token, options) {\n\tconst { tokensSet, transformAlias = defaultAliasTransform } = options;\n\tif (token.aliasChain?.[0]) return transformAlias(tokensSet[token.aliasChain[0]]);\n\treturn `${token.$value.value}${token.$value.unit}`;\n}\nconst FONT_NAME_KEYWORD = /^[a-z-]+$/;\nfunction transformFontFamily(token, options) {\n\tconst { tokensSet, transformAlias = defaultAliasTransform } = options;\n\tif (token.aliasChain?.[0]) return transformAlias(tokensSet[token.aliasChain[0]]);\n\treturn token.$value.map((fontName) => FONT_NAME_KEYWORD.test(fontName) ? fontName : `\"${fontName}\"`).join(\", \");\n}\n/** Convert fontWeight value to CSS */\nfunction transformFontWeight(token, options) {\n\tconst { tokensSet, transformAlias = defaultAliasTransform } = options;\n\tif (token.aliasChain?.[0]) return transformAlias(tokensSet[token.aliasChain[0]]);\n\treturn String(token.$value);\n}\n/** Convert gradient value to CSS */\nfunction transformGradient(token, options) {\n\tconst { tokensSet, transformAlias = defaultAliasTransform } = options;\n\tif (token.aliasChain?.[0]) return transformAlias(tokensSet[token.aliasChain[0]]);\n\tlet isHDR = false;\n\tconst colors = [];\n\tconst positions = [];\n\tfor (let i = 0; i < token.$value.length; i++) {\n\t\tconst { color, position } = token.$value[i];\n\t\tconst colorValue = token.partialAliasOf?.[i]?.color ? transformAlias(tokensSet[token.partialAliasOf[i].color]) : transformColor({ $value: color }, options);\n\t\tif (typeof colorValue !== \"string\") isHDR = true;\n\t\tcolors.push(colorValue);\n\t\tpositions.push(token.partialAliasOf?.[i]?.position ? transformAlias(tokensSet[token.partialAliasOf[i].position]) : `${100 * position}%`);\n\t}\n\tfunction formatStop(i, colorKey = \".\") {\n\t\treturn `${typeof colors[i] === \"string\" ? colors[i] : colors[i][colorKey]} ${positions[i]}`;\n\t}\n\treturn !isHDR ? token.$value.map((_, i) => formatStop(i, positions[i])).join(\", \") : {\n\t\t\".\": token.$value.map((_, i) => formatStop(i, \".\")).join(\", \"),\n\t\tsrgb: token.$value.map((_, i) => formatStop(i, \"srgb\")).join(\", \"),\n\t\tp3: token.$value.map((_, i) => formatStop(i, \"p3\")).join(\", \"),\n\t\trec2020: token.$value.map((_, i) => formatStop(i, \"rec2020\")).join(\", \")\n\t};\n}\n/** Convert link value to CSS */\nfunction transformLink(token, options) {\n\tconst { tokensSet, transformAlias = defaultAliasTransform } = options;\n\tif (token.aliasChain?.[0]) return transformAlias(tokensSet[token.aliasChain[0]]);\n\treturn `url(\"${token.$value}\")`;\n}\n/** Convert number value to CSS */\nfunction transformNumber(token, options) {\n\tconst { tokensSet, transformAlias = defaultAliasTransform } = options;\n\tif (token.aliasChain?.[0]) return transformAlias(tokensSet[token.aliasChain[0]]);\n\treturn String(token.$value);\n}\n/** Convert shadow subvalue to CSS */\nfunction transformShadowLayer(value, options) {\n\tconst { tokensSet, colorValue, partialAliasOf, transformAlias = defaultAliasTransform } = options;\n\tconst offsetX = partialAliasOf?.offsetX ? transformAlias(tokensSet[partialAliasOf.offsetX]) : transformDimension({ $value: value.offsetX }, options);\n\tconst offsetY = partialAliasOf?.offsetY ? transformAlias(tokensSet[partialAliasOf.offsetY]) : transformDimension({ $value: value.offsetY }, options);\n\tconst blur = partialAliasOf?.blur ? transformAlias(tokensSet[partialAliasOf.blur]) : transformDimension({ $value: value.blur }, options);\n\tconst spread = partialAliasOf?.spread ? transformAlias(tokensSet[partialAliasOf.spread]) : transformDimension({ $value: value.spread }, options);\n\treturn [\n\t\tvalue?.inset === true ? \"inset\" : void 0,\n\t\toffsetX,\n\t\toffsetY,\n\t\tblur,\n\t\tspread,\n\t\tcolorValue\n\t].filter(Boolean).join(\" \");\n}\n/** Convert shadow value to CSS */\nfunction transformShadow(token, options) {\n\tconst { tokensSet, transformAlias = defaultAliasTransform } = options;\n\tif (token.aliasChain?.[0]) return transformAlias(tokensSet[token.aliasChain[0]]);\n\tconst colors = token.$value.map((v, i) => token.partialAliasOf?.[i]?.color ? transformAlias(tokensSet[token.partialAliasOf[i].color]) : transformColor({ $value: v.color }, options));\n\tconst isHDR = colors.some((c$1) => typeof c$1 === \"object\");\n\tconst formatShadow = (colorKey) => token.$value.map((v, i) => transformShadowLayer(v, {\n\t\ttokensSet,\n\t\tcolorValue: typeof colors[i] === \"string\" ? colors[i] : colors[i][colorKey],\n\t\tpartialAliasOf: token.partialAliasOf?.[i],\n\t\ttransformAlias\n\t})).join(\", \");\n\treturn !isHDR ? formatShadow(\".\") : {\n\t\t\".\": formatShadow(\".\"),\n\t\tsrgb: formatShadow(\"srgb\"),\n\t\tp3: formatShadow(\"p3\"),\n\t\trec2020: formatShadow(\"rec2020\")\n\t};\n}\n/** Convert string value to CSS */\nfunction transformString(token, options) {\n\tconst { tokensSet, transformAlias = defaultAliasTransform } = options;\n\tif (token.aliasChain?.[0]) return transformAlias(tokensSet[token.aliasChain[0]]);\n\treturn String(token.$value);\n}\n/** Convert transition value to shorthand */\nfunction transformTransition(token, options) {\n\tconst { tokensSet, transformAlias = defaultAliasTransform } = options;\n\tif (token.aliasChain?.[0]) return transformAlias(tokensSet[token.aliasChain[0]]);\n\tconst duration = token.partialAliasOf?.duration ? transformAlias(tokensSet[token.partialAliasOf.duration]) : transformDuration({ $value: token.$value.duration }, options);\n\tconst delay = token.partialAliasOf?.delay ? transformAlias(tokensSet[token.partialAliasOf.delay]) : transformDuration({ $value: token.$value.delay }, options);\n\tconst timingFunction = token.partialAliasOf?.timingFunction ? transformAlias(tokensSet[token.partialAliasOf.timingFunction]) : transformCubicBezier({ $value: token.$value.timingFunction }, options);\n\treturn `${duration} ${delay} ${timingFunction}`;\n}\n/** Convert typography value to multiple CSS values */\nfunction transformTypography(token, options) {\n\tconst { tokensSet, transformAlias = defaultAliasTransform } = options;\n\tconst output = {};\n\tfor (const [property, subvalue] of Object.entries(token.$value)) {\n\t\tlet transformedValue;\n\t\tconst aliasedID = token.aliasChain?.[0] ?? token.partialAliasOf?.[property];\n\t\tif (aliasedID) {\n\t\t\tconst resolvedToken = tokensSet[aliasedID];\n\t\t\ttransformedValue = transformAlias(resolvedToken.$type === \"typography\" ? { id: `${aliasedID}-${property}` } : resolvedToken);\n\t\t} else switch (property) {\n\t\t\tcase \"fontFamily\":\n\t\t\t\ttransformedValue = transformFontFamily({ $value: subvalue }, options);\n\t\t\t\tbreak;\n\t\t\tcase \"fontSize\":\n\t\t\tcase \"letterSpacing\":\n\t\t\t\ttransformedValue = transformDimension({ $value: subvalue }, options);\n\t\t\t\tbreak;\n\t\t\tcase \"fontWeight\":\n\t\t\t\ttransformedValue = transformFontWeight({ $value: subvalue }, options);\n\t\t\t\tbreak;\n\t\t\tcase \"lineHeight\":\n\t\t\t\tif (typeof subvalue === \"number\") transformedValue = transformNumber({ $value: subvalue }, options);\n\t\t\t\telse transformedValue = transformDimension({ $value: subvalue }, options);\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\ttransformedValue = transformString({ $value: subvalue }, options);\n\t\t\t\tbreak;\n\t\t}\n\t\toutput[kebabCase(property)] = transformedValue;\n\t}\n\treturn output;\n}\n/** Main CSS Transform */\nfunction transformCSSValue(token, { mode,...options }) {\n\tconst selectedMode = token.mode[mode];\n\tif (!selectedMode) return;\n\tconst tokenWithModeValue = {\n\t\tid: token.id,\n\t\t$type: token.$type,\n\t\t...selectedMode\n\t};\n\tswitch (tokenWithModeValue.$type) {\n\t\tcase \"boolean\": return transformBoolean(tokenWithModeValue, options);\n\t\tcase \"border\": return transformBorder(tokenWithModeValue, options);\n\t\tcase \"color\": return transformColor(tokenWithModeValue, options);\n\t\tcase \"cubicBezier\": return transformCubicBezier(tokenWithModeValue, options);\n\t\tcase \"dimension\": return transformDimension(tokenWithModeValue, options);\n\t\tcase \"duration\": return transformDuration(tokenWithModeValue, options);\n\t\tcase \"fontFamily\": return transformFontFamily(tokenWithModeValue, options);\n\t\tcase \"fontWeight\": return transformFontWeight(tokenWithModeValue, options);\n\t\tcase \"gradient\": return transformGradient(tokenWithModeValue, options);\n\t\tcase \"link\": return transformLink(tokenWithModeValue, options);\n\t\tcase \"number\": return transformNumber(tokenWithModeValue, options);\n\t\tcase \"shadow\": return transformShadow(tokenWithModeValue, options);\n\t\tcase \"string\": return transformString(tokenWithModeValue, options);\n\t\tcase \"strokeStyle\": return transformStrokeStyle(tokenWithModeValue, options);\n\t\tcase \"transition\": return transformTransition(tokenWithModeValue, options);\n\t\tcase \"typography\": return transformTypography(tokenWithModeValue, options);\n\t}\n}\n\n//#endregion\n//#region src/lib.ts\nconst FORMAT_ID = \"css\";\nconst FILE_PREFIX = `/* -------------------------------------------\n * Autogenerated by ⛋ Terrazzo. DO NOT EDIT!\n * ------------------------------------------- */`;\n/** Convert CSSRules into a formatted, indented CSS string */\nfunction printRules(rules) {\n\tconst output = [];\n\tfor (const rule of rules) {\n\t\tif (!rule.selectors.length || !Object.keys(rule.declarations).length) continue;\n\t\tconst mqSelectors = [];\n\t\tconst joinableSelectors = [];\n\t\tfor (const s of rule.selectors) (s.startsWith(\"@\") ? mqSelectors : joinableSelectors).push(s);\n\t\tfor (const s of mqSelectors) output.push(_printRule({\n\t\t\t...rule,\n\t\t\tselectors: [s]\n\t\t}));\n\t\tif (joinableSelectors.length) output.push(_printRule({\n\t\t\t...rule,\n\t\t\tselectors: joinableSelectors\n\t\t}));\n\t}\n\treturn output.join(\"\\n\\n\");\n}\nfunction _printRule(rule) {\n\tconst output = [];\n\tconst isMediaQuery = rule.selectors.some((s) => s.startsWith(\"@\"));\n\tlet indent = \"\";\n\tif (rule.nestedQuery && isMediaQuery) {\n\t\toutput.push(`${indent}${rule.selectors.join(`,\\n${indent}`)} {`);\n\t\tindent += \" \";\n\t\toutput.push(`${indent}${rule.nestedQuery} {`);\n\t} else if (rule.nestedQuery && !isMediaQuery) {\n\t\toutput.push(`${indent}${rule.nestedQuery} {`);\n\t\tindent += \" \";\n\t\toutput.push(`${indent}${rule.selectors.join(`,\\n${indent}`)} {`);\n\t} else output.push(`${indent}${rule.selectors.join(`,\\n${indent}`)} {`);\n\tindent += \" \";\n\tif (isMediaQuery) {\n\t\toutput.push(`${indent}:root {`);\n\t\tindent += \" \";\n\t}\n\tconst declarations = Object.entries(rule.declarations);\n\tdeclarations.sort((a, b) => a[0].localeCompare(b[0], \"en-us\", { numeric: true }));\n\tfor (const [k$3, d] of declarations) output.push(`${indent}${k$3}: ${d.value};${d.description ? ` /* ${d.description} */` : \"\"}`);\n\twhile (indent !== \"\") {\n\t\tindent = indent.substring(0, indent.length - 2);\n\t\toutput.push(`${indent}}`);\n\t}\n\treturn output.join(\"\\n\");\n}\n\n//#endregion\n//#region src/build/utility-css.ts\nconst GROUP_REGEX = {\n\tbg: /(^bg-|-bg-)/,\n\tborder: /(^border-|-border-)/,\n\tfont: /(^font-|-font-)/,\n\tgap: /(^gap-|-gap-)/,\n\tm: /(^margin-|-margin-|)/,\n\tp: /(^padding-|-padding-|)/,\n\tshadow: /(^shadow-|-shadow-)/,\n\ttext: /(^text-|-text-)/\n};\n/** Make CSS class name from transformed token */\nfunction makeSelector(token, prefix, subgroup) {\n\treturn `.${prefix}${subgroup || \"\"}-${kebabCase(token.token.id).replace(GROUP_REGEX[prefix], \"\")}`;\n}\nfunction makeVarValue(token) {\n\treturn { value: makeCSSVar(token.localID ?? token.token.id, { wrapVar: true }) };\n}\nfunction generateUtilityCSS(groups, tokens) {\n\tconst output = [];\n\tconst groupEntries = Object.entries(groups);\n\tgroupEntries.sort((a, b) => a[0].localeCompare(b[0]));\n\tfor (const [group, selectors] of groupEntries) {\n\t\tconst selectorMatcher = wildcardMatch(selectors);\n\t\tconst matchingTokens = tokens.filter((token) => selectorMatcher(token.token.id));\n\t\tif (!matchingTokens.length) {\n\t\t\tconsole.warn(`[@terrazzo/plugin-css] utility group \"${group}\" matched 0 tokens: ${JSON.stringify(selectors)}`);\n\t\t\tbreak;\n\t\t}\n\t\tswitch (group) {\n\t\t\tcase \"bg\":\n\t\t\t\tfor (const token of matchingTokens) {\n\t\t\t\t\tconst selector = makeSelector(token, \"bg\");\n\t\t\t\t\tswitch (token.token.$type) {\n\t\t\t\t\t\tcase \"color\":\n\t\t\t\t\t\t\toutput.push({\n\t\t\t\t\t\t\t\tselectors: [selector],\n\t\t\t\t\t\t\t\tdeclarations: { \"background-color\": makeVarValue(token) }\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase \"gradient\": output.push({\n\t\t\t\t\t\t\tselectors: [selector],\n\t\t\t\t\t\t\tdeclarations: { \"background-image\": { value: `linear-gradient(${makeCSSVar(token.localID ?? token.token.id, { wrapVar: true })})` } }\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\tcase \"border\":\n\t\t\t\tfor (const token of matchingTokens) {\n\t\t\t\t\tconst property = {\n\t\t\t\t\t\tborder: \"border\",\n\t\t\t\t\t\tcolor: \"border-color\",\n\t\t\t\t\t\tdimension: \"border-width\",\n\t\t\t\t\t\tstrokeStyle: \"border-style\"\n\t\t\t\t\t}[token.token.$type];\n\t\t\t\t\tif (property) output.push({\n\t\t\t\t\t\tselectors: [makeSelector(token, \"border\")],\n\t\t\t\t\t\tdeclarations: { [property]: makeVarValue(token) }\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\tfor (const token of matchingTokens) for (const side of [\n\t\t\t\t\t\"top\",\n\t\t\t\t\t\"right\",\n\t\t\t\t\t\"bottom\",\n\t\t\t\t\t\"left\"\n\t\t\t\t]) {\n\t\t\t\t\tconst property = {\n\t\t\t\t\t\tborder: `border-${side}`,\n\t\t\t\t\t\tcolor: `border-${side}-color`,\n\t\t\t\t\t\tdimension: `border-${side}-width`,\n\t\t\t\t\t\tstrokeStyle: `border-${side}-style`\n\t\t\t\t\t}[token.token.$type];\n\t\t\t\t\tif (property) output.push({\n\t\t\t\t\t\tselectors: [makeSelector(token, \"border\", `-${side}`)],\n\t\t\t\t\t\tdeclarations: { [property]: makeVarValue(token) }\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\tcase \"font\":\n\t\t\t\tfor (const token of matchingTokens) {\n\t\t\t\t\tconst selector = makeSelector(token, \"font\");\n\t\t\t\t\tif (token.token.$type === \"typography\" && token.type === \"MULTI_VALUE\") {\n\t\t\t\t\t\tconst declarations = {};\n\t\t\t\t\t\tfor (const k$3 of Object.keys(token.value)) declarations[k$3] = { value: makeCSSVar(`${token.localID ?? token.token.id}-${k$3}`, { wrapVar: true }) };\n\t\t\t\t\t\toutput.push({\n\t\t\t\t\t\t\tselectors: [selector],\n\t\t\t\t\t\t\tdeclarations\n\t\t\t\t\t\t});\n\t\t\t\t\t} else {\n\t\t\t\t\t\tconst property = {\n\t\t\t\t\t\t\tdimension: \"font-size\",\n\t\t\t\t\t\t\tfontFamily: \"font-family\",\n\t\t\t\t\t\t\tfontWeight: \"font-weight\"\n\t\t\t\t\t\t}[token.token.$type];\n\t\t\t\t\t\tif (property) output.push({\n\t\t\t\t\t\t\tselectors: [selector],\n\t\t\t\t\t\t\tdeclarations: { [property]: makeVarValue(token) }\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\tcase \"layout\": {\n\t\t\t\tconst filteredTokens = matchingTokens.filter((t) => t.token.$type === \"dimension\");\n\t\t\t\tfor (const token of filteredTokens) output.push({\n\t\t\t\t\tselectors: [makeSelector(token, \"gap\")],\n\t\t\t\t\tdeclarations: { gap: makeVarValue(token) }\n\t\t\t\t});\n\t\t\t\tfor (const token of filteredTokens) output.push({\n\t\t\t\t\tselectors: [makeSelector(token, \"gap\", \"-col\")],\n\t\t\t\t\tdeclarations: { \"column-gap\": makeVarValue(token) }\n\t\t\t\t});\n\t\t\t\tfor (const token of filteredTokens) output.push({\n\t\t\t\t\tselectors: [makeSelector(token, \"gap\", \"-row\")],\n\t\t\t\t\tdeclarations: { \"row-gap\": makeVarValue(token) }\n\t\t\t\t});\n\t\t\t\tfor (const prefix of [\"m\", \"p\"]) {\n\t\t\t\t\tconst property = prefix === \"m\" ? \"margin\" : \"padding\";\n\t\t\t\t\tfor (const token of filteredTokens) output.push({\n\t\t\t\t\t\tselectors: [makeSelector(token, prefix, \"a\")],\n\t\t\t\t\t\tdeclarations: { [property]: makeVarValue(token) }\n\t\t\t\t\t});\n\t\t\t\t\tfor (const token of filteredTokens) {\n\t\t\t\t\t\tconst value = makeVarValue(token);\n\t\t\t\t\t\toutput.push({\n\t\t\t\t\t\t\tselectors: [makeSelector(token, prefix, \"x\")],\n\t\t\t\t\t\t\tdeclarations: {\n\t\t\t\t\t\t\t\t[`${property}-left`]: value,\n\t\t\t\t\t\t\t\t[`${property}-right`]: value\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}, {\n\t\t\t\t\t\t\tselectors: [makeSelector(token, prefix, \"y\")],\n\t\t\t\t\t\t\tdeclarations: {\n\t\t\t\t\t\t\t\t[`${property}-bottom`]: value,\n\t\t\t\t\t\t\t\t[`${property}-top`]: value\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t\tfor (const side of [\n\t\t\t\t\t\t\"top\",\n\t\t\t\t\t\t\"right\",\n\t\t\t\t\t\t\"bottom\",\n\t\t\t\t\t\t\"left\"\n\t\t\t\t\t]) for (const token of filteredTokens) output.push({\n\t\t\t\t\t\tselectors: [makeSelector(token, prefix, side[0])],\n\t\t\t\t\t\tdeclarations: { [`${property}-${side}`]: makeVarValue(token) }\n\t\t\t\t\t});\n\t\t\t\t\tfor (const token of filteredTokens) {\n\t\t\t\t\t\tconst value = makeVarValue(token);\n\t\t\t\t\t\toutput.push({\n\t\t\t\t\t\t\tselectors: [makeSelector(token, prefix, \"s\")],\n\t\t\t\t\t\t\tdeclarations: { [`${property}-inline-start`]: value }\n\t\t\t\t\t\t}, {\n\t\t\t\t\t\t\tselectors: [makeSelector(token, prefix, \"e\")],\n\t\t\t\t\t\t\tdeclarations: { [`${property}-inline-end`]: value }\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase \"shadow\":\n\t\t\t\tfor (const token of matchingTokens) if (token.token.$type === \"shadow\") output.push({\n\t\t\t\t\tselectors: [makeSelector(token, \"shadow\")],\n\t\t\t\t\tdeclarations: { \"box-shadow\": makeVarValue(token) }\n\t\t\t\t});\n\t\t\t\tbreak;\n\t\t\tcase \"text\":\n\t\t\t\tfor (const token of matchingTokens) {\n\t\t\t\t\tconst selector = makeSelector(token, \"text\");\n\t\t\t\t\tconst value = makeVarValue(token);\n\t\t\t\t\tswitch (token.token.$type) {\n\t\t\t\t\t\tcase \"color\":\n\t\t\t\t\t\t\toutput.push({\n\t\t\t\t\t\t\t\tselectors: [selector],\n\t\t\t\t\t\t\t\tdeclarations: { color: value }\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase \"gradient\":\n\t\t\t\t\t\t\toutput.push({\n\t\t\t\t\t\t\t\tselectors: [selector],\n\t\t\t\t\t\t\t\tdeclarations: {\n\t\t\t\t\t\t\t\t\tbackground: { value: `-webkit-linear-gradient(${value.value})` },\n\t\t\t\t\t\t\t\t\t\"-webkit-background-clip\": { value: \"text\" },\n\t\t\t\t\t\t\t\t\t\"-webkit-text-fill-color\": { value: \"transparent\" }\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tconsole.warn(`[@terrazzo/plugin-css] unknown utility CSS group \"${group}\", ignoring`);\n\t\t\t\tbreak;\n\t\t}\n\t}\n\treturn output;\n}\n\n//#endregion\n//#region src/build/index.ts\nconst P3_MQ = \"@media (color-gamut: p3)\";\nconst REC2020_MQ = \"@media (color-gamut: rec2020)\";\nfunction buildFormat({ getTransforms, exclude, utility, modeSelectors, baseSelector, baseScheme }) {\n\tconst rules = [];\n\tconst rootTokens = getTransforms({\n\t\tformat: FORMAT_ID,\n\t\tmode: \".\"\n\t});\n\tif (rootTokens.length) {\n\t\tconst rootRule = {\n\t\t\tselectors: [baseSelector],\n\t\t\tdeclarations: {}\n\t\t};\n\t\tconst p3Rule = {\n\t\t\tselectors: [baseSelector],\n\t\t\tnestedQuery: P3_MQ,\n\t\t\tdeclarations: {}\n\t\t};\n\t\tconst rec2020Rule = {\n\t\t\tselectors: [baseSelector],\n\t\t\tnestedQuery: REC2020_MQ,\n\t\t\tdeclarations: {}\n\t\t};\n\t\trules.push(rootRule, p3Rule, rec2020Rule);\n\t\tconst shouldExclude = wildcardMatch(exclude ?? []);\n\t\tif (baseScheme) rootRule.declarations[\"color-scheme\"] = { value: baseScheme };\n\t\tfor (const token of rootTokens) {\n\t\t\tif (shouldExclude(token.token.id)) continue;\n\t\t\tconst localID = token.localID ?? token.token.id;\n\t\t\tconst aliasTokens = token.token.aliasedBy?.length ? getTransforms({\n\t\t\t\tformat: FORMAT_ID,\n\t\t\t\tid: token.token.aliasedBy\n\t\t\t}) : [];\n\t\t\tif (token.type === \"SINGLE_VALUE\") rootRule.declarations[localID] = {\n\t\t\t\tvalue: token.value,\n\t\t\t\tdescription: token.token.$description\n\t\t\t};\n\t\t\telse if (token.value.srgb && token.value.p3 && token.value.rec2020) {\n\t\t\t\trootRule.declarations[localID] = {\n\t\t\t\t\tvalue: token.value.srgb,\n\t\t\t\t\tdescription: token.token.$description\n\t\t\t\t};\n\t\t\t\tif (token.value.p3 !== token.value.srgb) {\n\t\t\t\t\tp3Rule.declarations[localID] = {\n\t\t\t\t\t\tvalue: token.value.p3,\n\t\t\t\t\t\tdescription: token.token.$description\n\t\t\t\t\t};\n\t\t\t\t\trec2020Rule.declarations[localID] = {\n\t\t\t\t\t\tvalue: token.value.rec2020,\n\t\t\t\t\t\tdescription: token.token.$description\n\t\t\t\t\t};\n\t\t\t\t\tfor (const alias of aliasTokens) if (alias.localID && typeof alias.value === \"string\") {\n\t\t\t\t\t\tp3Rule.declarations[alias.localID] ??= {\n\t\t\t\t\t\t\tvalue: alias.value,\n\t\t\t\t\t\t\tdescription: token.token.$description\n\t\t\t\t\t\t};\n\t\t\t\t\t\trec2020Rule.declarations[alias.localID] ??= {\n\t\t\t\t\t\t\tvalue: alias.value,\n\t\t\t\t\t\t\tdescription: token.token.$description\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (token.type === \"MULTI_VALUE\") {\n\t\t\t\tconst shorthand = generateShorthand({\n\t\t\t\t\t$type: token.token.$type,\n\t\t\t\t\tlocalID\n\t\t\t\t});\n\t\t\t\tif (shorthand) rootRule.declarations[token.localID ?? token.token.id] = {\n\t\t\t\t\tvalue: shorthand,\n\t\t\t\t\tdescription: token.token.$description\n\t\t\t\t};\n\t\t\t\tfor (const [name, value] of Object.entries(token.value)) rootRule.declarations[name === \".\" ? localID : [localID, name].join(\"-\")] = {\n\t\t\t\t\tvalue,\n\t\t\t\t\tdescription: token.token.$description\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\t}\n\tfor (const { selectors, tokens, mode, scheme } of modeSelectors ?? []) {\n\t\tif (!selectors.length) continue;\n\t\tconst selectorTokens = getTransforms({\n\t\t\tformat: FORMAT_ID,\n\t\t\tid: tokens,\n\t\t\tmode\n\t\t});\n\t\tif (!selectorTokens.length) continue;\n\t\tconst selectorRule = {\n\t\t\tselectors,\n\t\t\tdeclarations: {}\n\t\t};\n\t\tconst selectorP3Rule = {\n\t\t\tselectors,\n\t\t\tnestedQuery: P3_MQ,\n\t\t\tdeclarations: {}\n\t\t};\n\t\tconst selectorRec2020Rule = {\n\t\t\tselectors,\n\t\t\tnestedQuery: REC2020_MQ,\n\t\t\tdeclarations: {}\n\t\t};\n\t\tconst selectorAliasDeclarations = {};\n\t\trules.push(selectorRule, selectorP3Rule, selectorRec2020Rule);\n\t\tif (scheme) selectorRule.declarations[\"color-scheme\"] = { value: scheme };\n\t\tfor (const token of selectorTokens) {\n\t\t\tconst localID = token.localID ?? token.token.id;\n\t\t\tconst aliasTokens = token.token.aliasedBy?.length ? getTransforms({\n\t\t\t\tformat: FORMAT_ID,\n\t\t\t\tid: token.token.aliasedBy\n\t\t\t}) : [];\n\t\t\tif (token.type === \"SINGLE_VALUE\") selectorRule.declarations[localID] = {\n\t\t\t\tvalue: token.value,\n\t\t\t\tdescription: token.token.$description\n\t\t\t};\n\t\t\telse if (token.value.srgb && token.value.p3 && token.value.rec2020) {\n\t\t\t\tselectorRule.declarations[localID] = {\n\t\t\t\t\tvalue: token.value.srgb,\n\t\t\t\t\tdescription: token.token.$description\n\t\t\t\t};\n\t\t\t\tif (token.value.p3 !== token.value.srgb) {\n\t\t\t\t\tselectorP3Rule.declarations[localID] = {\n\t\t\t\t\t\tvalue: token.value.p3,\n\t\t\t\t\t\tdescription: token.token.$description\n\t\t\t\t\t};\n\t\t\t\t\tselectorRec2020Rule.declarations[localID] = {\n\t\t\t\t\t\tvalue: token.value.rec2020,\n\t\t\t\t\t\tdescription: token.token.$description\n\t\t\t\t\t};\n\t\t\t\t\tfor (const alias of aliasTokens) if (alias.localID && typeof alias.value === \"string\") {\n\t\t\t\t\t\tselectorP3Rule.declarations[alias.localID] ??= {\n\t\t\t\t\t\t\tvalue: alias.value,\n\t\t\t\t\t\t\tdescription: token.token.$description\n\t\t\t\t\t\t};\n\t\t\t\t\t\tselectorRec2020Rule.declarations[alias.localID] ??= {\n\t\t\t\t\t\t\tvalue: alias.value,\n\t\t\t\t\t\t\tdescription: token.token.$description\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tconst shorthand = generateShorthand({\n\t\t\t\t\t$type: token.token.$type,\n\t\t\t\t\tlocalID\n\t\t\t\t});\n\t\t\t\tif (shorthand) selectorRule.declarations[localID] = {\n\t\t\t\t\tvalue: shorthand,\n\t\t\t\t\tdescription: token.token.$description\n\t\t\t\t};\n\t\t\t\tfor (const [name, subvalue] of Object.entries(token.value)) selectorRule.declarations[`${localID}-${name}`] = {\n\t\t\t\t\tvalue: subvalue,\n\t\t\t\t\tdescription: token.token.$description\n\t\t\t\t};\n\t\t\t}\n\t\t\tfor (const alias of aliasTokens) if (alias.localID && typeof alias.value === \"string\") selectorAliasDeclarations[alias.localID] = {\n\t\t\t\tvalue: alias.value,\n\t\t\t\tdescription: token.token.$description\n\t\t\t};\n\t\t}\n\t\tfor (const [name, { value, description }] of Object.entries(selectorAliasDeclarations)) selectorRule.declarations[name] ??= {\n\t\t\tvalue,\n\t\t\tdescription\n\t\t};\n\t}\n\tif (utility && Object.keys(utility).length) rules.push(...generateUtilityCSS(utility, getTransforms({\n\t\tformat: FORMAT_ID,\n\t\tmode: \".\"\n\t})));\n\treturn printRules(rules);\n}\n\n//#endregion\n//#region src/index.ts\nfunction cssPlugin(options) {\n\tconst { exclude, variableName, modeSelectors, transform: customTransform, utility, legacyHex, skipBuild, baseScheme } = options ?? {};\n\tconst filename = options?.filename ?? options?.fileName ?? \"index.css\";\n\tconst baseSelector = options?.baseSelector ?? \":root\";\n\tfunction transformName(token) {\n\t\tconst customName = variableName?.(token);\n\t\tif (customName !== void 0) {\n\t\t\tif (typeof customName !== \"string\") throw new Error(`variableName() must return a string; received ${customName}`);\n\t\t\treturn customName;\n\t\t}\n\t\treturn makeCSSVar(token.id);\n\t}\n\tconst transformAlias = (token) => `var(${transformName(token)})`;\n\treturn {\n\t\tname: \"@terrazzo/plugin-css\",\n\t\tasync transform({ tokens, getTransforms, setTransform }) {\n\t\t\tif (getTransforms({\n\t\t\t\tformat: FORMAT_ID,\n\t\t\t\tid: \"*\",\n\t\t\t\tmode: \"*\"\n\t\t\t}).length) return;\n\t\t\tfor (const [id, token] of Object.entries(tokens)) {\n\t\t\t\tconst localID = transformName(token);\n\t\t\t\tfor (const mode of Object.keys(token.mode)) {\n\t\t\t\t\tif (customTransform) {\n\t\t\t\t\t\tconst value = customTransform(token, mode);\n\t\t\t\t\t\tif (value !== void 0 && value !== null) {\n\t\t\t\t\t\t\tvalidateCustomTransform(value, { $type: token.$type });\n\t\t\t\t\t\t\tsetTransform(id, {\n\t\t\t\t\t\t\t\tformat: FORMAT_ID,\n\t\t\t\t\t\t\t\tlocalID,\n\t\t\t\t\t\t\t\tvalue,\n\t\t\t\t\t\t\t\tmode,\n\t\t\t\t\t\t\t\tmeta: { \"token-listing\": { name: localID } }\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\tcontinue;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tconst transformedValue = transformCSSValue(token, {\n\t\t\t\t\t\tmode,\n\t\t\t\t\t\ttokensSet: tokens,\n\t\t\t\t\t\ttransformAlias,\n\t\t\t\t\t\tcolor: { legacyHex }\n\t\t\t\t\t});\n\t\t\t\t\tif (transformedValue !== void 0) {\n\t\t\t\t\t\tlet listingName = localID;\n\t\t\t\t\t\tif (typeof transformedValue === \"object\" && generateShorthand({\n\t\t\t\t\t\t\t$type: token.$type,\n\t\t\t\t\t\t\tlocalID\n\t\t\t\t\t\t}) === void 0) listingName = void 0;\n\t\t\t\t\t\tsetTransform(id, {\n\t\t\t\t\t\t\tformat: FORMAT_ID,\n\t\t\t\t\t\t\tlocalID,\n\t\t\t\t\t\t\tvalue: transformedValue,\n\t\t\t\t\t\t\tmode,\n\t\t\t\t\t\t\tmeta: { \"token-listing\": { name: listingName } }\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\tasync build({ getTransforms, outputFile }) {\n\t\t\tif (skipBuild === true) return;\n\t\t\tconst output = [FILE_PREFIX, \"\"];\n\t\t\toutput.push(buildFormat({\n\t\t\t\texclude,\n\t\t\t\tgetTransforms,\n\t\t\t\tmodeSelectors,\n\t\t\t\tutility,\n\t\t\t\tbaseSelector,\n\t\t\t\tbaseScheme\n\t\t\t}), \"\\n\");\n\t\t\toutputFile(filename, output.join(\"\\n\"));\n\t\t}\n\t};\n}\n\n//#endregion\nexport { FILE_PREFIX, FORMAT_ID, cssPlugin as default, printRules };\n//# sourceMappingURL=index.js.map","export interface TailwindPluginOptions {\n /**\n * Filename to output.\n * @default \"tailwind-theme.css\"\n */\n filename?: string;\n /** @see https://tailwindcss.com/docs/theme */\n theme: Record<string, any>;\n /** Array of mapping variants to DTCG modes. */\n modeVariants?: { variant: string; mode: string }[];\n}\n\n/** Flatten an arbitrarily-nested object */\nexport function flattenThemeObj(themeObj: Record<string, unknown>): { path: string[]; value: string | string[] }[] {\n const result: { path: string[]; value: string | string[] }[] = [];\n\n function traverse(obj: Record<string, unknown>, path: string[]) {\n for (const [key, value] of Object.entries(obj)) {\n const newPath = [...path, key];\n if (typeof value === 'string' || Array.isArray(value)) {\n if (Array.isArray(value) && (value.length === 0 || value.some((v) => typeof v !== 'string'))) {\n throw new Error(\n `Invalid value at path \"${newPath.join('.')}\": expected a string or an array of strings, but got ${JSON.stringify(value)}`,\n );\n }\n result.push({ path: newPath, value });\n } else if (typeof value === 'object' && value !== null) {\n traverse(value as Record<string, unknown>, newPath);\n }\n }\n }\n\n traverse(themeObj, []);\n return result;\n}\n","import type { Plugin } from '@terrazzo/parser';\nimport { FORMAT_ID as FORMAT_CSS } from '@terrazzo/plugin-css';\nimport { flattenThemeObj, type TailwindPluginOptions } from './lib.js';\n\nexport const FORMAT_ID = 'tailwind';\n\nexport * from './lib.js';\n\nexport default function pluginTailwind(options: TailwindPluginOptions): Plugin {\n const filename = options?.filename ?? (options as any)?.fileName ?? 'tailwind-theme.css';\n\n return {\n name: '@terrazzo/plugin-tailwind',\n enforce: 'post', // ensure this comes after @terrazzo/plugin-css\n config(config) {\n if (!config.plugins.some((p) => p.name === '@terrazzo/plugin-css')) {\n throw new Error(\n '@terrazzo/plugin-css missing! Please install and add to the plugins array to use the Tailwind plugin.',\n );\n }\n\n if (!options || !options.theme) {\n throw new Error('Missing Tailwind `theme` option.');\n }\n },\n async transform({ getTransforms, setTransform }) {\n const variants = [{ variant: '.', mode: '.' }, ...(options?.modeVariants ?? [])];\n for (const { variant, mode } of variants) {\n const flatTheme = flattenThemeObj(options.theme);\n for (const { path, value } of flatTheme) {\n const tokens = getTransforms({\n format: FORMAT_CSS,\n id: value,\n mode,\n });\n for (const token of tokens) {\n let relName = token.id.split('.').at(-1)!;\n for (const subgroup of [...(Array.isArray(value) ? value : [value])]) {\n const match = subgroup.replace(/\\*.*/, '');\n relName = token.id.replace(match, '');\n }\n setTransform(token.id, {\n format: FORMAT_ID,\n localID: `--${path.join('-')}-${relName.replace(/\\./g, '-')}`,\n value: typeof token.value === 'object' ? token.value['.']! : token.value,\n mode: variant, // ! <- not the original mode!\n });\n }\n }\n }\n },\n async build({ getTransforms, outputFile }) {\n const output = ['@import \"tailwindcss\";', ''];\n\n const variants: Record<string, string[]> = { '.': [] };\n for (const token of getTransforms({ format: FORMAT_ID })) {\n const { localID, value, mode } = token;\n if (!variants[mode]) {\n variants[mode] = [];\n }\n variants[mode].push(`${localID}: ${value};`);\n }\n for (const [variant, values] of Object.entries(variants)) {\n output.push(variant === '.' ? '@theme {' : `@variant ${variant} {`);\n for (const value of values) {\n output.push(` ${value}`);\n }\n output.push('}', '');\n }\n\n outputFile(filename, output.join('\\n'));\n },\n };\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["FORMAT_ID","result: { path: string[]; value: string | string[] }[]","p","FORMAT_CSS","variants: Record<string, string[]>"],"sources":["../../plugin-css/dist/index.js","../src/lib.ts","../src/index.ts"],"sourcesContent":["//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/rgb/parseNumber.js\nconst parseNumber = (color, len) => {\n\tif (typeof color !== \"number\") return;\n\tif (len === 3) return {\n\t\tmode: \"rgb\",\n\t\tr: (color >> 8 & 15 | color >> 4 & 240) / 255,\n\t\tg: (color >> 4 & 15 | color & 240) / 255,\n\t\tb: (color & 15 | color << 4 & 240) / 255\n\t};\n\tif (len === 4) return {\n\t\tmode: \"rgb\",\n\t\tr: (color >> 12 & 15 | color >> 8 & 240) / 255,\n\t\tg: (color >> 8 & 15 | color >> 4 & 240) / 255,\n\t\tb: (color >> 4 & 15 | color & 240) / 255,\n\t\talpha: (color & 15 | color << 4 & 240) / 255\n\t};\n\tif (len === 6) return {\n\t\tmode: \"rgb\",\n\t\tr: (color >> 16 & 255) / 255,\n\t\tg: (color >> 8 & 255) / 255,\n\t\tb: (color & 255) / 255\n\t};\n\tif (len === 8) return {\n\t\tmode: \"rgb\",\n\t\tr: (color >> 24 & 255) / 255,\n\t\tg: (color >> 16 & 255) / 255,\n\t\tb: (color >> 8 & 255) / 255,\n\t\talpha: (color & 255) / 255\n\t};\n};\nvar parseNumber_default = parseNumber;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/colors/named.js\nconst named = {\n\taliceblue: 15792383,\n\tantiquewhite: 16444375,\n\taqua: 65535,\n\taquamarine: 8388564,\n\tazure: 15794175,\n\tbeige: 16119260,\n\tbisque: 16770244,\n\tblack: 0,\n\tblanchedalmond: 16772045,\n\tblue: 255,\n\tblueviolet: 9055202,\n\tbrown: 10824234,\n\tburlywood: 14596231,\n\tcadetblue: 6266528,\n\tchartreuse: 8388352,\n\tchocolate: 13789470,\n\tcoral: 16744272,\n\tcornflowerblue: 6591981,\n\tcornsilk: 16775388,\n\tcrimson: 14423100,\n\tcyan: 65535,\n\tdarkblue: 139,\n\tdarkcyan: 35723,\n\tdarkgoldenrod: 12092939,\n\tdarkgray: 11119017,\n\tdarkgreen: 25600,\n\tdarkgrey: 11119017,\n\tdarkkhaki: 12433259,\n\tdarkmagenta: 9109643,\n\tdarkolivegreen: 5597999,\n\tdarkorange: 16747520,\n\tdarkorchid: 10040012,\n\tdarkred: 9109504,\n\tdarksalmon: 15308410,\n\tdarkseagreen: 9419919,\n\tdarkslateblue: 4734347,\n\tdarkslategray: 3100495,\n\tdarkslategrey: 3100495,\n\tdarkturquoise: 52945,\n\tdarkviolet: 9699539,\n\tdeeppink: 16716947,\n\tdeepskyblue: 49151,\n\tdimgray: 6908265,\n\tdimgrey: 6908265,\n\tdodgerblue: 2003199,\n\tfirebrick: 11674146,\n\tfloralwhite: 16775920,\n\tforestgreen: 2263842,\n\tfuchsia: 16711935,\n\tgainsboro: 14474460,\n\tghostwhite: 16316671,\n\tgold: 16766720,\n\tgoldenrod: 14329120,\n\tgray: 8421504,\n\tgreen: 32768,\n\tgreenyellow: 11403055,\n\tgrey: 8421504,\n\thoneydew: 15794160,\n\thotpink: 16738740,\n\tindianred: 13458524,\n\tindigo: 4915330,\n\tivory: 16777200,\n\tkhaki: 15787660,\n\tlavender: 15132410,\n\tlavenderblush: 16773365,\n\tlawngreen: 8190976,\n\tlemonchiffon: 16775885,\n\tlightblue: 11393254,\n\tlightcoral: 15761536,\n\tlightcyan: 14745599,\n\tlightgoldenrodyellow: 16448210,\n\tlightgray: 13882323,\n\tlightgreen: 9498256,\n\tlightgrey: 13882323,\n\tlightpink: 16758465,\n\tlightsalmon: 16752762,\n\tlightseagreen: 2142890,\n\tlightskyblue: 8900346,\n\tlightslategray: 7833753,\n\tlightslategrey: 7833753,\n\tlightsteelblue: 11584734,\n\tlightyellow: 16777184,\n\tlime: 65280,\n\tlimegreen: 3329330,\n\tlinen: 16445670,\n\tmagenta: 16711935,\n\tmaroon: 8388608,\n\tmediumaquamarine: 6737322,\n\tmediumblue: 205,\n\tmediumorchid: 12211667,\n\tmediumpurple: 9662683,\n\tmediumseagreen: 3978097,\n\tmediumslateblue: 8087790,\n\tmediumspringgreen: 64154,\n\tmediumturquoise: 4772300,\n\tmediumvioletred: 13047173,\n\tmidnightblue: 1644912,\n\tmintcream: 16121850,\n\tmistyrose: 16770273,\n\tmoccasin: 16770229,\n\tnavajowhite: 16768685,\n\tnavy: 128,\n\toldlace: 16643558,\n\tolive: 8421376,\n\tolivedrab: 7048739,\n\torange: 16753920,\n\torangered: 16729344,\n\torchid: 14315734,\n\tpalegoldenrod: 15657130,\n\tpalegreen: 10025880,\n\tpaleturquoise: 11529966,\n\tpalevioletred: 14381203,\n\tpapayawhip: 16773077,\n\tpeachpuff: 16767673,\n\tperu: 13468991,\n\tpink: 16761035,\n\tplum: 14524637,\n\tpowderblue: 11591910,\n\tpurple: 8388736,\n\trebeccapurple: 6697881,\n\tred: 16711680,\n\trosybrown: 12357519,\n\troyalblue: 4286945,\n\tsaddlebrown: 9127187,\n\tsalmon: 16416882,\n\tsandybrown: 16032864,\n\tseagreen: 3050327,\n\tseashell: 16774638,\n\tsienna: 10506797,\n\tsilver: 12632256,\n\tskyblue: 8900331,\n\tslateblue: 6970061,\n\tslategray: 7372944,\n\tslategrey: 7372944,\n\tsnow: 16775930,\n\tspringgreen: 65407,\n\tsteelblue: 4620980,\n\ttan: 13808780,\n\tteal: 32896,\n\tthistle: 14204888,\n\ttomato: 16737095,\n\tturquoise: 4251856,\n\tviolet: 15631086,\n\twheat: 16113331,\n\twhite: 16777215,\n\twhitesmoke: 16119285,\n\tyellow: 16776960,\n\tyellowgreen: 10145074\n};\nvar named_default = named;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/rgb/parseNamed.js\nconst parseNamed = (color) => {\n\treturn parseNumber_default(named_default[color.toLowerCase()], 6);\n};\nvar parseNamed_default = parseNamed;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/rgb/parseHex.js\nconst hex = /^#?([0-9a-f]{8}|[0-9a-f]{6}|[0-9a-f]{4}|[0-9a-f]{3})$/i;\nconst parseHex = (color) => {\n\tlet match;\n\treturn (match = color.match(hex)) ? parseNumber_default(parseInt(match[1], 16), match[1].length) : void 0;\n};\nvar parseHex_default = parseHex;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/util/regex.js\nconst num$1 = \"([+-]?\\\\d*\\\\.?\\\\d+(?:[eE][+-]?\\\\d+)?)\";\nconst num_none = `(?:${num$1}|none)`;\nconst per = `${num$1}%`;\nconst per_none = `(?:${num$1}%|none)`;\nconst num_per = `(?:${num$1}%|${num$1})`;\nconst num_per_none = `(?:${num$1}%|${num$1}|none)`;\nconst hue$1 = `(?:${num$1}(deg|grad|rad|turn)|${num$1})`;\nconst hue_none = `(?:${num$1}(deg|grad|rad|turn)|${num$1}|none)`;\nconst c = `\\\\s*,\\\\s*`;\nconst rx_num_per_none = /* @__PURE__ */ new RegExp(\"^\" + num_per_none + \"$\");\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/rgb/parseRgbLegacy.js\nconst rgb_num_old = /* @__PURE__ */ new RegExp(`^rgba?\\\\(\\\\s*${num$1}${c}${num$1}${c}${num$1}\\\\s*(?:,\\\\s*${num_per}\\\\s*)?\\\\)$`);\nconst rgb_per_old = /* @__PURE__ */ new RegExp(`^rgba?\\\\(\\\\s*${per}${c}${per}${c}${per}\\\\s*(?:,\\\\s*${num_per}\\\\s*)?\\\\)$`);\nconst parseRgbLegacy = (color) => {\n\tlet res = { mode: \"rgb\" };\n\tlet match;\n\tif (match = color.match(rgb_num_old)) {\n\t\tif (match[1] !== void 0) res.r = match[1] / 255;\n\t\tif (match[2] !== void 0) res.g = match[2] / 255;\n\t\tif (match[3] !== void 0) res.b = match[3] / 255;\n\t} else if (match = color.match(rgb_per_old)) {\n\t\tif (match[1] !== void 0) res.r = match[1] / 100;\n\t\tif (match[2] !== void 0) res.g = match[2] / 100;\n\t\tif (match[3] !== void 0) res.b = match[3] / 100;\n\t} else return;\n\tif (match[4] !== void 0) res.alpha = Math.max(0, Math.min(1, match[4] / 100));\n\telse if (match[5] !== void 0) res.alpha = Math.max(0, Math.min(1, +match[5]));\n\treturn res;\n};\nvar parseRgbLegacy_default = parseRgbLegacy;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/_prepare.js\nconst prepare = (color, mode) => color === void 0 ? void 0 : typeof color !== \"object\" ? parse_default(color) : color.mode !== void 0 ? color : mode ? {\n\t...color,\n\tmode\n} : void 0;\nvar _prepare_default = prepare;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/converter.js\nconst converter = (target_mode = \"rgb\") => (color) => (color = _prepare_default(color, target_mode)) !== void 0 ? color.mode === target_mode ? color : converters$1[color.mode][target_mode] ? converters$1[color.mode][target_mode](color) : target_mode === \"rgb\" ? converters$1[color.mode].rgb(color) : converters$1.rgb[target_mode](converters$1[color.mode].rgb(color)) : void 0;\nvar converter_default = converter;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/modes.js\nconst converters$1 = {};\nconst modes = {};\nconst parsers = [];\nconst colorProfiles = {};\nconst identity = (v) => v;\nconst useMode = (definition$28) => {\n\tconverters$1[definition$28.mode] = {\n\t\t...converters$1[definition$28.mode],\n\t\t...definition$28.toMode\n\t};\n\tObject.keys(definition$28.fromMode || {}).forEach((k$3) => {\n\t\tif (!converters$1[k$3]) converters$1[k$3] = {};\n\t\tconverters$1[k$3][definition$28.mode] = definition$28.fromMode[k$3];\n\t});\n\tif (!definition$28.ranges) definition$28.ranges = {};\n\tif (!definition$28.difference) definition$28.difference = {};\n\tdefinition$28.channels.forEach((channel) => {\n\t\tif (definition$28.ranges[channel] === void 0) definition$28.ranges[channel] = [0, 1];\n\t\tif (!definition$28.interpolate[channel]) throw new Error(`Missing interpolator for: ${channel}`);\n\t\tif (typeof definition$28.interpolate[channel] === \"function\") definition$28.interpolate[channel] = { use: definition$28.interpolate[channel] };\n\t\tif (!definition$28.interpolate[channel].fixup) definition$28.interpolate[channel].fixup = identity;\n\t});\n\tmodes[definition$28.mode] = definition$28;\n\t(definition$28.parse || []).forEach((parser) => {\n\t\tuseParser(parser, definition$28.mode);\n\t});\n\treturn converter_default(definition$28.mode);\n};\nconst getMode = (mode) => modes[mode];\nconst useParser = (parser, mode) => {\n\tif (typeof parser === \"string\") {\n\t\tif (!mode) throw new Error(`'mode' required when 'parser' is a string`);\n\t\tcolorProfiles[parser] = mode;\n\t} else if (typeof parser === \"function\") {\n\t\tif (parsers.indexOf(parser) < 0) parsers.push(parser);\n\t}\n};\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/parse.js\nconst IdentStartCodePoint = /[^\\x00-\\x7F]|[a-zA-Z_]/;\nconst IdentCodePoint = /[^\\x00-\\x7F]|[-\\w]/;\nconst Tok = {\n\tFunction: \"function\",\n\tIdent: \"ident\",\n\tNumber: \"number\",\n\tPercentage: \"percentage\",\n\tParenClose: \")\",\n\tNone: \"none\",\n\tHue: \"hue\",\n\tAlpha: \"alpha\"\n};\nlet _i = 0;\nfunction is_num(chars) {\n\tlet ch = chars[_i];\n\tlet ch1 = chars[_i + 1];\n\tif (ch === \"-\" || ch === \"+\") return /\\d/.test(ch1) || ch1 === \".\" && /\\d/.test(chars[_i + 2]);\n\tif (ch === \".\") return /\\d/.test(ch1);\n\treturn /\\d/.test(ch);\n}\nfunction is_ident(chars) {\n\tif (_i >= chars.length) return false;\n\tlet ch = chars[_i];\n\tif (IdentStartCodePoint.test(ch)) return true;\n\tif (ch === \"-\") {\n\t\tif (chars.length - _i < 2) return false;\n\t\tlet ch1 = chars[_i + 1];\n\t\tif (ch1 === \"-\" || IdentStartCodePoint.test(ch1)) return true;\n\t\treturn false;\n\t}\n\treturn false;\n}\nconst huenits = {\n\tdeg: 1,\n\trad: 180 / Math.PI,\n\tgrad: 9 / 10,\n\tturn: 360\n};\nfunction num(chars) {\n\tlet value = \"\";\n\tif (chars[_i] === \"-\" || chars[_i] === \"+\") value += chars[_i++];\n\tvalue += digits(chars);\n\tif (chars[_i] === \".\" && /\\d/.test(chars[_i + 1])) value += chars[_i++] + digits(chars);\n\tif (chars[_i] === \"e\" || chars[_i] === \"E\") {\n\t\tif ((chars[_i + 1] === \"-\" || chars[_i + 1] === \"+\") && /\\d/.test(chars[_i + 2])) value += chars[_i++] + chars[_i++] + digits(chars);\n\t\telse if (/\\d/.test(chars[_i + 1])) value += chars[_i++] + digits(chars);\n\t}\n\tif (is_ident(chars)) {\n\t\tlet id = ident(chars);\n\t\tif (id === \"deg\" || id === \"rad\" || id === \"turn\" || id === \"grad\") return {\n\t\t\ttype: Tok.Hue,\n\t\t\tvalue: value * huenits[id]\n\t\t};\n\t\treturn;\n\t}\n\tif (chars[_i] === \"%\") {\n\t\t_i++;\n\t\treturn {\n\t\t\ttype: Tok.Percentage,\n\t\t\tvalue: +value\n\t\t};\n\t}\n\treturn {\n\t\ttype: Tok.Number,\n\t\tvalue: +value\n\t};\n}\nfunction digits(chars) {\n\tlet v = \"\";\n\twhile (/\\d/.test(chars[_i])) v += chars[_i++];\n\treturn v;\n}\nfunction ident(chars) {\n\tlet v = \"\";\n\twhile (_i < chars.length && IdentCodePoint.test(chars[_i])) v += chars[_i++];\n\treturn v;\n}\nfunction identlike(chars) {\n\tlet v = ident(chars);\n\tif (chars[_i] === \"(\") {\n\t\t_i++;\n\t\treturn {\n\t\t\ttype: Tok.Function,\n\t\t\tvalue: v\n\t\t};\n\t}\n\tif (v === \"none\") return {\n\t\ttype: Tok.None,\n\t\tvalue: void 0\n\t};\n\treturn {\n\t\ttype: Tok.Ident,\n\t\tvalue: v\n\t};\n}\nfunction tokenize(str = \"\") {\n\tlet chars = str.trim();\n\tlet tokens = [];\n\tlet ch;\n\t_i = 0;\n\twhile (_i < chars.length) {\n\t\tch = chars[_i++];\n\t\tif (ch === \"\\n\" || ch === \"\t\" || ch === \" \") {\n\t\t\twhile (_i < chars.length && (chars[_i] === \"\\n\" || chars[_i] === \"\t\" || chars[_i] === \" \")) _i++;\n\t\t\tcontinue;\n\t\t}\n\t\tif (ch === \",\") return;\n\t\tif (ch === \")\") {\n\t\t\ttokens.push({ type: Tok.ParenClose });\n\t\t\tcontinue;\n\t\t}\n\t\tif (ch === \"+\") {\n\t\t\t_i--;\n\t\t\tif (is_num(chars)) {\n\t\t\t\ttokens.push(num(chars));\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\t\tif (ch === \"-\") {\n\t\t\t_i--;\n\t\t\tif (is_num(chars)) {\n\t\t\t\ttokens.push(num(chars));\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tif (is_ident(chars)) {\n\t\t\t\ttokens.push({\n\t\t\t\t\ttype: Tok.Ident,\n\t\t\t\t\tvalue: ident(chars)\n\t\t\t\t});\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\t\tif (ch === \".\") {\n\t\t\t_i--;\n\t\t\tif (is_num(chars)) {\n\t\t\t\ttokens.push(num(chars));\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\t\tif (ch === \"/\") {\n\t\t\twhile (_i < chars.length && (chars[_i] === \"\\n\" || chars[_i] === \"\t\" || chars[_i] === \" \")) _i++;\n\t\t\tlet alpha;\n\t\t\tif (is_num(chars)) {\n\t\t\t\talpha = num(chars);\n\t\t\t\tif (alpha.type !== Tok.Hue) {\n\t\t\t\t\ttokens.push({\n\t\t\t\t\t\ttype: Tok.Alpha,\n\t\t\t\t\t\tvalue: alpha\n\t\t\t\t\t});\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (is_ident(chars)) {\n\t\t\t\tif (ident(chars) === \"none\") {\n\t\t\t\t\ttokens.push({\n\t\t\t\t\t\ttype: Tok.Alpha,\n\t\t\t\t\t\tvalue: {\n\t\t\t\t\t\t\ttype: Tok.None,\n\t\t\t\t\t\t\tvalue: void 0\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\t\tif (/\\d/.test(ch)) {\n\t\t\t_i--;\n\t\t\ttokens.push(num(chars));\n\t\t\tcontinue;\n\t\t}\n\t\tif (IdentStartCodePoint.test(ch)) {\n\t\t\t_i--;\n\t\t\ttokens.push(identlike(chars));\n\t\t\tcontinue;\n\t\t}\n\t\treturn;\n\t}\n\treturn tokens;\n}\nfunction parseColorSyntax(tokens) {\n\ttokens._i = 0;\n\tlet token = tokens[tokens._i++];\n\tif (!token || token.type !== Tok.Function || token.value !== \"color\") return;\n\ttoken = tokens[tokens._i++];\n\tif (token.type !== Tok.Ident) return;\n\tconst mode = colorProfiles[token.value];\n\tif (!mode) return;\n\tconst res = { mode };\n\tconst coords = consumeCoords(tokens, false);\n\tif (!coords) return;\n\tconst channels = getMode(mode).channels;\n\tfor (let ii = 0, c$1, ch; ii < channels.length; ii++) {\n\t\tc$1 = coords[ii];\n\t\tch = channels[ii];\n\t\tif (c$1.type !== Tok.None) {\n\t\t\tres[ch] = c$1.type === Tok.Number ? c$1.value : c$1.value / 100;\n\t\t\tif (ch === \"alpha\") res[ch] = Math.max(0, Math.min(1, res[ch]));\n\t\t}\n\t}\n\treturn res;\n}\nfunction consumeCoords(tokens, includeHue) {\n\tconst coords = [];\n\tlet token;\n\twhile (tokens._i < tokens.length) {\n\t\ttoken = tokens[tokens._i++];\n\t\tif (token.type === Tok.None || token.type === Tok.Number || token.type === Tok.Alpha || token.type === Tok.Percentage || includeHue && token.type === Tok.Hue) {\n\t\t\tcoords.push(token);\n\t\t\tcontinue;\n\t\t}\n\t\tif (token.type === Tok.ParenClose) {\n\t\t\tif (tokens._i < tokens.length) return;\n\t\t\tcontinue;\n\t\t}\n\t\treturn;\n\t}\n\tif (coords.length < 3 || coords.length > 4) return;\n\tif (coords.length === 4) {\n\t\tif (coords[3].type !== Tok.Alpha) return;\n\t\tcoords[3] = coords[3].value;\n\t}\n\tif (coords.length === 3) coords.push({\n\t\ttype: Tok.None,\n\t\tvalue: void 0\n\t});\n\treturn coords.every((c$1) => c$1.type !== Tok.Alpha) ? coords : void 0;\n}\nfunction parseModernSyntax(tokens, includeHue) {\n\ttokens._i = 0;\n\tlet token = tokens[tokens._i++];\n\tif (!token || token.type !== Tok.Function) return;\n\tlet coords = consumeCoords(tokens, includeHue);\n\tif (!coords) return;\n\tcoords.unshift(token.value);\n\treturn coords;\n}\nconst parse = (color) => {\n\tif (typeof color !== \"string\") return;\n\tconst tokens = tokenize(color);\n\tconst parsed = tokens ? parseModernSyntax(tokens, true) : void 0;\n\tlet result = void 0;\n\tlet i = 0;\n\tlet len = parsers.length;\n\twhile (i < len) if ((result = parsers[i++](color, parsed)) !== void 0) return result;\n\treturn tokens ? parseColorSyntax(tokens) : void 0;\n};\nvar parse_default = parse;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/rgb/parseRgb.js\nfunction parseRgb(color, parsed) {\n\tif (!parsed || parsed[0] !== \"rgb\" && parsed[0] !== \"rgba\") return;\n\tconst res = { mode: \"rgb\" };\n\tconst [, r$1, g, b, alpha] = parsed;\n\tif (r$1.type === Tok.Hue || g.type === Tok.Hue || b.type === Tok.Hue) return;\n\tif (r$1.type !== Tok.None) res.r = r$1.type === Tok.Number ? r$1.value / 255 : r$1.value / 100;\n\tif (g.type !== Tok.None) res.g = g.type === Tok.Number ? g.value / 255 : g.value / 100;\n\tif (b.type !== Tok.None) res.b = b.type === Tok.Number ? b.value / 255 : b.value / 100;\n\tif (alpha.type !== Tok.None) res.alpha = Math.min(1, Math.max(0, alpha.type === Tok.Number ? alpha.value : alpha.value / 100));\n\treturn res;\n}\nvar parseRgb_default = parseRgb;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/rgb/parseTransparent.js\nconst parseTransparent = (c$1) => c$1 === \"transparent\" ? {\n\tmode: \"rgb\",\n\tr: 0,\n\tg: 0,\n\tb: 0,\n\talpha: 0\n} : void 0;\nvar parseTransparent_default = parseTransparent;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/interpolate/lerp.js\nconst lerp = (a, b, t) => a + t * (b - a);\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/interpolate/piecewise.js\nconst get_classes = (arr) => {\n\tlet classes = [];\n\tfor (let i = 0; i < arr.length - 1; i++) {\n\t\tlet a = arr[i];\n\t\tlet b = arr[i + 1];\n\t\tif (a === void 0 && b === void 0) classes.push(void 0);\n\t\telse if (a !== void 0 && b !== void 0) classes.push([a, b]);\n\t\telse classes.push(a !== void 0 ? [a, a] : [b, b]);\n\t}\n\treturn classes;\n};\nconst interpolatorPiecewise = (interpolator) => (arr) => {\n\tlet classes = get_classes(arr);\n\treturn (t) => {\n\t\tlet cls = t * classes.length;\n\t\tlet idx = t >= 1 ? classes.length - 1 : Math.max(Math.floor(cls), 0);\n\t\tlet pair = classes[idx];\n\t\treturn pair === void 0 ? void 0 : interpolator(pair[0], pair[1], cls - idx);\n\t};\n};\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/interpolate/linear.js\nconst interpolatorLinear = interpolatorPiecewise(lerp);\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/fixup/alpha.js\nconst fixupAlpha = (arr) => {\n\tlet some_defined = false;\n\tlet res = arr.map((v) => {\n\t\tif (v !== void 0) {\n\t\t\tsome_defined = true;\n\t\t\treturn v;\n\t\t}\n\t\treturn 1;\n\t});\n\treturn some_defined ? res : arr;\n};\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/rgb/definition.js\nconst definition$27 = {\n\tmode: \"rgb\",\n\tchannels: [\n\t\t\"r\",\n\t\t\"g\",\n\t\t\"b\",\n\t\t\"alpha\"\n\t],\n\tparse: [\n\t\tparseRgb_default,\n\t\tparseHex_default,\n\t\tparseRgbLegacy_default,\n\t\tparseNamed_default,\n\t\tparseTransparent_default,\n\t\t\"srgb\"\n\t],\n\tserialize: \"srgb\",\n\tinterpolate: {\n\t\tr: interpolatorLinear,\n\t\tg: interpolatorLinear,\n\t\tb: interpolatorLinear,\n\t\talpha: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupAlpha\n\t\t}\n\t},\n\tgamut: true,\n\twhite: {\n\t\tr: 1,\n\t\tg: 1,\n\t\tb: 1\n\t},\n\tblack: {\n\t\tr: 0,\n\t\tg: 0,\n\t\tb: 0\n\t}\n};\nvar definition_default$12 = definition$27;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/a98/convertA98ToXyz65.js\nconst linearize$2 = (v = 0) => Math.pow(Math.abs(v), 563 / 256) * Math.sign(v);\nconst convertA98ToXyz65 = (a98$2) => {\n\tlet r$1 = linearize$2(a98$2.r);\n\tlet g = linearize$2(a98$2.g);\n\tlet b = linearize$2(a98$2.b);\n\tlet res = {\n\t\tmode: \"xyz65\",\n\t\tx: .5766690429101305 * r$1 + .1855582379065463 * g + .1882286462349947 * b,\n\t\ty: .297344975250536 * r$1 + .6273635662554661 * g + .0752914584939979 * b,\n\t\tz: .0270313613864123 * r$1 + .0706888525358272 * g + .9913375368376386 * b\n\t};\n\tif (a98$2.alpha !== void 0) res.alpha = a98$2.alpha;\n\treturn res;\n};\nvar convertA98ToXyz65_default = convertA98ToXyz65;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/a98/convertXyz65ToA98.js\nconst gamma$2 = (v) => Math.pow(Math.abs(v), 256 / 563) * Math.sign(v);\nconst convertXyz65ToA98 = ({ x, y, z, alpha }) => {\n\tif (x === void 0) x = 0;\n\tif (y === void 0) y = 0;\n\tif (z === void 0) z = 0;\n\tlet res = {\n\t\tmode: \"a98\",\n\t\tr: gamma$2(x * 2.0415879038107465 - y * .5650069742788597 - .3447313507783297 * z),\n\t\tg: gamma$2(x * -.9692436362808798 + y * 1.8759675015077206 + .0415550574071756 * z),\n\t\tb: gamma$2(x * .0134442806320312 - y * .1183623922310184 + 1.0151749943912058 * z)\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertXyz65ToA98_default = convertXyz65ToA98;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lrgb/convertRgbToLrgb.js\nconst fn$3 = (c$1 = 0) => {\n\tconst abs$1 = Math.abs(c$1);\n\tif (abs$1 <= .04045) return c$1 / 12.92;\n\treturn (Math.sign(c$1) || 1) * Math.pow((abs$1 + .055) / 1.055, 2.4);\n};\nconst convertRgbToLrgb = ({ r: r$1, g, b, alpha }) => {\n\tlet res = {\n\t\tmode: \"lrgb\",\n\t\tr: fn$3(r$1),\n\t\tg: fn$3(g),\n\t\tb: fn$3(b)\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertRgbToLrgb_default = convertRgbToLrgb;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/xyz65/convertRgbToXyz65.js\nconst convertRgbToXyz65 = (rgb$4) => {\n\tlet { r: r$1, g, b, alpha } = convertRgbToLrgb_default(rgb$4);\n\tlet res = {\n\t\tmode: \"xyz65\",\n\t\tx: .4123907992659593 * r$1 + .357584339383878 * g + .1804807884018343 * b,\n\t\ty: .2126390058715102 * r$1 + .715168678767756 * g + .0721923153607337 * b,\n\t\tz: .0193308187155918 * r$1 + .119194779794626 * g + .9505321522496607 * b\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertRgbToXyz65_default = convertRgbToXyz65;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lrgb/convertLrgbToRgb.js\nconst fn$2 = (c$1 = 0) => {\n\tconst abs$1 = Math.abs(c$1);\n\tif (abs$1 > .0031308) return (Math.sign(c$1) || 1) * (1.055 * Math.pow(abs$1, 1 / 2.4) - .055);\n\treturn c$1 * 12.92;\n};\nconst convertLrgbToRgb = ({ r: r$1, g, b, alpha }, mode = \"rgb\") => {\n\tlet res = {\n\t\tmode,\n\t\tr: fn$2(r$1),\n\t\tg: fn$2(g),\n\t\tb: fn$2(b)\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertLrgbToRgb_default = convertLrgbToRgb;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/xyz65/convertXyz65ToRgb.js\nconst convertXyz65ToRgb = ({ x, y, z, alpha }) => {\n\tif (x === void 0) x = 0;\n\tif (y === void 0) y = 0;\n\tif (z === void 0) z = 0;\n\tlet res = convertLrgbToRgb_default({\n\t\tr: x * 3.2409699419045226 - y * 1.537383177570094 - .4986107602930034 * z,\n\t\tg: x * -.9692436362808796 + y * 1.8759675015077204 + .0415550574071756 * z,\n\t\tb: x * .0556300796969936 - y * .2039769588889765 + 1.0569715142428784 * z\n\t});\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertXyz65ToRgb_default = convertXyz65ToRgb;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/a98/definition.js\nconst definition$26 = {\n\t...definition_default$12,\n\tmode: \"a98\",\n\tparse: [\"a98-rgb\"],\n\tserialize: \"a98-rgb\",\n\tfromMode: {\n\t\trgb: (color) => convertXyz65ToA98_default(convertRgbToXyz65_default(color)),\n\t\txyz65: convertXyz65ToA98_default\n\t},\n\ttoMode: {\n\t\trgb: (color) => convertXyz65ToRgb_default(convertA98ToXyz65_default(color)),\n\t\txyz65: convertA98ToXyz65_default\n\t}\n};\nvar definition_default = definition$26;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/util/normalizeHue.js\nconst normalizeHue = (hue$2) => (hue$2 = hue$2 % 360) < 0 ? hue$2 + 360 : hue$2;\nvar normalizeHue_default = normalizeHue;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/hsl/convertHslToRgb.js\nfunction convertHslToRgb({ h, s, l, alpha }) {\n\th = normalizeHue_default(h !== void 0 ? h : 0);\n\tif (s === void 0) s = 0;\n\tif (l === void 0) l = 0;\n\tlet m1 = l + s * (l < .5 ? l : 1 - l);\n\tlet m2 = m1 - (m1 - l) * 2 * Math.abs(h / 60 % 2 - 1);\n\tlet res;\n\tswitch (Math.floor(h / 60)) {\n\t\tcase 0:\n\t\t\tres = {\n\t\t\t\tr: m1,\n\t\t\t\tg: m2,\n\t\t\t\tb: 2 * l - m1\n\t\t\t};\n\t\t\tbreak;\n\t\tcase 1:\n\t\t\tres = {\n\t\t\t\tr: m2,\n\t\t\t\tg: m1,\n\t\t\t\tb: 2 * l - m1\n\t\t\t};\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tres = {\n\t\t\t\tr: 2 * l - m1,\n\t\t\t\tg: m1,\n\t\t\t\tb: m2\n\t\t\t};\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tres = {\n\t\t\t\tr: 2 * l - m1,\n\t\t\t\tg: m2,\n\t\t\t\tb: m1\n\t\t\t};\n\t\t\tbreak;\n\t\tcase 4:\n\t\t\tres = {\n\t\t\t\tr: m2,\n\t\t\t\tg: 2 * l - m1,\n\t\t\t\tb: m1\n\t\t\t};\n\t\t\tbreak;\n\t\tcase 5:\n\t\t\tres = {\n\t\t\t\tr: m1,\n\t\t\t\tg: 2 * l - m1,\n\t\t\t\tb: m2\n\t\t\t};\n\t\t\tbreak;\n\t\tdefault: res = {\n\t\t\tr: 2 * l - m1,\n\t\t\tg: 2 * l - m1,\n\t\t\tb: 2 * l - m1\n\t\t};\n\t}\n\tres.mode = \"rgb\";\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/hsl/convertRgbToHsl.js\nfunction convertRgbToHsl({ r: r$1, g, b, alpha }) {\n\tif (r$1 === void 0) r$1 = 0;\n\tif (g === void 0) g = 0;\n\tif (b === void 0) b = 0;\n\tlet M$1 = Math.max(r$1, g, b), m = Math.min(r$1, g, b);\n\tlet res = {\n\t\tmode: \"hsl\",\n\t\ts: M$1 === m ? 0 : (M$1 - m) / (1 - Math.abs(M$1 + m - 1)),\n\t\tl: .5 * (M$1 + m)\n\t};\n\tif (M$1 - m !== 0) res.h = (M$1 === r$1 ? (g - b) / (M$1 - m) + (g < b) * 6 : M$1 === g ? (b - r$1) / (M$1 - m) + 2 : (r$1 - g) / (M$1 - m) + 4) * 60;\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/util/hue.js\nconst hueToDeg = (val, unit) => {\n\tswitch (unit) {\n\t\tcase \"deg\": return +val;\n\t\tcase \"rad\": return val / Math.PI * 180;\n\t\tcase \"grad\": return val / 10 * 9;\n\t\tcase \"turn\": return val * 360;\n\t}\n};\nvar hue_default = hueToDeg;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/hsl/parseHslLegacy.js\nconst hsl_old = /* @__PURE__ */ new RegExp(`^hsla?\\\\(\\\\s*${hue$1}${c}${per}${c}${per}\\\\s*(?:,\\\\s*${num_per}\\\\s*)?\\\\)$`);\nconst parseHslLegacy = (color) => {\n\tlet match = color.match(hsl_old);\n\tif (!match) return;\n\tlet res = { mode: \"hsl\" };\n\tif (match[3] !== void 0) res.h = +match[3];\n\telse if (match[1] !== void 0 && match[2] !== void 0) res.h = hue_default(match[1], match[2]);\n\tif (match[4] !== void 0) res.s = Math.min(Math.max(0, match[4] / 100), 1);\n\tif (match[5] !== void 0) res.l = Math.min(Math.max(0, match[5] / 100), 1);\n\tif (match[6] !== void 0) res.alpha = Math.max(0, Math.min(1, match[6] / 100));\n\telse if (match[7] !== void 0) res.alpha = Math.max(0, Math.min(1, +match[7]));\n\treturn res;\n};\nvar parseHslLegacy_default = parseHslLegacy;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/hsl/parseHsl.js\nfunction parseHsl(color, parsed) {\n\tif (!parsed || parsed[0] !== \"hsl\" && parsed[0] !== \"hsla\") return;\n\tconst res = { mode: \"hsl\" };\n\tconst [, h, s, l, alpha] = parsed;\n\tif (h.type !== Tok.None) {\n\t\tif (h.type === Tok.Percentage) return;\n\t\tres.h = h.value;\n\t}\n\tif (s.type !== Tok.None) {\n\t\tif (s.type === Tok.Hue) return;\n\t\tres.s = s.value / 100;\n\t}\n\tif (l.type !== Tok.None) {\n\t\tif (l.type === Tok.Hue) return;\n\t\tres.l = l.value / 100;\n\t}\n\tif (alpha.type !== Tok.None) res.alpha = Math.min(1, Math.max(0, alpha.type === Tok.Number ? alpha.value : alpha.value / 100));\n\treturn res;\n}\nvar parseHsl_default = parseHsl;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/fixup/hue.js\nconst hue = (hues, fn$4) => {\n\treturn hues.map((hue$2, idx, arr) => {\n\t\tif (hue$2 === void 0) return hue$2;\n\t\tlet normalized = normalizeHue_default(hue$2);\n\t\tif (idx === 0 || hues[idx - 1] === void 0) return normalized;\n\t\treturn fn$4(normalized - normalizeHue_default(arr[idx - 1]));\n\t}).reduce((acc, curr) => {\n\t\tif (!acc.length || curr === void 0 || acc[acc.length - 1] === void 0) {\n\t\t\tacc.push(curr);\n\t\t\treturn acc;\n\t\t}\n\t\tacc.push(curr + acc[acc.length - 1]);\n\t\treturn acc;\n\t}, []);\n};\nconst fixupHueShorter = (arr) => hue(arr, (d) => Math.abs(d) <= 180 ? d : d - 360 * Math.sign(d));\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/difference.js\nconst differenceHueSaturation = (std, smp) => {\n\tif (std.h === void 0 || smp.h === void 0 || !std.s || !smp.s) return 0;\n\tlet std_h = normalizeHue_default(std.h);\n\tlet smp_h = normalizeHue_default(smp.h);\n\tlet dH = Math.sin((smp_h - std_h + 360) / 2 * Math.PI / 180);\n\treturn 2 * Math.sqrt(std.s * smp.s) * dH;\n};\nconst differenceHueNaive = (std, smp) => {\n\tif (std.h === void 0 || smp.h === void 0) return 0;\n\tlet std_h = normalizeHue_default(std.h);\n\tlet smp_h = normalizeHue_default(smp.h);\n\tif (Math.abs(smp_h - std_h) > 180) return std_h - (smp_h - 360 * Math.sign(smp_h - std_h));\n\treturn smp_h - std_h;\n};\nconst differenceHueChroma = (std, smp) => {\n\tif (std.h === void 0 || smp.h === void 0 || !std.c || !smp.c) return 0;\n\tlet std_h = normalizeHue_default(std.h);\n\tlet smp_h = normalizeHue_default(smp.h);\n\tlet dH = Math.sin((smp_h - std_h + 360) / 2 * Math.PI / 180);\n\treturn 2 * Math.sqrt(std.c * smp.c) * dH;\n};\nconst differenceEuclidean = (mode = \"rgb\", weights = [\n\t1,\n\t1,\n\t1,\n\t0\n]) => {\n\tlet def = getMode(mode);\n\tlet channels = def.channels;\n\tlet diffs = def.difference;\n\tlet conv = converter_default(mode);\n\treturn (std, smp) => {\n\t\tlet ConvStd = conv(std);\n\t\tlet ConvSmp = conv(smp);\n\t\treturn Math.sqrt(channels.reduce((sum, k$3, idx) => {\n\t\t\tlet delta = diffs[k$3] ? diffs[k$3](ConvStd, ConvSmp) : ConvStd[k$3] - ConvSmp[k$3];\n\t\t\treturn sum + (weights[idx] || 0) * Math.pow(isNaN(delta) ? 0 : delta, 2);\n\t\t}, 0));\n\t};\n};\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/average.js\nconst averageAngle = (val) => {\n\tlet sum = val.reduce((sum$1, val$1) => {\n\t\tif (val$1 !== void 0) {\n\t\t\tlet rad = val$1 * Math.PI / 180;\n\t\t\tsum$1.sin += Math.sin(rad);\n\t\t\tsum$1.cos += Math.cos(rad);\n\t\t}\n\t\treturn sum$1;\n\t}, {\n\t\tsin: 0,\n\t\tcos: 0\n\t});\n\tlet angle = Math.atan2(sum.sin, sum.cos) * 180 / Math.PI;\n\treturn angle < 0 ? 360 + angle : angle;\n};\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/hsl/definition.js\nconst definition$25 = {\n\tmode: \"hsl\",\n\ttoMode: { rgb: convertHslToRgb },\n\tfromMode: { rgb: convertRgbToHsl },\n\tchannels: [\n\t\t\"h\",\n\t\t\"s\",\n\t\t\"l\",\n\t\t\"alpha\"\n\t],\n\tranges: { h: [0, 360] },\n\tgamut: \"rgb\",\n\tparse: [parseHsl_default, parseHslLegacy_default],\n\tserialize: (c$1) => `hsl(${c$1.h !== void 0 ? c$1.h : \"none\"} ${c$1.s !== void 0 ? c$1.s * 100 + \"%\" : \"none\"} ${c$1.l !== void 0 ? c$1.l * 100 + \"%\" : \"none\"}${c$1.alpha < 1 ? ` / ${c$1.alpha}` : \"\"})`,\n\tinterpolate: {\n\t\th: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupHueShorter\n\t\t},\n\t\ts: interpolatorLinear,\n\t\tl: interpolatorLinear,\n\t\talpha: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupAlpha\n\t\t}\n\t},\n\tdifference: { h: differenceHueSaturation },\n\taverage: { h: averageAngle }\n};\nvar definition_default$1 = definition$25;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/hsv/convertHsvToRgb.js\nfunction convertHsvToRgb({ h, s, v, alpha }) {\n\th = normalizeHue_default(h !== void 0 ? h : 0);\n\tif (s === void 0) s = 0;\n\tif (v === void 0) v = 0;\n\tlet f$2 = Math.abs(h / 60 % 2 - 1);\n\tlet res;\n\tswitch (Math.floor(h / 60)) {\n\t\tcase 0:\n\t\t\tres = {\n\t\t\t\tr: v,\n\t\t\t\tg: v * (1 - s * f$2),\n\t\t\t\tb: v * (1 - s)\n\t\t\t};\n\t\t\tbreak;\n\t\tcase 1:\n\t\t\tres = {\n\t\t\t\tr: v * (1 - s * f$2),\n\t\t\t\tg: v,\n\t\t\t\tb: v * (1 - s)\n\t\t\t};\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tres = {\n\t\t\t\tr: v * (1 - s),\n\t\t\t\tg: v,\n\t\t\t\tb: v * (1 - s * f$2)\n\t\t\t};\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tres = {\n\t\t\t\tr: v * (1 - s),\n\t\t\t\tg: v * (1 - s * f$2),\n\t\t\t\tb: v\n\t\t\t};\n\t\t\tbreak;\n\t\tcase 4:\n\t\t\tres = {\n\t\t\t\tr: v * (1 - s * f$2),\n\t\t\t\tg: v * (1 - s),\n\t\t\t\tb: v\n\t\t\t};\n\t\t\tbreak;\n\t\tcase 5:\n\t\t\tres = {\n\t\t\t\tr: v,\n\t\t\t\tg: v * (1 - s),\n\t\t\t\tb: v * (1 - s * f$2)\n\t\t\t};\n\t\t\tbreak;\n\t\tdefault: res = {\n\t\t\tr: v * (1 - s),\n\t\t\tg: v * (1 - s),\n\t\t\tb: v * (1 - s)\n\t\t};\n\t}\n\tres.mode = \"rgb\";\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/hsv/convertRgbToHsv.js\nfunction convertRgbToHsv({ r: r$1, g, b, alpha }) {\n\tif (r$1 === void 0) r$1 = 0;\n\tif (g === void 0) g = 0;\n\tif (b === void 0) b = 0;\n\tlet M$1 = Math.max(r$1, g, b), m = Math.min(r$1, g, b);\n\tlet res = {\n\t\tmode: \"hsv\",\n\t\ts: M$1 === 0 ? 0 : 1 - m / M$1,\n\t\tv: M$1\n\t};\n\tif (M$1 - m !== 0) res.h = (M$1 === r$1 ? (g - b) / (M$1 - m) + (g < b) * 6 : M$1 === g ? (b - r$1) / (M$1 - m) + 2 : (r$1 - g) / (M$1 - m) + 4) * 60;\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/hsv/definition.js\nconst definition$24 = {\n\tmode: \"hsv\",\n\ttoMode: { rgb: convertHsvToRgb },\n\tparse: [\"--hsv\"],\n\tserialize: \"--hsv\",\n\tfromMode: { rgb: convertRgbToHsv },\n\tchannels: [\n\t\t\"h\",\n\t\t\"s\",\n\t\t\"v\",\n\t\t\"alpha\"\n\t],\n\tranges: { h: [0, 360] },\n\tgamut: \"rgb\",\n\tinterpolate: {\n\t\th: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupHueShorter\n\t\t},\n\t\ts: interpolatorLinear,\n\t\tv: interpolatorLinear,\n\t\talpha: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupAlpha\n\t\t}\n\t},\n\tdifference: { h: differenceHueSaturation },\n\taverage: { h: averageAngle }\n};\nvar definition_default$19 = definition$24;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/hwb/convertHwbToRgb.js\nfunction convertHwbToRgb({ h, w, b, alpha }) {\n\tif (w === void 0) w = 0;\n\tif (b === void 0) b = 0;\n\tif (w + b > 1) {\n\t\tlet s = w + b;\n\t\tw /= s;\n\t\tb /= s;\n\t}\n\treturn convertHsvToRgb({\n\t\th,\n\t\ts: b === 1 ? 1 : 1 - w / (1 - b),\n\t\tv: 1 - b,\n\t\talpha\n\t});\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/hwb/convertRgbToHwb.js\nfunction convertRgbToHwb(rgba) {\n\tlet hsv$2 = convertRgbToHsv(rgba);\n\tif (hsv$2 === void 0) return void 0;\n\tlet s = hsv$2.s !== void 0 ? hsv$2.s : 0;\n\tlet v = hsv$2.v !== void 0 ? hsv$2.v : 0;\n\tlet res = {\n\t\tmode: \"hwb\",\n\t\tw: (1 - s) * v,\n\t\tb: 1 - v\n\t};\n\tif (hsv$2.h !== void 0) res.h = hsv$2.h;\n\tif (hsv$2.alpha !== void 0) res.alpha = hsv$2.alpha;\n\treturn res;\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/hwb/parseHwb.js\nfunction ParseHwb(color, parsed) {\n\tif (!parsed || parsed[0] !== \"hwb\") return;\n\tconst res = { mode: \"hwb\" };\n\tconst [, h, w, b, alpha] = parsed;\n\tif (h.type !== Tok.None) {\n\t\tif (h.type === Tok.Percentage) return;\n\t\tres.h = h.value;\n\t}\n\tif (w.type !== Tok.None) {\n\t\tif (w.type === Tok.Hue) return;\n\t\tres.w = w.value / 100;\n\t}\n\tif (b.type !== Tok.None) {\n\t\tif (b.type === Tok.Hue) return;\n\t\tres.b = b.value / 100;\n\t}\n\tif (alpha.type !== Tok.None) res.alpha = Math.min(1, Math.max(0, alpha.type === Tok.Number ? alpha.value : alpha.value / 100));\n\treturn res;\n}\nvar parseHwb_default = ParseHwb;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/hwb/definition.js\nconst definition$23 = {\n\tmode: \"hwb\",\n\ttoMode: { rgb: convertHwbToRgb },\n\tfromMode: { rgb: convertRgbToHwb },\n\tchannels: [\n\t\t\"h\",\n\t\t\"w\",\n\t\t\"b\",\n\t\t\"alpha\"\n\t],\n\tranges: { h: [0, 360] },\n\tgamut: \"rgb\",\n\tparse: [parseHwb_default],\n\tserialize: (c$1) => `hwb(${c$1.h !== void 0 ? c$1.h : \"none\"} ${c$1.w !== void 0 ? c$1.w * 100 + \"%\" : \"none\"} ${c$1.b !== void 0 ? c$1.b * 100 + \"%\" : \"none\"}${c$1.alpha < 1 ? ` / ${c$1.alpha}` : \"\"})`,\n\tinterpolate: {\n\t\th: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupHueShorter\n\t\t},\n\t\tw: interpolatorLinear,\n\t\tb: interpolatorLinear,\n\t\talpha: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupAlpha\n\t\t}\n\t},\n\tdifference: { h: differenceHueNaive },\n\taverage: { h: averageAngle }\n};\nvar definition_default$2 = definition$23;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/xyz50/constants.js\nconst k = Math.pow(29, 3) / Math.pow(3, 3);\nconst e = Math.pow(6, 3) / Math.pow(29, 3);\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/constants.js\nconst D50 = {\n\tX: .3457 / .3585,\n\tY: 1,\n\tZ: .2958 / .3585\n};\nconst D65 = {\n\tX: .3127 / .329,\n\tY: 1,\n\tZ: .3583 / .329\n};\nconst k$2 = Math.pow(29, 3) / Math.pow(3, 3);\nconst e$2 = Math.pow(6, 3) / Math.pow(29, 3);\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lab/convertLabToXyz50.js\nlet fn$1 = (v) => Math.pow(v, 3) > e ? Math.pow(v, 3) : (116 * v - 16) / k;\nconst convertLabToXyz50 = ({ l, a, b, alpha }) => {\n\tif (l === void 0) l = 0;\n\tif (a === void 0) a = 0;\n\tif (b === void 0) b = 0;\n\tlet fy = (l + 16) / 116;\n\tlet fx = a / 500 + fy;\n\tlet fz = fy - b / 200;\n\tlet res = {\n\t\tmode: \"xyz50\",\n\t\tx: fn$1(fx) * D50.X,\n\t\ty: fn$1(fy) * D50.Y,\n\t\tz: fn$1(fz) * D50.Z\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertLabToXyz50_default = convertLabToXyz50;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/xyz50/convertXyz50ToRgb.js\nconst convertXyz50ToRgb = ({ x, y, z, alpha }) => {\n\tif (x === void 0) x = 0;\n\tif (y === void 0) y = 0;\n\tif (z === void 0) z = 0;\n\tlet res = convertLrgbToRgb_default({\n\t\tr: x * 3.1341359569958707 - y * 1.6173863321612538 - .4906619460083532 * z,\n\t\tg: x * -.978795502912089 + y * 1.916254567259524 + .03344273116131949 * z,\n\t\tb: x * .07195537988411677 - y * .2289768264158322 + 1.405386058324125 * z\n\t});\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertXyz50ToRgb_default = convertXyz50ToRgb;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lab/convertLabToRgb.js\nconst convertLabToRgb = (lab$2) => convertXyz50ToRgb_default(convertLabToXyz50_default(lab$2));\nvar convertLabToRgb_default = convertLabToRgb;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/xyz50/convertRgbToXyz50.js\nconst convertRgbToXyz50 = (rgb$4) => {\n\tlet { r: r$1, g, b, alpha } = convertRgbToLrgb_default(rgb$4);\n\tlet res = {\n\t\tmode: \"xyz50\",\n\t\tx: .436065742824811 * r$1 + .3851514688337912 * g + .14307845442264197 * b,\n\t\ty: .22249319175623702 * r$1 + .7168870538238823 * g + .06061979053616537 * b,\n\t\tz: .013923904500943465 * r$1 + .09708128566574634 * g + .7140993584005155 * b\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertRgbToXyz50_default = convertRgbToXyz50;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lab/convertXyz50ToLab.js\nconst f$1 = (value) => value > e ? Math.cbrt(value) : (k * value + 16) / 116;\nconst convertXyz50ToLab = ({ x, y, z, alpha }) => {\n\tif (x === void 0) x = 0;\n\tif (y === void 0) y = 0;\n\tif (z === void 0) z = 0;\n\tlet f0 = f$1(x / D50.X);\n\tlet f1 = f$1(y / D50.Y);\n\tlet f2 = f$1(z / D50.Z);\n\tlet res = {\n\t\tmode: \"lab\",\n\t\tl: 116 * f1 - 16,\n\t\ta: 500 * (f0 - f1),\n\t\tb: 200 * (f1 - f2)\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertXyz50ToLab_default = convertXyz50ToLab;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lab/convertRgbToLab.js\nconst convertRgbToLab = (rgb$4) => {\n\tlet res = convertXyz50ToLab_default(convertRgbToXyz50_default(rgb$4));\n\tif (rgb$4.r === rgb$4.b && rgb$4.b === rgb$4.g) res.a = res.b = 0;\n\treturn res;\n};\nvar convertRgbToLab_default = convertRgbToLab;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lab/parseLab.js\nfunction parseLab(color, parsed) {\n\tif (!parsed || parsed[0] !== \"lab\") return;\n\tconst res = { mode: \"lab\" };\n\tconst [, l, a, b, alpha] = parsed;\n\tif (l.type === Tok.Hue || a.type === Tok.Hue || b.type === Tok.Hue) return;\n\tif (l.type !== Tok.None) res.l = Math.min(Math.max(0, l.value), 100);\n\tif (a.type !== Tok.None) res.a = a.type === Tok.Number ? a.value : a.value * 125 / 100;\n\tif (b.type !== Tok.None) res.b = b.type === Tok.Number ? b.value : b.value * 125 / 100;\n\tif (alpha.type !== Tok.None) res.alpha = Math.min(1, Math.max(0, alpha.type === Tok.Number ? alpha.value : alpha.value / 100));\n\treturn res;\n}\nvar parseLab_default = parseLab;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lab/definition.js\nconst definition$22 = {\n\tmode: \"lab\",\n\ttoMode: {\n\t\txyz50: convertLabToXyz50_default,\n\t\trgb: convertLabToRgb_default\n\t},\n\tfromMode: {\n\t\txyz50: convertXyz50ToLab_default,\n\t\trgb: convertRgbToLab_default\n\t},\n\tchannels: [\n\t\t\"l\",\n\t\t\"a\",\n\t\t\"b\",\n\t\t\"alpha\"\n\t],\n\tranges: {\n\t\tl: [0, 100],\n\t\ta: [-125, 125],\n\t\tb: [-125, 125]\n\t},\n\tparse: [parseLab_default],\n\tserialize: (c$1) => `lab(${c$1.l !== void 0 ? c$1.l : \"none\"} ${c$1.a !== void 0 ? c$1.a : \"none\"} ${c$1.b !== void 0 ? c$1.b : \"none\"}${c$1.alpha < 1 ? ` / ${c$1.alpha}` : \"\"})`,\n\tinterpolate: {\n\t\tl: interpolatorLinear,\n\t\ta: interpolatorLinear,\n\t\tb: interpolatorLinear,\n\t\talpha: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupAlpha\n\t\t}\n\t}\n};\nvar definition_default$3 = definition$22;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/xyz65/constants.js\nconst k$1 = Math.pow(29, 3) / Math.pow(3, 3);\nconst e$1 = Math.pow(6, 3) / Math.pow(29, 3);\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lab65/convertLab65ToXyz65.js\nlet fn = (v) => Math.pow(v, 3) > e$1 ? Math.pow(v, 3) : (116 * v - 16) / k$1;\nconst convertLab65ToXyz65 = ({ l, a, b, alpha }) => {\n\tif (l === void 0) l = 0;\n\tif (a === void 0) a = 0;\n\tif (b === void 0) b = 0;\n\tlet fy = (l + 16) / 116;\n\tlet fx = a / 500 + fy;\n\tlet fz = fy - b / 200;\n\tlet res = {\n\t\tmode: \"xyz65\",\n\t\tx: fn(fx) * D65.X,\n\t\ty: fn(fy) * D65.Y,\n\t\tz: fn(fz) * D65.Z\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertLab65ToXyz65_default = convertLab65ToXyz65;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lab65/convertLab65ToRgb.js\nconst convertLab65ToRgb = (lab$2) => convertXyz65ToRgb_default(convertLab65ToXyz65_default(lab$2));\nvar convertLab65ToRgb_default = convertLab65ToRgb;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lab65/convertXyz65ToLab65.js\nconst f = (value) => value > e$1 ? Math.cbrt(value) : (k$1 * value + 16) / 116;\nconst convertXyz65ToLab65 = ({ x, y, z, alpha }) => {\n\tif (x === void 0) x = 0;\n\tif (y === void 0) y = 0;\n\tif (z === void 0) z = 0;\n\tlet f0 = f(x / D65.X);\n\tlet f1 = f(y / D65.Y);\n\tlet f2 = f(z / D65.Z);\n\tlet res = {\n\t\tmode: \"lab65\",\n\t\tl: 116 * f1 - 16,\n\t\ta: 500 * (f0 - f1),\n\t\tb: 200 * (f1 - f2)\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertXyz65ToLab65_default = convertXyz65ToLab65;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lab65/convertRgbToLab65.js\nconst convertRgbToLab65 = (rgb$4) => {\n\tlet res = convertXyz65ToLab65_default(convertRgbToXyz65_default(rgb$4));\n\tif (rgb$4.r === rgb$4.b && rgb$4.b === rgb$4.g) res.a = res.b = 0;\n\treturn res;\n};\nvar convertRgbToLab65_default = convertRgbToLab65;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lab65/definition.js\nconst definition$21 = {\n\t...definition_default$3,\n\tmode: \"lab65\",\n\tparse: [\"--lab-d65\"],\n\tserialize: \"--lab-d65\",\n\ttoMode: {\n\t\txyz65: convertLab65ToXyz65_default,\n\t\trgb: convertLab65ToRgb_default\n\t},\n\tfromMode: {\n\t\txyz65: convertXyz65ToLab65_default,\n\t\trgb: convertRgbToLab65_default\n\t},\n\tranges: {\n\t\tl: [0, 100],\n\t\ta: [-125, 125],\n\t\tb: [-125, 125]\n\t}\n};\nvar definition_default$4 = definition$21;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lch/convertLabToLch.js\nconst convertLabToLch = ({ l, a, b, alpha }, mode = \"lch\") => {\n\tif (a === void 0) a = 0;\n\tif (b === void 0) b = 0;\n\tlet c$1 = Math.sqrt(a * a + b * b);\n\tlet res = {\n\t\tmode,\n\t\tl,\n\t\tc: c$1\n\t};\n\tif (c$1) res.h = normalizeHue_default(Math.atan2(b, a) * 180 / Math.PI);\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertLabToLch_default = convertLabToLch;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lch/convertLchToLab.js\nconst convertLchToLab = ({ l, c: c$1, h, alpha }, mode = \"lab\") => {\n\tif (h === void 0) h = 0;\n\tlet res = {\n\t\tmode,\n\t\tl,\n\t\ta: c$1 ? c$1 * Math.cos(h / 180 * Math.PI) : 0,\n\t\tb: c$1 ? c$1 * Math.sin(h / 180 * Math.PI) : 0\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertLchToLab_default = convertLchToLab;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lch/parseLch.js\nfunction parseLch(color, parsed) {\n\tif (!parsed || parsed[0] !== \"lch\") return;\n\tconst res = { mode: \"lch\" };\n\tconst [, l, c$1, h, alpha] = parsed;\n\tif (l.type !== Tok.None) {\n\t\tif (l.type === Tok.Hue) return;\n\t\tres.l = Math.min(Math.max(0, l.value), 100);\n\t}\n\tif (c$1.type !== Tok.None) res.c = Math.max(0, c$1.type === Tok.Number ? c$1.value : c$1.value * 150 / 100);\n\tif (h.type !== Tok.None) {\n\t\tif (h.type === Tok.Percentage) return;\n\t\tres.h = h.value;\n\t}\n\tif (alpha.type !== Tok.None) res.alpha = Math.min(1, Math.max(0, alpha.type === Tok.Number ? alpha.value : alpha.value / 100));\n\treturn res;\n}\nvar parseLch_default = parseLch;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lch/definition.js\nconst definition$20 = {\n\tmode: \"lch\",\n\ttoMode: {\n\t\tlab: convertLchToLab_default,\n\t\trgb: (c$1) => convertLabToRgb_default(convertLchToLab_default(c$1))\n\t},\n\tfromMode: {\n\t\trgb: (c$1) => convertLabToLch_default(convertRgbToLab_default(c$1)),\n\t\tlab: convertLabToLch_default\n\t},\n\tchannels: [\n\t\t\"l\",\n\t\t\"c\",\n\t\t\"h\",\n\t\t\"alpha\"\n\t],\n\tranges: {\n\t\tl: [0, 100],\n\t\tc: [0, 150],\n\t\th: [0, 360]\n\t},\n\tparse: [parseLch_default],\n\tserialize: (c$1) => `lch(${c$1.l !== void 0 ? c$1.l : \"none\"} ${c$1.c !== void 0 ? c$1.c : \"none\"} ${c$1.h !== void 0 ? c$1.h : \"none\"}${c$1.alpha < 1 ? ` / ${c$1.alpha}` : \"\"})`,\n\tinterpolate: {\n\t\th: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupHueShorter\n\t\t},\n\t\tc: interpolatorLinear,\n\t\tl: interpolatorLinear,\n\t\talpha: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupAlpha\n\t\t}\n\t},\n\tdifference: { h: differenceHueChroma },\n\taverage: { h: averageAngle }\n};\nvar definition_default$5 = definition$20;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lch65/definition.js\nconst definition$19 = {\n\t...definition_default$5,\n\tmode: \"lch65\",\n\tparse: [\"--lch-d65\"],\n\tserialize: \"--lch-d65\",\n\ttoMode: {\n\t\tlab65: (c$1) => convertLchToLab_default(c$1, \"lab65\"),\n\t\trgb: (c$1) => convertLab65ToRgb_default(convertLchToLab_default(c$1, \"lab65\"))\n\t},\n\tfromMode: {\n\t\trgb: (c$1) => convertLabToLch_default(convertRgbToLab65_default(c$1), \"lch65\"),\n\t\tlab65: (c$1) => convertLabToLch_default(c$1, \"lch65\")\n\t},\n\tranges: {\n\t\tl: [0, 100],\n\t\tc: [0, 150],\n\t\th: [0, 360]\n\t}\n};\nvar definition_default$23 = definition$19;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lrgb/definition.js\nconst definition$18 = {\n\t...definition_default$12,\n\tmode: \"lrgb\",\n\ttoMode: { rgb: convertLrgbToRgb_default },\n\tfromMode: { rgb: convertRgbToLrgb_default },\n\tparse: [\"srgb-linear\"],\n\tserialize: \"srgb-linear\"\n};\nvar definition_default$6 = definition$18;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/oklab/convertOklabToLrgb.js\nconst convertOklabToLrgb = ({ l, a, b, alpha }) => {\n\tif (l === void 0) l = 0;\n\tif (a === void 0) a = 0;\n\tif (b === void 0) b = 0;\n\tlet L = Math.pow(l + .3963377773761749 * a + .2158037573099136 * b, 3);\n\tlet M$1 = Math.pow(l - .1055613458156586 * a - .0638541728258133 * b, 3);\n\tlet S = Math.pow(l - .0894841775298119 * a - 1.2914855480194092 * b, 3);\n\tlet res = {\n\t\tmode: \"lrgb\",\n\t\tr: 4.076741636075957 * L - 3.3077115392580616 * M$1 + .2309699031821044 * S,\n\t\tg: -1.2684379732850317 * L + 2.6097573492876887 * M$1 - .3413193760026573 * S,\n\t\tb: -.0041960761386756 * L - .7034186179359362 * M$1 + 1.7076146940746117 * S\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertOklabToLrgb_default = convertOklabToLrgb;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/oklab/convertLrgbToOklab.js\nconst convertLrgbToOklab = ({ r: r$1, g, b, alpha }) => {\n\tif (r$1 === void 0) r$1 = 0;\n\tif (g === void 0) g = 0;\n\tif (b === void 0) b = 0;\n\tlet L = Math.cbrt(.412221469470763 * r$1 + .5363325372617348 * g + .0514459932675022 * b);\n\tlet M$1 = Math.cbrt(.2119034958178252 * r$1 + .6806995506452344 * g + .1073969535369406 * b);\n\tlet S = Math.cbrt(.0883024591900564 * r$1 + .2817188391361215 * g + .6299787016738222 * b);\n\tlet res = {\n\t\tmode: \"oklab\",\n\t\tl: .210454268309314 * L + .7936177747023054 * M$1 - .0040720430116193 * S,\n\t\ta: 1.9779985324311684 * L - 2.42859224204858 * M$1 + .450593709617411 * S,\n\t\tb: .0259040424655478 * L + .7827717124575296 * M$1 - .8086757549230774 * S\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertLrgbToOklab_default = convertLrgbToOklab;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/oklab/convertRgbToOklab.js\nconst convertRgbToOklab = (rgb$4) => {\n\tlet res = convertLrgbToOklab_default(convertRgbToLrgb_default(rgb$4));\n\tif (rgb$4.r === rgb$4.b && rgb$4.b === rgb$4.g) res.a = res.b = 0;\n\treturn res;\n};\nvar convertRgbToOklab_default = convertRgbToOklab;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/oklab/convertOklabToRgb.js\nconst convertOklabToRgb = (c$1) => convertLrgbToRgb_default(convertOklabToLrgb_default(c$1));\nvar convertOklabToRgb_default = convertOklabToRgb;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/oklab/parseOklab.js\nfunction parseOklab(color, parsed) {\n\tif (!parsed || parsed[0] !== \"oklab\") return;\n\tconst res = { mode: \"oklab\" };\n\tconst [, l, a, b, alpha] = parsed;\n\tif (l.type === Tok.Hue || a.type === Tok.Hue || b.type === Tok.Hue) return;\n\tif (l.type !== Tok.None) res.l = Math.min(Math.max(0, l.type === Tok.Number ? l.value : l.value / 100), 1);\n\tif (a.type !== Tok.None) res.a = a.type === Tok.Number ? a.value : a.value * .4 / 100;\n\tif (b.type !== Tok.None) res.b = b.type === Tok.Number ? b.value : b.value * .4 / 100;\n\tif (alpha.type !== Tok.None) res.alpha = Math.min(1, Math.max(0, alpha.type === Tok.Number ? alpha.value : alpha.value / 100));\n\treturn res;\n}\nvar parseOklab_default = parseOklab;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/oklab/definition.js\nconst definition$17 = {\n\t...definition_default$3,\n\tmode: \"oklab\",\n\ttoMode: {\n\t\tlrgb: convertOklabToLrgb_default,\n\t\trgb: convertOklabToRgb_default\n\t},\n\tfromMode: {\n\t\tlrgb: convertLrgbToOklab_default,\n\t\trgb: convertRgbToOklab_default\n\t},\n\tranges: {\n\t\tl: [0, 1],\n\t\ta: [-.4, .4],\n\t\tb: [-.4, .4]\n\t},\n\tparse: [parseOklab_default],\n\tserialize: (c$1) => `oklab(${c$1.l !== void 0 ? c$1.l : \"none\"} ${c$1.a !== void 0 ? c$1.a : \"none\"} ${c$1.b !== void 0 ? c$1.b : \"none\"}${c$1.alpha < 1 ? ` / ${c$1.alpha}` : \"\"})`\n};\nvar definition_default$7 = definition$17;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/oklch/parseOklch.js\nfunction parseOklch(color, parsed) {\n\tif (!parsed || parsed[0] !== \"oklch\") return;\n\tconst res = { mode: \"oklch\" };\n\tconst [, l, c$1, h, alpha] = parsed;\n\tif (l.type !== Tok.None) {\n\t\tif (l.type === Tok.Hue) return;\n\t\tres.l = Math.min(Math.max(0, l.type === Tok.Number ? l.value : l.value / 100), 1);\n\t}\n\tif (c$1.type !== Tok.None) res.c = Math.max(0, c$1.type === Tok.Number ? c$1.value : c$1.value * .4 / 100);\n\tif (h.type !== Tok.None) {\n\t\tif (h.type === Tok.Percentage) return;\n\t\tres.h = h.value;\n\t}\n\tif (alpha.type !== Tok.None) res.alpha = Math.min(1, Math.max(0, alpha.type === Tok.Number ? alpha.value : alpha.value / 100));\n\treturn res;\n}\nvar parseOklch_default = parseOklch;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/oklch/definition.js\nconst definition$16 = {\n\t...definition_default$5,\n\tmode: \"oklch\",\n\ttoMode: {\n\t\toklab: (c$1) => convertLchToLab_default(c$1, \"oklab\"),\n\t\trgb: (c$1) => convertOklabToRgb_default(convertLchToLab_default(c$1, \"oklab\"))\n\t},\n\tfromMode: {\n\t\trgb: (c$1) => convertLabToLch_default(convertRgbToOklab_default(c$1), \"oklch\"),\n\t\toklab: (c$1) => convertLabToLch_default(c$1, \"oklch\")\n\t},\n\tparse: [parseOklch_default],\n\tserialize: (c$1) => `oklch(${c$1.l !== void 0 ? c$1.l : \"none\"} ${c$1.c !== void 0 ? c$1.c : \"none\"} ${c$1.h !== void 0 ? c$1.h : \"none\"}${c$1.alpha < 1 ? ` / ${c$1.alpha}` : \"\"})`,\n\tranges: {\n\t\tl: [0, 1],\n\t\tc: [0, .4],\n\t\th: [0, 360]\n\t}\n};\nvar definition_default$8 = definition$16;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/p3/convertP3ToXyz65.js\nconst convertP3ToXyz65 = (rgb$4) => {\n\tlet { r: r$1, g, b, alpha } = convertRgbToLrgb_default(rgb$4);\n\tlet res = {\n\t\tmode: \"xyz65\",\n\t\tx: .486570948648216 * r$1 + .265667693169093 * g + .1982172852343625 * b,\n\t\ty: .2289745640697487 * r$1 + .6917385218365062 * g + .079286914093745 * b,\n\t\tz: 0 * r$1 + .0451133818589026 * g + 1.043944368900976 * b\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertP3ToXyz65_default = convertP3ToXyz65;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/p3/convertXyz65ToP3.js\nconst convertXyz65ToP3 = ({ x, y, z, alpha }) => {\n\tif (x === void 0) x = 0;\n\tif (y === void 0) y = 0;\n\tif (z === void 0) z = 0;\n\tlet res = convertLrgbToRgb_default({\n\t\tr: x * 2.4934969119414263 - y * .9313836179191242 - .402710784450717 * z,\n\t\tg: x * -.8294889695615749 + y * 1.7626640603183465 + .0236246858419436 * z,\n\t\tb: x * .0358458302437845 - y * .0761723892680418 + .9568845240076871 * z\n\t}, \"p3\");\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertXyz65ToP3_default = convertXyz65ToP3;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/p3/definition.js\nconst definition$15 = {\n\t...definition_default$12,\n\tmode: \"p3\",\n\tparse: [\"display-p3\"],\n\tserialize: \"display-p3\",\n\tfromMode: {\n\t\trgb: (color) => convertXyz65ToP3_default(convertRgbToXyz65_default(color)),\n\t\txyz65: convertXyz65ToP3_default\n\t},\n\ttoMode: {\n\t\trgb: (color) => convertXyz65ToRgb_default(convertP3ToXyz65_default(color)),\n\t\txyz65: convertP3ToXyz65_default\n\t}\n};\nvar definition_default$9 = definition$15;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/prophoto/convertXyz50ToProphoto.js\nconst gamma$1 = (v) => {\n\tlet abs$1 = Math.abs(v);\n\tif (abs$1 >= 1 / 512) return Math.sign(v) * Math.pow(abs$1, 1 / 1.8);\n\treturn 16 * v;\n};\nconst convertXyz50ToProphoto = ({ x, y, z, alpha }) => {\n\tif (x === void 0) x = 0;\n\tif (y === void 0) y = 0;\n\tif (z === void 0) z = 0;\n\tlet res = {\n\t\tmode: \"prophoto\",\n\t\tr: gamma$1(x * 1.3457868816471585 - y * .2555720873797946 - .0511018649755453 * z),\n\t\tg: gamma$1(x * -.5446307051249019 + y * 1.5082477428451466 + .0205274474364214 * z),\n\t\tb: gamma$1(x * 0 + y * 0 + 1.2119675456389452 * z)\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertXyz50ToProphoto_default = convertXyz50ToProphoto;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/prophoto/convertProphotoToXyz50.js\nconst linearize$1 = (v = 0) => {\n\tlet abs$1 = Math.abs(v);\n\tif (abs$1 >= 16 / 512) return Math.sign(v) * Math.pow(abs$1, 1.8);\n\treturn v / 16;\n};\nconst convertProphotoToXyz50 = (prophoto$2) => {\n\tlet r$1 = linearize$1(prophoto$2.r);\n\tlet g = linearize$1(prophoto$2.g);\n\tlet b = linearize$1(prophoto$2.b);\n\tlet res = {\n\t\tmode: \"xyz50\",\n\t\tx: .7977666449006423 * r$1 + .1351812974005331 * g + .0313477341283922 * b,\n\t\ty: .2880748288194013 * r$1 + .7118352342418731 * g + 899369387256e-16 * b,\n\t\tz: 0 * r$1 + 0 * g + .8251046025104602 * b\n\t};\n\tif (prophoto$2.alpha !== void 0) res.alpha = prophoto$2.alpha;\n\treturn res;\n};\nvar convertProphotoToXyz50_default = convertProphotoToXyz50;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/prophoto/definition.js\nconst definition$14 = {\n\t...definition_default$12,\n\tmode: \"prophoto\",\n\tparse: [\"prophoto-rgb\"],\n\tserialize: \"prophoto-rgb\",\n\tfromMode: {\n\t\txyz50: convertXyz50ToProphoto_default,\n\t\trgb: (color) => convertXyz50ToProphoto_default(convertRgbToXyz50_default(color))\n\t},\n\ttoMode: {\n\t\txyz50: convertProphotoToXyz50_default,\n\t\trgb: (color) => convertXyz50ToRgb_default(convertProphotoToXyz50_default(color))\n\t}\n};\nvar definition_default$10 = definition$14;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/rec2020/convertXyz65ToRec2020.js\nconst α$1 = 1.09929682680944;\nconst β$1 = .018053968510807;\nconst gamma = (v) => {\n\tconst abs$1 = Math.abs(v);\n\tif (abs$1 > β$1) return (Math.sign(v) || 1) * (α$1 * Math.pow(abs$1, .45) - (α$1 - 1));\n\treturn 4.5 * v;\n};\nconst convertXyz65ToRec2020 = ({ x, y, z, alpha }) => {\n\tif (x === void 0) x = 0;\n\tif (y === void 0) y = 0;\n\tif (z === void 0) z = 0;\n\tlet res = {\n\t\tmode: \"rec2020\",\n\t\tr: gamma(x * 1.7166511879712683 - y * .3556707837763925 - .2533662813736599 * z),\n\t\tg: gamma(x * -.6666843518324893 + y * 1.6164812366349395 + .0157685458139111 * z),\n\t\tb: gamma(x * .0176398574453108 - y * .0427706132578085 + .9421031212354739 * z)\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertXyz65ToRec2020_default = convertXyz65ToRec2020;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/rec2020/convertRec2020ToXyz65.js\nconst α = 1.09929682680944;\nconst β = .018053968510807;\nconst linearize = (v = 0) => {\n\tlet abs$1 = Math.abs(v);\n\tif (abs$1 < β * 4.5) return v / 4.5;\n\treturn (Math.sign(v) || 1) * Math.pow((abs$1 + α - 1) / α, 1 / .45);\n};\nconst convertRec2020ToXyz65 = (rec2020$2) => {\n\tlet r$1 = linearize(rec2020$2.r);\n\tlet g = linearize(rec2020$2.g);\n\tlet b = linearize(rec2020$2.b);\n\tlet res = {\n\t\tmode: \"xyz65\",\n\t\tx: .6369580483012911 * r$1 + .1446169035862083 * g + .1688809751641721 * b,\n\t\ty: .262700212011267 * r$1 + .6779980715188708 * g + .059301716469862 * b,\n\t\tz: 0 * r$1 + .0280726930490874 * g + 1.0609850577107909 * b\n\t};\n\tif (rec2020$2.alpha !== void 0) res.alpha = rec2020$2.alpha;\n\treturn res;\n};\nvar convertRec2020ToXyz65_default = convertRec2020ToXyz65;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/rec2020/definition.js\nconst definition$13 = {\n\t...definition_default$12,\n\tmode: \"rec2020\",\n\tfromMode: {\n\t\txyz65: convertXyz65ToRec2020_default,\n\t\trgb: (color) => convertXyz65ToRec2020_default(convertRgbToXyz65_default(color))\n\t},\n\ttoMode: {\n\t\txyz65: convertRec2020ToXyz65_default,\n\t\trgb: (color) => convertXyz65ToRgb_default(convertRec2020ToXyz65_default(color))\n\t},\n\tparse: [\"rec2020\"],\n\tserialize: \"rec2020\"\n};\nvar definition_default$11 = definition$13;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/xyz50/definition.js\nconst definition$12 = {\n\tmode: \"xyz50\",\n\tparse: [\"xyz-d50\"],\n\tserialize: \"xyz-d50\",\n\ttoMode: {\n\t\trgb: convertXyz50ToRgb_default,\n\t\tlab: convertXyz50ToLab_default\n\t},\n\tfromMode: {\n\t\trgb: convertRgbToXyz50_default,\n\t\tlab: convertLabToXyz50_default\n\t},\n\tchannels: [\n\t\t\"x\",\n\t\t\"y\",\n\t\t\"z\",\n\t\t\"alpha\"\n\t],\n\tranges: {\n\t\tx: [0, .964],\n\t\ty: [0, .999],\n\t\tz: [0, .825]\n\t},\n\tinterpolate: {\n\t\tx: interpolatorLinear,\n\t\ty: interpolatorLinear,\n\t\tz: interpolatorLinear,\n\t\talpha: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupAlpha\n\t\t}\n\t}\n};\nvar definition_default$13 = definition$12;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/xyz65/convertXyz65ToXyz50.js\nconst convertXyz65ToXyz50 = (xyz65$2) => {\n\tlet { x, y, z, alpha } = xyz65$2;\n\tif (x === void 0) x = 0;\n\tif (y === void 0) y = 0;\n\tif (z === void 0) z = 0;\n\tlet res = {\n\t\tmode: \"xyz50\",\n\t\tx: 1.0479298208405488 * x + .0229467933410191 * y - .0501922295431356 * z,\n\t\ty: .0296278156881593 * x + .990434484573249 * y - .0170738250293851 * z,\n\t\tz: -.0092430581525912 * x + .0150551448965779 * y + .7518742899580008 * z\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertXyz65ToXyz50_default = convertXyz65ToXyz50;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/xyz65/convertXyz50ToXyz65.js\nconst convertXyz50ToXyz65 = (xyz50$2) => {\n\tlet { x, y, z, alpha } = xyz50$2;\n\tif (x === void 0) x = 0;\n\tif (y === void 0) y = 0;\n\tif (z === void 0) z = 0;\n\tlet res = {\n\t\tmode: \"xyz65\",\n\t\tx: .9554734527042182 * x - .0230985368742614 * y + .0632593086610217 * z,\n\t\ty: -.0283697069632081 * x + 1.0099954580058226 * y + .021041398966943 * z,\n\t\tz: .0123140016883199 * x - .0205076964334779 * y + 1.3303659366080753 * z\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertXyz50ToXyz65_default = convertXyz50ToXyz65;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/xyz65/definition.js\nconst definition$11 = {\n\tmode: \"xyz65\",\n\ttoMode: {\n\t\trgb: convertXyz65ToRgb_default,\n\t\txyz50: convertXyz65ToXyz50_default\n\t},\n\tfromMode: {\n\t\trgb: convertRgbToXyz65_default,\n\t\txyz50: convertXyz50ToXyz65_default\n\t},\n\tranges: {\n\t\tx: [0, .95],\n\t\ty: [0, 1],\n\t\tz: [0, 1.088]\n\t},\n\tchannels: [\n\t\t\"x\",\n\t\t\"y\",\n\t\t\"z\",\n\t\t\"alpha\"\n\t],\n\tparse: [\"xyz\", \"xyz-d65\"],\n\tserialize: \"xyz-d65\",\n\tinterpolate: {\n\t\tx: interpolatorLinear,\n\t\ty: interpolatorLinear,\n\t\tz: interpolatorLinear,\n\t\talpha: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupAlpha\n\t\t}\n\t}\n};\nvar definition_default$14 = definition$11;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/bootstrap/css.js\nconst a98$1 = useMode(definition_default);\nconst hsl$2 = useMode(definition_default$1);\nconst hsv$1 = useMode(definition_default$19);\nconst hwb$1 = useMode(definition_default$2);\nconst lab$1 = useMode(definition_default$3);\nconst lab65$1 = useMode(definition_default$4);\nconst lch$1 = useMode(definition_default$5);\nconst lch65$1 = useMode(definition_default$23);\nconst lrgb$1 = useMode(definition_default$6);\nconst oklab$1 = useMode(definition_default$7);\nconst oklch$1 = useMode(definition_default$8);\nconst p3$1 = useMode(definition_default$9);\nconst prophoto$1 = useMode(definition_default$10);\nconst rec2020$1 = useMode(definition_default$11);\nconst rgb$3 = useMode(definition_default$12);\nconst xyz50$1 = useMode(definition_default$13);\nconst xyz65$1 = useMode(definition_default$14);\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/cubehelix/constants.js\nconst M = [\n\t-.14861,\n\t1.78277,\n\t-.29227,\n\t-.90649,\n\t1.97294,\n\t0\n];\nconst degToRad = Math.PI / 180;\nconst radToDeg = 180 / Math.PI;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/cubehelix/convertRgbToCubehelix.js\nlet DE = M[3] * M[4];\nlet BE = M[1] * M[4];\nlet BCAD = M[1] * M[2] - M[0] * M[3];\nconst convertRgbToCubehelix = ({ r: r$1, g, b, alpha }) => {\n\tif (r$1 === void 0) r$1 = 0;\n\tif (g === void 0) g = 0;\n\tif (b === void 0) b = 0;\n\tlet l = (BCAD * b + r$1 * DE - g * BE) / (BCAD + DE - BE);\n\tlet x = b - l;\n\tlet y = (M[4] * (g - l) - M[2] * x) / M[3];\n\tlet res = {\n\t\tmode: \"cubehelix\",\n\t\tl,\n\t\ts: l === 0 || l === 1 ? void 0 : Math.sqrt(x * x + y * y) / (M[4] * l * (1 - l))\n\t};\n\tif (res.s) res.h = Math.atan2(y, x) * radToDeg - 120;\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertRgbToCubehelix_default = convertRgbToCubehelix;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/cubehelix/convertCubehelixToRgb.js\nconst convertCubehelixToRgb = ({ h, s, l, alpha }) => {\n\tlet res = { mode: \"rgb\" };\n\th = (h === void 0 ? 0 : h + 120) * degToRad;\n\tif (l === void 0) l = 0;\n\tlet amp = s === void 0 ? 0 : s * l * (1 - l);\n\tlet cosh = Math.cos(h);\n\tlet sinh = Math.sin(h);\n\tres.r = l + amp * (M[0] * cosh + M[1] * sinh);\n\tres.g = l + amp * (M[2] * cosh + M[3] * sinh);\n\tres.b = l + amp * (M[4] * cosh + M[5] * sinh);\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertCubehelixToRgb_default = convertCubehelixToRgb;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/cubehelix/definition.js\nconst definition$10 = {\n\tmode: \"cubehelix\",\n\tchannels: [\n\t\t\"h\",\n\t\t\"s\",\n\t\t\"l\",\n\t\t\"alpha\"\n\t],\n\tparse: [\"--cubehelix\"],\n\tserialize: \"--cubehelix\",\n\tranges: {\n\t\th: [0, 360],\n\t\ts: [0, 4.614],\n\t\tl: [0, 1]\n\t},\n\tfromMode: { rgb: convertRgbToCubehelix_default },\n\ttoMode: { rgb: convertCubehelixToRgb_default },\n\tinterpolate: {\n\t\th: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupHueShorter\n\t\t},\n\t\ts: interpolatorLinear,\n\t\tl: interpolatorLinear,\n\t\talpha: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupAlpha\n\t\t}\n\t},\n\tdifference: { h: differenceHueSaturation },\n\taverage: { h: averageAngle }\n};\nvar definition_default$15 = definition$10;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/dlch/constants.js\nconst kE = 1;\nconst kCH = 1;\nconst θ = 26 / 180 * Math.PI;\nconst cosθ = Math.cos(θ);\nconst sinθ = Math.sin(θ);\nconst factor = 100 / Math.log(139 / 100);\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/dlch/convertDlchToLab65.js\nconst convertDlchToLab65 = ({ l, c: c$1, h, alpha }) => {\n\tif (l === void 0) l = 0;\n\tif (c$1 === void 0) c$1 = 0;\n\tif (h === void 0) h = 0;\n\tlet res = {\n\t\tmode: \"lab65\",\n\t\tl: (Math.exp(l * kE / factor) - 1) / .0039\n\t};\n\tlet G = (Math.exp(.0435 * c$1 * kCH * kE) - 1) / .075;\n\tlet e$3 = G * Math.cos(h / 180 * Math.PI - θ);\n\tlet f$2 = G * Math.sin(h / 180 * Math.PI - θ);\n\tres.a = e$3 * cosθ - f$2 / .83 * sinθ;\n\tres.b = e$3 * sinθ + f$2 / .83 * cosθ;\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertDlchToLab65_default = convertDlchToLab65;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/dlch/convertLab65ToDlch.js\nconst convertLab65ToDlch = ({ l, a, b, alpha }) => {\n\tif (l === void 0) l = 0;\n\tif (a === void 0) a = 0;\n\tif (b === void 0) b = 0;\n\tlet e$3 = a * cosθ + b * sinθ;\n\tlet f$2 = .83 * (b * cosθ - a * sinθ);\n\tlet G = Math.sqrt(e$3 * e$3 + f$2 * f$2);\n\tlet res = {\n\t\tmode: \"dlch\",\n\t\tl: factor / kE * Math.log(1 + .0039 * l),\n\t\tc: Math.log(1 + .075 * G) / (.0435 * kCH * kE)\n\t};\n\tif (res.c) res.h = normalizeHue_default((Math.atan2(f$2, e$3) + θ) / Math.PI * 180);\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertLab65ToDlch_default = convertLab65ToDlch;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/dlab/definition.js\nconst convertDlabToLab65 = (c$1) => convertDlchToLab65_default(convertLabToLch_default(c$1, \"dlch\"));\nconst convertLab65ToDlab = (c$1) => convertLchToLab_default(convertLab65ToDlch_default(c$1), \"dlab\");\nconst definition$9 = {\n\tmode: \"dlab\",\n\tparse: [\"--din99o-lab\"],\n\tserialize: \"--din99o-lab\",\n\ttoMode: {\n\t\tlab65: convertDlabToLab65,\n\t\trgb: (c$1) => convertLab65ToRgb_default(convertDlabToLab65(c$1))\n\t},\n\tfromMode: {\n\t\tlab65: convertLab65ToDlab,\n\t\trgb: (c$1) => convertLab65ToDlab(convertRgbToLab65_default(c$1))\n\t},\n\tchannels: [\n\t\t\"l\",\n\t\t\"a\",\n\t\t\"b\",\n\t\t\"alpha\"\n\t],\n\tranges: {\n\t\tl: [0, 100],\n\t\ta: [-40.09, 45.501],\n\t\tb: [-40.469, 44.344]\n\t},\n\tinterpolate: {\n\t\tl: interpolatorLinear,\n\t\ta: interpolatorLinear,\n\t\tb: interpolatorLinear,\n\t\talpha: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupAlpha\n\t\t}\n\t}\n};\nvar definition_default$16 = definition$9;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/dlch/definition.js\nconst definition$8 = {\n\tmode: \"dlch\",\n\tparse: [\"--din99o-lch\"],\n\tserialize: \"--din99o-lch\",\n\ttoMode: {\n\t\tlab65: convertDlchToLab65_default,\n\t\tdlab: (c$1) => convertLchToLab_default(c$1, \"dlab\"),\n\t\trgb: (c$1) => convertLab65ToRgb_default(convertDlchToLab65_default(c$1))\n\t},\n\tfromMode: {\n\t\tlab65: convertLab65ToDlch_default,\n\t\tdlab: (c$1) => convertLabToLch_default(c$1, \"dlch\"),\n\t\trgb: (c$1) => convertLab65ToDlch_default(convertRgbToLab65_default(c$1))\n\t},\n\tchannels: [\n\t\t\"l\",\n\t\t\"c\",\n\t\t\"h\",\n\t\t\"alpha\"\n\t],\n\tranges: {\n\t\tl: [0, 100],\n\t\tc: [0, 51.484],\n\t\th: [0, 360]\n\t},\n\tinterpolate: {\n\t\tl: interpolatorLinear,\n\t\tc: interpolatorLinear,\n\t\th: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupHueShorter\n\t\t},\n\t\talpha: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupAlpha\n\t\t}\n\t},\n\tdifference: { h: differenceHueChroma },\n\taverage: { h: averageAngle }\n};\nvar definition_default$17 = definition$8;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/hsi/convertHsiToRgb.js\nfunction convertHsiToRgb({ h, s, i, alpha }) {\n\th = normalizeHue_default(h !== void 0 ? h : 0);\n\tif (s === void 0) s = 0;\n\tif (i === void 0) i = 0;\n\tlet f$2 = Math.abs(h / 60 % 2 - 1);\n\tlet res;\n\tswitch (Math.floor(h / 60)) {\n\t\tcase 0:\n\t\t\tres = {\n\t\t\t\tr: i * (1 + s * (3 / (2 - f$2) - 1)),\n\t\t\t\tg: i * (1 + s * (3 * (1 - f$2) / (2 - f$2) - 1)),\n\t\t\t\tb: i * (1 - s)\n\t\t\t};\n\t\t\tbreak;\n\t\tcase 1:\n\t\t\tres = {\n\t\t\t\tr: i * (1 + s * (3 * (1 - f$2) / (2 - f$2) - 1)),\n\t\t\t\tg: i * (1 + s * (3 / (2 - f$2) - 1)),\n\t\t\t\tb: i * (1 - s)\n\t\t\t};\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tres = {\n\t\t\t\tr: i * (1 - s),\n\t\t\t\tg: i * (1 + s * (3 / (2 - f$2) - 1)),\n\t\t\t\tb: i * (1 + s * (3 * (1 - f$2) / (2 - f$2) - 1))\n\t\t\t};\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tres = {\n\t\t\t\tr: i * (1 - s),\n\t\t\t\tg: i * (1 + s * (3 * (1 - f$2) / (2 - f$2) - 1)),\n\t\t\t\tb: i * (1 + s * (3 / (2 - f$2) - 1))\n\t\t\t};\n\t\t\tbreak;\n\t\tcase 4:\n\t\t\tres = {\n\t\t\t\tr: i * (1 + s * (3 * (1 - f$2) / (2 - f$2) - 1)),\n\t\t\t\tg: i * (1 - s),\n\t\t\t\tb: i * (1 + s * (3 / (2 - f$2) - 1))\n\t\t\t};\n\t\t\tbreak;\n\t\tcase 5:\n\t\t\tres = {\n\t\t\t\tr: i * (1 + s * (3 / (2 - f$2) - 1)),\n\t\t\t\tg: i * (1 - s),\n\t\t\t\tb: i * (1 + s * (3 * (1 - f$2) / (2 - f$2) - 1))\n\t\t\t};\n\t\t\tbreak;\n\t\tdefault: res = {\n\t\t\tr: i * (1 - s),\n\t\t\tg: i * (1 - s),\n\t\t\tb: i * (1 - s)\n\t\t};\n\t}\n\tres.mode = \"rgb\";\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/hsi/convertRgbToHsi.js\nfunction convertRgbToHsi({ r: r$1, g, b, alpha }) {\n\tif (r$1 === void 0) r$1 = 0;\n\tif (g === void 0) g = 0;\n\tif (b === void 0) b = 0;\n\tlet M$1 = Math.max(r$1, g, b), m = Math.min(r$1, g, b);\n\tlet res = {\n\t\tmode: \"hsi\",\n\t\ts: r$1 + g + b === 0 ? 0 : 1 - 3 * m / (r$1 + g + b),\n\t\ti: (r$1 + g + b) / 3\n\t};\n\tif (M$1 - m !== 0) res.h = (M$1 === r$1 ? (g - b) / (M$1 - m) + (g < b) * 6 : M$1 === g ? (b - r$1) / (M$1 - m) + 2 : (r$1 - g) / (M$1 - m) + 4) * 60;\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/hsi/definition.js\nconst definition$7 = {\n\tmode: \"hsi\",\n\ttoMode: { rgb: convertHsiToRgb },\n\tparse: [\"--hsi\"],\n\tserialize: \"--hsi\",\n\tfromMode: { rgb: convertRgbToHsi },\n\tchannels: [\n\t\t\"h\",\n\t\t\"s\",\n\t\t\"i\",\n\t\t\"alpha\"\n\t],\n\tranges: { h: [0, 360] },\n\tgamut: \"rgb\",\n\tinterpolate: {\n\t\th: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupHueShorter\n\t\t},\n\t\ts: interpolatorLinear,\n\t\ti: interpolatorLinear,\n\t\talpha: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupAlpha\n\t\t}\n\t},\n\tdifference: { h: differenceHueSaturation },\n\taverage: { h: averageAngle }\n};\nvar definition_default$18 = definition$7;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/hdr/constants.js\nconst YW = 203;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/hdr/transfer.js\nconst M1 = .1593017578125;\nconst M2 = 78.84375;\nconst C1 = .8359375;\nconst C2 = 18.8515625;\nconst C3 = 18.6875;\nfunction transferPqDecode(v) {\n\tif (v < 0) return 0;\n\tconst c$1 = Math.pow(v, 1 / M2);\n\treturn 1e4 * Math.pow(Math.max(0, c$1 - C1) / (C2 - C3 * c$1), 1 / M1);\n}\nfunction transferPqEncode(v) {\n\tif (v < 0) return 0;\n\tconst c$1 = Math.pow(v / 1e4, M1);\n\treturn Math.pow((C1 + C2 * c$1) / (1 + C3 * c$1), M2);\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/itp/convertItpToXyz65.js\nconst toRel = (c$1) => Math.max(c$1 / YW, 0);\nconst convertItpToXyz65 = ({ i, t, p: p$2, alpha }) => {\n\tif (i === void 0) i = 0;\n\tif (t === void 0) t = 0;\n\tif (p$2 === void 0) p$2 = 0;\n\tconst l = transferPqDecode(i + .008609037037932761 * t + .11102962500302593 * p$2);\n\tconst m = transferPqDecode(i - .00860903703793275 * t - .11102962500302599 * p$2);\n\tconst s = transferPqDecode(i + .5600313357106791 * t - .32062717498731885 * p$2);\n\tconst res = {\n\t\tmode: \"xyz65\",\n\t\tx: toRel(2.070152218389422 * l - 1.3263473389671556 * m + .2066510476294051 * s),\n\t\ty: toRel(.3647385209748074 * l + .680566024947227 * m - .0453045459220346 * s),\n\t\tz: toRel(-.049747207535812 * l - .0492609666966138 * m + 1.1880659249923042 * s)\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertItpToXyz65_default = convertItpToXyz65;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/itp/convertXyz65ToItp.js\nconst toAbs = (c$1 = 0) => Math.max(c$1 * YW, 0);\nconst convertXyz65ToItp = ({ x, y, z, alpha }) => {\n\tconst absX = toAbs(x);\n\tconst absY = toAbs(y);\n\tconst absZ = toAbs(z);\n\tconst l = transferPqEncode(.3592832590121217 * absX + .6976051147779502 * absY - .0358915932320289 * absZ);\n\tconst m = transferPqEncode(-.1920808463704995 * absX + 1.1004767970374323 * absY + .0753748658519118 * absZ);\n\tconst s = transferPqEncode(.0070797844607477 * absX + .0748396662186366 * absY + .8433265453898765 * absZ);\n\tconst res = {\n\t\tmode: \"itp\",\n\t\ti: .5 * l + .5 * m,\n\t\tt: 1.61376953125 * l - 3.323486328125 * m + 1.709716796875 * s,\n\t\tp: 4.378173828125 * l - 4.24560546875 * m - .132568359375 * s\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertXyz65ToItp_default = convertXyz65ToItp;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/itp/definition.js\nconst definition$6 = {\n\tmode: \"itp\",\n\tchannels: [\n\t\t\"i\",\n\t\t\"t\",\n\t\t\"p\",\n\t\t\"alpha\"\n\t],\n\tparse: [\"--ictcp\"],\n\tserialize: \"--ictcp\",\n\ttoMode: {\n\t\txyz65: convertItpToXyz65_default,\n\t\trgb: (color) => convertXyz65ToRgb_default(convertItpToXyz65_default(color))\n\t},\n\tfromMode: {\n\t\txyz65: convertXyz65ToItp_default,\n\t\trgb: (color) => convertXyz65ToItp_default(convertRgbToXyz65_default(color))\n\t},\n\tranges: {\n\t\ti: [0, .581],\n\t\tt: [-.369, .272],\n\t\tp: [-.164, .331]\n\t},\n\tinterpolate: {\n\t\ti: interpolatorLinear,\n\t\tt: interpolatorLinear,\n\t\tp: interpolatorLinear,\n\t\talpha: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupAlpha\n\t\t}\n\t}\n};\nvar definition_default$20 = definition$6;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/jab/convertXyz65ToJab.js\nconst p$1 = 134.03437499999998;\nconst d0$1 = 16295499532821565e-27;\nconst jabPqEncode = (v) => {\n\tif (v < 0) return 0;\n\tlet vn$2 = Math.pow(v / 1e4, M1);\n\treturn Math.pow((C1 + C2 * vn$2) / (1 + C3 * vn$2), p$1);\n};\nconst abs = (v = 0) => Math.max(v * 203, 0);\nconst convertXyz65ToJab = ({ x, y, z, alpha }) => {\n\tx = abs(x);\n\ty = abs(y);\n\tz = abs(z);\n\tlet xp = 1.15 * x - .15 * z;\n\tlet yp = .66 * y + .34 * x;\n\tlet l = jabPqEncode(.41478972 * xp + .579999 * yp + .014648 * z);\n\tlet m = jabPqEncode(-.20151 * xp + 1.120649 * yp + .0531008 * z);\n\tlet s = jabPqEncode(-.0166008 * xp + .2648 * yp + .6684799 * z);\n\tlet i = (l + m) / 2;\n\tlet res = {\n\t\tmode: \"jab\",\n\t\tj: .44 * i / (1 - .56 * i) - d0$1,\n\t\ta: 3.524 * l - 4.066708 * m + .542708 * s,\n\t\tb: .199076 * l + 1.096799 * m - 1.295875 * s\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertXyz65ToJab_default = convertXyz65ToJab;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/jab/convertJabToXyz65.js\nconst p = 134.03437499999998;\nconst d0 = 16295499532821565e-27;\nconst jabPqDecode = (v) => {\n\tif (v < 0) return 0;\n\tlet vp = Math.pow(v, 1 / p);\n\treturn 1e4 * Math.pow((C1 - vp) / (C3 * vp - C2), 1 / M1);\n};\nconst rel = (v) => v / 203;\nconst convertJabToXyz65 = ({ j, a, b, alpha }) => {\n\tif (j === void 0) j = 0;\n\tif (a === void 0) a = 0;\n\tif (b === void 0) b = 0;\n\tlet i = (j + d0) / (.44 + .56 * (j + d0));\n\tlet l = jabPqDecode(i + .13860504 * a + .058047316 * b);\n\tlet m = jabPqDecode(i - .13860504 * a - .058047316 * b);\n\tlet s = jabPqDecode(i - .096019242 * a - .8118919 * b);\n\tlet res = {\n\t\tmode: \"xyz65\",\n\t\tx: rel(1.661373024652174 * l - .914523081304348 * m + .23136208173913045 * s),\n\t\ty: rel(-.3250758611844533 * l + 1.571847026732543 * m - .21825383453227928 * s),\n\t\tz: rel(-.090982811 * l - .31272829 * m + 1.5227666 * s)\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertJabToXyz65_default = convertJabToXyz65;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/jab/convertRgbToJab.js\nconst convertRgbToJab = (rgb$4) => {\n\tlet res = convertXyz65ToJab_default(convertRgbToXyz65_default(rgb$4));\n\tif (rgb$4.r === rgb$4.b && rgb$4.b === rgb$4.g) res.a = res.b = 0;\n\treturn res;\n};\nvar convertRgbToJab_default = convertRgbToJab;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/jab/convertJabToRgb.js\nconst convertJabToRgb = (color) => convertXyz65ToRgb_default(convertJabToXyz65_default(color));\nvar convertJabToRgb_default = convertJabToRgb;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/jab/definition.js\nconst definition$5 = {\n\tmode: \"jab\",\n\tchannels: [\n\t\t\"j\",\n\t\t\"a\",\n\t\t\"b\",\n\t\t\"alpha\"\n\t],\n\tparse: [\"--jzazbz\"],\n\tserialize: \"--jzazbz\",\n\tfromMode: {\n\t\trgb: convertRgbToJab_default,\n\t\txyz65: convertXyz65ToJab_default\n\t},\n\ttoMode: {\n\t\trgb: convertJabToRgb_default,\n\t\txyz65: convertJabToXyz65_default\n\t},\n\tranges: {\n\t\tj: [0, .222],\n\t\ta: [-.109, .129],\n\t\tb: [-.185, .134]\n\t},\n\tinterpolate: {\n\t\tj: interpolatorLinear,\n\t\ta: interpolatorLinear,\n\t\tb: interpolatorLinear,\n\t\talpha: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupAlpha\n\t\t}\n\t}\n};\nvar definition_default$21 = definition$5;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/jch/convertJabToJch.js\nconst convertJabToJch = ({ j, a, b, alpha }) => {\n\tif (a === void 0) a = 0;\n\tif (b === void 0) b = 0;\n\tlet c$1 = Math.sqrt(a * a + b * b);\n\tlet res = {\n\t\tmode: \"jch\",\n\t\tj,\n\t\tc: c$1\n\t};\n\tif (c$1) res.h = normalizeHue_default(Math.atan2(b, a) * 180 / Math.PI);\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertJabToJch_default = convertJabToJch;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/jch/convertJchToJab.js\nconst convertJchToJab = ({ j, c: c$1, h, alpha }) => {\n\tif (h === void 0) h = 0;\n\tlet res = {\n\t\tmode: \"jab\",\n\t\tj,\n\t\ta: c$1 ? c$1 * Math.cos(h / 180 * Math.PI) : 0,\n\t\tb: c$1 ? c$1 * Math.sin(h / 180 * Math.PI) : 0\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertJchToJab_default = convertJchToJab;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/jch/definition.js\nconst definition$4 = {\n\tmode: \"jch\",\n\tparse: [\"--jzczhz\"],\n\tserialize: \"--jzczhz\",\n\ttoMode: {\n\t\tjab: convertJchToJab_default,\n\t\trgb: (c$1) => convertJabToRgb_default(convertJchToJab_default(c$1))\n\t},\n\tfromMode: {\n\t\trgb: (c$1) => convertJabToJch_default(convertRgbToJab_default(c$1)),\n\t\tjab: convertJabToJch_default\n\t},\n\tchannels: [\n\t\t\"j\",\n\t\t\"c\",\n\t\t\"h\",\n\t\t\"alpha\"\n\t],\n\tranges: {\n\t\tj: [0, .221],\n\t\tc: [0, .19],\n\t\th: [0, 360]\n\t},\n\tinterpolate: {\n\t\th: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupHueShorter\n\t\t},\n\t\tc: interpolatorLinear,\n\t\tj: interpolatorLinear,\n\t\talpha: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupAlpha\n\t\t}\n\t},\n\tdifference: { h: differenceHueChroma },\n\taverage: { h: averageAngle }\n};\nvar definition_default$22 = definition$4;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lchuv/convertLuvToLchuv.js\nconst convertLuvToLchuv = ({ l, u, v, alpha }) => {\n\tif (u === void 0) u = 0;\n\tif (v === void 0) v = 0;\n\tlet c$1 = Math.sqrt(u * u + v * v);\n\tlet res = {\n\t\tmode: \"lchuv\",\n\t\tl,\n\t\tc: c$1\n\t};\n\tif (c$1) res.h = normalizeHue_default(Math.atan2(v, u) * 180 / Math.PI);\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertLuvToLchuv_default = convertLuvToLchuv;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lchuv/convertLchuvToLuv.js\nconst convertLchuvToLuv = ({ l, c: c$1, h, alpha }) => {\n\tif (h === void 0) h = 0;\n\tlet res = {\n\t\tmode: \"luv\",\n\t\tl,\n\t\tu: c$1 ? c$1 * Math.cos(h / 180 * Math.PI) : 0,\n\t\tv: c$1 ? c$1 * Math.sin(h / 180 * Math.PI) : 0\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertLchuvToLuv_default = convertLchuvToLuv;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/luv/convertXyz50ToLuv.js\nconst u_fn$1 = (x, y, z) => 4 * x / (x + 15 * y + 3 * z);\nconst v_fn$1 = (x, y, z) => 9 * y / (x + 15 * y + 3 * z);\nconst un$1 = u_fn$1(D50.X, D50.Y, D50.Z);\nconst vn$1 = v_fn$1(D50.X, D50.Y, D50.Z);\nconst l_fn = (value) => value <= e ? k * value : 116 * Math.cbrt(value) - 16;\nconst convertXyz50ToLuv = ({ x, y, z, alpha }) => {\n\tif (x === void 0) x = 0;\n\tif (y === void 0) y = 0;\n\tif (z === void 0) z = 0;\n\tlet l = l_fn(y / D50.Y);\n\tlet u = u_fn$1(x, y, z);\n\tlet v = v_fn$1(x, y, z);\n\tif (!isFinite(u) || !isFinite(v)) l = u = v = 0;\n\telse {\n\t\tu = 13 * l * (u - un$1);\n\t\tv = 13 * l * (v - vn$1);\n\t}\n\tlet res = {\n\t\tmode: \"luv\",\n\t\tl,\n\t\tu,\n\t\tv\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertXyz50ToLuv_default = convertXyz50ToLuv;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/luv/convertLuvToXyz50.js\nconst u_fn = (x, y, z) => 4 * x / (x + 15 * y + 3 * z);\nconst v_fn = (x, y, z) => 9 * y / (x + 15 * y + 3 * z);\nconst un = u_fn(D50.X, D50.Y, D50.Z);\nconst vn = v_fn(D50.X, D50.Y, D50.Z);\nconst convertLuvToXyz50 = ({ l, u, v, alpha }) => {\n\tif (l === void 0) l = 0;\n\tif (l === 0) return {\n\t\tmode: \"xyz50\",\n\t\tx: 0,\n\t\ty: 0,\n\t\tz: 0\n\t};\n\tif (u === void 0) u = 0;\n\tif (v === void 0) v = 0;\n\tlet up = u / (13 * l) + un;\n\tlet vp = v / (13 * l) + vn;\n\tlet y = D50.Y * (l <= 8 ? l / k : Math.pow((l + 16) / 116, 3));\n\tlet res = {\n\t\tmode: \"xyz50\",\n\t\tx: y * (9 * up) / (4 * vp),\n\t\ty,\n\t\tz: y * (12 - 3 * up - 20 * vp) / (4 * vp)\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertLuvToXyz50_default = convertLuvToXyz50;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/lchuv/definition.js\nconst convertRgbToLchuv = (rgb$4) => convertLuvToLchuv_default(convertXyz50ToLuv_default(convertRgbToXyz50_default(rgb$4)));\nconst convertLchuvToRgb = (lchuv$1) => convertXyz50ToRgb_default(convertLuvToXyz50_default(convertLchuvToLuv_default(lchuv$1)));\nconst definition$3 = {\n\tmode: \"lchuv\",\n\ttoMode: {\n\t\tluv: convertLchuvToLuv_default,\n\t\trgb: convertLchuvToRgb\n\t},\n\tfromMode: {\n\t\trgb: convertRgbToLchuv,\n\t\tluv: convertLuvToLchuv_default\n\t},\n\tchannels: [\n\t\t\"l\",\n\t\t\"c\",\n\t\t\"h\",\n\t\t\"alpha\"\n\t],\n\tparse: [\"--lchuv\"],\n\tserialize: \"--lchuv\",\n\tranges: {\n\t\tl: [0, 100],\n\t\tc: [0, 176.956],\n\t\th: [0, 360]\n\t},\n\tinterpolate: {\n\t\th: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupHueShorter\n\t\t},\n\t\tc: interpolatorLinear,\n\t\tl: interpolatorLinear,\n\t\talpha: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupAlpha\n\t\t}\n\t},\n\tdifference: { h: differenceHueChroma },\n\taverage: { h: averageAngle }\n};\nvar definition_default$24 = definition$3;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/luv/definition.js\nconst definition$2 = {\n\tmode: \"luv\",\n\ttoMode: {\n\t\txyz50: convertLuvToXyz50_default,\n\t\trgb: (luv$1) => convertXyz50ToRgb_default(convertLuvToXyz50_default(luv$1))\n\t},\n\tfromMode: {\n\t\txyz50: convertXyz50ToLuv_default,\n\t\trgb: (rgb$4) => convertXyz50ToLuv_default(convertRgbToXyz50_default(rgb$4))\n\t},\n\tchannels: [\n\t\t\"l\",\n\t\t\"u\",\n\t\t\"v\",\n\t\t\"alpha\"\n\t],\n\tparse: [\"--luv\"],\n\tserialize: \"--luv\",\n\tranges: {\n\t\tl: [0, 100],\n\t\tu: [-84.936, 175.042],\n\t\tv: [-125.882, 87.243]\n\t},\n\tinterpolate: {\n\t\tl: interpolatorLinear,\n\t\tu: interpolatorLinear,\n\t\tv: interpolatorLinear,\n\t\talpha: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupAlpha\n\t\t}\n\t}\n};\nvar definition_default$25 = definition$2;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/okhsl/helpers.js\nfunction toe(x) {\n\tconst k_1 = .206;\n\tconst k_2 = .03;\n\tconst k_3 = (1 + k_1) / (1 + k_2);\n\treturn .5 * (k_3 * x - k_1 + Math.sqrt((k_3 * x - k_1) * (k_3 * x - k_1) + 4 * k_2 * k_3 * x));\n}\nfunction toe_inv(x) {\n\tconst k_1 = .206;\n\tconst k_2 = .03;\n\tconst k_3 = (1 + k_1) / (1 + k_2);\n\treturn (x * x + k_1 * x) / (k_3 * (x + k_2));\n}\nfunction compute_max_saturation(a, b) {\n\tlet k0, k1, k2, k3, k4, wl, wm, ws;\n\tif (-1.88170328 * a - .80936493 * b > 1) {\n\t\tk0 = 1.19086277;\n\t\tk1 = 1.76576728;\n\t\tk2 = .59662641;\n\t\tk3 = .75515197;\n\t\tk4 = .56771245;\n\t\twl = 4.0767416621;\n\t\twm = -3.3077115913;\n\t\tws = .2309699292;\n\t} else if (1.81444104 * a - 1.19445276 * b > 1) {\n\t\tk0 = .73956515;\n\t\tk1 = -.45954404;\n\t\tk2 = .08285427;\n\t\tk3 = .1254107;\n\t\tk4 = .14503204;\n\t\twl = -1.2684380046;\n\t\twm = 2.6097574011;\n\t\tws = -.3413193965;\n\t} else {\n\t\tk0 = 1.35733652;\n\t\tk1 = -.00915799;\n\t\tk2 = -1.1513021;\n\t\tk3 = -.50559606;\n\t\tk4 = .00692167;\n\t\twl = -.0041960863;\n\t\twm = -.7034186147;\n\t\tws = 1.707614701;\n\t}\n\tlet S = k0 + k1 * a + k2 * b + k3 * a * a + k4 * a * b;\n\tlet k_l = .3963377774 * a + .2158037573 * b;\n\tlet k_m = -.1055613458 * a - .0638541728 * b;\n\tlet k_s = -.0894841775 * a - 1.291485548 * b;\n\t{\n\t\tlet l_ = 1 + S * k_l;\n\t\tlet m_ = 1 + S * k_m;\n\t\tlet s_ = 1 + S * k_s;\n\t\tlet l = l_ * l_ * l_;\n\t\tlet m = m_ * m_ * m_;\n\t\tlet s = s_ * s_ * s_;\n\t\tlet l_dS = 3 * k_l * l_ * l_;\n\t\tlet m_dS = 3 * k_m * m_ * m_;\n\t\tlet s_dS = 3 * k_s * s_ * s_;\n\t\tlet l_dS2 = 6 * k_l * k_l * l_;\n\t\tlet m_dS2 = 6 * k_m * k_m * m_;\n\t\tlet s_dS2 = 6 * k_s * k_s * s_;\n\t\tlet f$2 = wl * l + wm * m + ws * s;\n\t\tlet f1 = wl * l_dS + wm * m_dS + ws * s_dS;\n\t\tlet f2 = wl * l_dS2 + wm * m_dS2 + ws * s_dS2;\n\t\tS = S - f$2 * f1 / (f1 * f1 - .5 * f$2 * f2);\n\t}\n\treturn S;\n}\nfunction find_cusp(a, b) {\n\tlet S_cusp = compute_max_saturation(a, b);\n\tlet rgb$4 = convertOklabToLrgb_default({\n\t\tl: 1,\n\t\ta: S_cusp * a,\n\t\tb: S_cusp * b\n\t});\n\tlet L_cusp = Math.cbrt(1 / Math.max(rgb$4.r, rgb$4.g, rgb$4.b));\n\treturn [L_cusp, L_cusp * S_cusp];\n}\nfunction find_gamut_intersection(a, b, L1, C1$1, L0, cusp = null) {\n\tif (!cusp) cusp = find_cusp(a, b);\n\tlet t;\n\tif ((L1 - L0) * cusp[1] - (cusp[0] - L0) * C1$1 <= 0) t = cusp[1] * L0 / (C1$1 * cusp[0] + cusp[1] * (L0 - L1));\n\telse {\n\t\tt = cusp[1] * (L0 - 1) / (C1$1 * (cusp[0] - 1) + cusp[1] * (L0 - L1));\n\t\t{\n\t\t\tlet dL = L1 - L0;\n\t\t\tlet dC = C1$1;\n\t\t\tlet k_l = .3963377774 * a + .2158037573 * b;\n\t\t\tlet k_m = -.1055613458 * a - .0638541728 * b;\n\t\t\tlet k_s = -.0894841775 * a - 1.291485548 * b;\n\t\t\tlet l_dt = dL + dC * k_l;\n\t\t\tlet m_dt = dL + dC * k_m;\n\t\t\tlet s_dt = dL + dC * k_s;\n\t\t\t{\n\t\t\t\tlet L = L0 * (1 - t) + t * L1;\n\t\t\t\tlet C = t * C1$1;\n\t\t\t\tlet l_ = L + C * k_l;\n\t\t\t\tlet m_ = L + C * k_m;\n\t\t\t\tlet s_ = L + C * k_s;\n\t\t\t\tlet l = l_ * l_ * l_;\n\t\t\t\tlet m = m_ * m_ * m_;\n\t\t\t\tlet s = s_ * s_ * s_;\n\t\t\t\tlet ldt = 3 * l_dt * l_ * l_;\n\t\t\t\tlet mdt = 3 * m_dt * m_ * m_;\n\t\t\t\tlet sdt = 3 * s_dt * s_ * s_;\n\t\t\t\tlet ldt2 = 6 * l_dt * l_dt * l_;\n\t\t\t\tlet mdt2 = 6 * m_dt * m_dt * m_;\n\t\t\t\tlet sdt2 = 6 * s_dt * s_dt * s_;\n\t\t\t\tlet r$1 = 4.0767416621 * l - 3.3077115913 * m + .2309699292 * s - 1;\n\t\t\t\tlet r1 = 4.0767416621 * ldt - 3.3077115913 * mdt + .2309699292 * sdt;\n\t\t\t\tlet r2 = 4.0767416621 * ldt2 - 3.3077115913 * mdt2 + .2309699292 * sdt2;\n\t\t\t\tlet u_r = r1 / (r1 * r1 - .5 * r$1 * r2);\n\t\t\t\tlet t_r = -r$1 * u_r;\n\t\t\t\tlet g = -1.2684380046 * l + 2.6097574011 * m - .3413193965 * s - 1;\n\t\t\t\tlet g1 = -1.2684380046 * ldt + 2.6097574011 * mdt - .3413193965 * sdt;\n\t\t\t\tlet g2 = -1.2684380046 * ldt2 + 2.6097574011 * mdt2 - .3413193965 * sdt2;\n\t\t\t\tlet u_g = g1 / (g1 * g1 - .5 * g * g2);\n\t\t\t\tlet t_g = -g * u_g;\n\t\t\t\tlet b$1 = -.0041960863 * l - .7034186147 * m + 1.707614701 * s - 1;\n\t\t\t\tlet b1 = -.0041960863 * ldt - .7034186147 * mdt + 1.707614701 * sdt;\n\t\t\t\tlet b2 = -.0041960863 * ldt2 - .7034186147 * mdt2 + 1.707614701 * sdt2;\n\t\t\t\tlet u_b = b1 / (b1 * b1 - .5 * b$1 * b2);\n\t\t\t\tlet t_b = -b$1 * u_b;\n\t\t\t\tt_r = u_r >= 0 ? t_r : 1e6;\n\t\t\t\tt_g = u_g >= 0 ? t_g : 1e6;\n\t\t\t\tt_b = u_b >= 0 ? t_b : 1e6;\n\t\t\t\tt += Math.min(t_r, Math.min(t_g, t_b));\n\t\t\t}\n\t\t}\n\t}\n\treturn t;\n}\nfunction get_ST_max(a_, b_, cusp = null) {\n\tif (!cusp) cusp = find_cusp(a_, b_);\n\tlet L = cusp[0];\n\tlet C = cusp[1];\n\treturn [C / L, C / (1 - L)];\n}\nfunction get_Cs(L, a_, b_) {\n\tlet cusp = find_cusp(a_, b_);\n\tlet C_max = find_gamut_intersection(a_, b_, L, 1, L, cusp);\n\tlet ST_max = get_ST_max(a_, b_, cusp);\n\tlet S_mid = .11516993 + 1 / (7.4477897 + 4.1590124 * b_ + a_ * (-2.19557347 + 1.75198401 * b_ + a_ * (-2.13704948 - 10.02301043 * b_ + a_ * (-4.24894561 + 5.38770819 * b_ + 4.69891013 * a_))));\n\tlet T_mid = .11239642 + 1 / (1.6132032 - .68124379 * b_ + a_ * (.40370612 + .90148123 * b_ + a_ * (-.27087943 + .6122399 * b_ + a_ * (.00299215 - .45399568 * b_ - .14661872 * a_))));\n\tlet k$3 = C_max / Math.min(L * ST_max[0], (1 - L) * ST_max[1]);\n\tlet C_a = L * S_mid;\n\tlet C_b = (1 - L) * T_mid;\n\tlet C_mid = .9 * k$3 * Math.sqrt(Math.sqrt(1 / (1 / (C_a * C_a * C_a * C_a) + 1 / (C_b * C_b * C_b * C_b))));\n\tC_a = L * .4;\n\tC_b = (1 - L) * .8;\n\treturn [\n\t\tMath.sqrt(1 / (1 / (C_a * C_a) + 1 / (C_b * C_b))),\n\t\tC_mid,\n\t\tC_max\n\t];\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/okhsl/convertOklabToOkhsl.js\nfunction convertOklabToOkhsl(lab$2) {\n\tconst l = lab$2.l !== void 0 ? lab$2.l : 0;\n\tconst a = lab$2.a !== void 0 ? lab$2.a : 0;\n\tconst b = lab$2.b !== void 0 ? lab$2.b : 0;\n\tconst ret = {\n\t\tmode: \"okhsl\",\n\t\tl: toe(l)\n\t};\n\tif (lab$2.alpha !== void 0) ret.alpha = lab$2.alpha;\n\tlet c$1 = Math.sqrt(a * a + b * b);\n\tif (!c$1) {\n\t\tret.s = 0;\n\t\treturn ret;\n\t}\n\tlet [C_0, C_mid, C_max] = get_Cs(l, a / c$1, b / c$1);\n\tlet s;\n\tif (c$1 < C_mid) {\n\t\tlet k_0 = 0;\n\t\tlet k_1 = .8 * C_0;\n\t\tlet k_2 = 1 - k_1 / C_mid;\n\t\ts = (c$1 - k_0) / (k_1 + k_2 * (c$1 - k_0)) * .8;\n\t} else {\n\t\tlet k_0 = C_mid;\n\t\tlet k_1 = .2 * C_mid * C_mid * 1.25 * 1.25 / C_0;\n\t\tlet k_2 = 1 - k_1 / (C_max - C_mid);\n\t\ts = .8 + .2 * ((c$1 - k_0) / (k_1 + k_2 * (c$1 - k_0)));\n\t}\n\tif (s) {\n\t\tret.s = s;\n\t\tret.h = normalizeHue_default(Math.atan2(b, a) * 180 / Math.PI);\n\t}\n\treturn ret;\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/okhsl/convertOkhslToOklab.js\nfunction convertOkhslToOklab(hsl$3) {\n\tlet h = hsl$3.h !== void 0 ? hsl$3.h : 0;\n\tlet s = hsl$3.s !== void 0 ? hsl$3.s : 0;\n\tlet l = hsl$3.l !== void 0 ? hsl$3.l : 0;\n\tconst ret = {\n\t\tmode: \"oklab\",\n\t\tl: toe_inv(l)\n\t};\n\tif (hsl$3.alpha !== void 0) ret.alpha = hsl$3.alpha;\n\tif (!s || l === 1) {\n\t\tret.a = ret.b = 0;\n\t\treturn ret;\n\t}\n\tlet a_ = Math.cos(h / 180 * Math.PI);\n\tlet b_ = Math.sin(h / 180 * Math.PI);\n\tlet [C_0, C_mid, C_max] = get_Cs(ret.l, a_, b_);\n\tlet t, k_0, k_1, k_2;\n\tif (s < .8) {\n\t\tt = 1.25 * s;\n\t\tk_0 = 0;\n\t\tk_1 = .8 * C_0;\n\t\tk_2 = 1 - k_1 / C_mid;\n\t} else {\n\t\tt = 5 * (s - .8);\n\t\tk_0 = C_mid;\n\t\tk_1 = .2 * C_mid * C_mid * 1.25 * 1.25 / C_0;\n\t\tk_2 = 1 - k_1 / (C_max - C_mid);\n\t}\n\tlet C = k_0 + t * k_1 / (1 - k_2 * t);\n\tret.a = C * a_;\n\tret.b = C * b_;\n\treturn ret;\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/okhsl/modeOkhsl.js\nconst modeOkhsl = {\n\t...definition_default$1,\n\tmode: \"okhsl\",\n\tchannels: [\n\t\t\"h\",\n\t\t\"s\",\n\t\t\"l\",\n\t\t\"alpha\"\n\t],\n\tparse: [\"--okhsl\"],\n\tserialize: \"--okhsl\",\n\tfromMode: {\n\t\toklab: convertOklabToOkhsl,\n\t\trgb: (c$1) => convertOklabToOkhsl(convertRgbToOklab_default(c$1))\n\t},\n\ttoMode: {\n\t\toklab: convertOkhslToOklab,\n\t\trgb: (c$1) => convertOklabToRgb_default(convertOkhslToOklab(c$1))\n\t}\n};\nvar modeOkhsl_default = modeOkhsl;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/okhsv/convertOklabToOkhsv.js\nfunction convertOklabToOkhsv(lab$2) {\n\tlet l = lab$2.l !== void 0 ? lab$2.l : 0;\n\tlet a = lab$2.a !== void 0 ? lab$2.a : 0;\n\tlet b = lab$2.b !== void 0 ? lab$2.b : 0;\n\tlet c$1 = Math.sqrt(a * a + b * b);\n\tlet a_ = c$1 ? a / c$1 : 1;\n\tlet b_ = c$1 ? b / c$1 : 1;\n\tlet [S_max, T] = get_ST_max(a_, b_);\n\tlet S_0 = .5;\n\tlet k$3 = 1 - S_0 / S_max;\n\tlet t = T / (c$1 + l * T);\n\tlet L_v = t * l;\n\tlet C_v = t * c$1;\n\tlet L_vt = toe_inv(L_v);\n\tlet C_vt = C_v * L_vt / L_v;\n\tlet rgb_scale = convertOklabToLrgb_default({\n\t\tl: L_vt,\n\t\ta: a_ * C_vt,\n\t\tb: b_ * C_vt\n\t});\n\tlet scale_L = Math.cbrt(1 / Math.max(rgb_scale.r, rgb_scale.g, rgb_scale.b, 0));\n\tl = l / scale_L;\n\tc$1 = c$1 / scale_L * toe(l) / l;\n\tl = toe(l);\n\tconst ret = {\n\t\tmode: \"okhsv\",\n\t\ts: c$1 ? (S_0 + T) * C_v / (T * S_0 + T * k$3 * C_v) : 0,\n\t\tv: l ? l / L_v : 0\n\t};\n\tif (ret.s) ret.h = normalizeHue_default(Math.atan2(b, a) * 180 / Math.PI);\n\tif (lab$2.alpha !== void 0) ret.alpha = lab$2.alpha;\n\treturn ret;\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/okhsv/convertOkhsvToOklab.js\nfunction convertOkhsvToOklab(hsv$2) {\n\tconst ret = { mode: \"oklab\" };\n\tif (hsv$2.alpha !== void 0) ret.alpha = hsv$2.alpha;\n\tconst h = hsv$2.h !== void 0 ? hsv$2.h : 0;\n\tconst s = hsv$2.s !== void 0 ? hsv$2.s : 0;\n\tconst v = hsv$2.v !== void 0 ? hsv$2.v : 0;\n\tconst a_ = Math.cos(h / 180 * Math.PI);\n\tconst b_ = Math.sin(h / 180 * Math.PI);\n\tconst [S_max, T] = get_ST_max(a_, b_);\n\tconst S_0 = .5;\n\tconst k$3 = 1 - S_0 / S_max;\n\tconst L_v = 1 - s * S_0 / (S_0 + T - T * k$3 * s);\n\tconst C_v = s * T * S_0 / (S_0 + T - T * k$3 * s);\n\tconst L_vt = toe_inv(L_v);\n\tconst C_vt = C_v * L_vt / L_v;\n\tconst rgb_scale = convertOklabToLrgb_default({\n\t\tl: L_vt,\n\t\ta: a_ * C_vt,\n\t\tb: b_ * C_vt\n\t});\n\tconst scale_L = Math.cbrt(1 / Math.max(rgb_scale.r, rgb_scale.g, rgb_scale.b, 0));\n\tconst L_new = toe_inv(v * L_v);\n\tconst C = C_v * L_new / L_v;\n\tret.l = L_new * scale_L;\n\tret.a = C * a_ * scale_L;\n\tret.b = C * b_ * scale_L;\n\treturn ret;\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/okhsv/modeOkhsv.js\nconst modeOkhsv = {\n\t...definition_default$19,\n\tmode: \"okhsv\",\n\tchannels: [\n\t\t\"h\",\n\t\t\"s\",\n\t\t\"v\",\n\t\t\"alpha\"\n\t],\n\tparse: [\"--okhsv\"],\n\tserialize: \"--okhsv\",\n\tfromMode: {\n\t\toklab: convertOklabToOkhsv,\n\t\trgb: (c$1) => convertOklabToOkhsv(convertRgbToOklab_default(c$1))\n\t},\n\ttoMode: {\n\t\toklab: convertOkhsvToOklab,\n\t\trgb: (c$1) => convertOklabToRgb_default(convertOkhsvToOklab(c$1))\n\t}\n};\nvar modeOkhsv_default = modeOkhsv;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/xyb/constants.js\nconst bias = .0037930732552754493;\nconst bias_cbrt = Math.cbrt(bias);\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/xyb/convertRgbToXyb.js\nconst transfer$1 = (v) => Math.cbrt(v) - bias_cbrt;\nconst convertRgbToXyb = (color) => {\n\tconst { r: r$1, g, b, alpha } = convertRgbToLrgb_default(color);\n\tconst l = transfer$1(.3 * r$1 + .622 * g + .078 * b + bias);\n\tconst m = transfer$1(.23 * r$1 + .692 * g + .078 * b + bias);\n\tconst s = transfer$1(.2434226892454782 * r$1 + .2047674442449682 * g + .5518098665095535 * b + bias);\n\tconst res = {\n\t\tmode: \"xyb\",\n\t\tx: (l - m) / 2,\n\t\ty: (l + m) / 2,\n\t\tb: s - (l + m) / 2\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertRgbToXyb_default = convertRgbToXyb;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/xyb/convertXybToRgb.js\nconst transfer = (v) => Math.pow(v + bias_cbrt, 3);\nconst convertXybToRgb = ({ x, y, b, alpha }) => {\n\tif (x === void 0) x = 0;\n\tif (y === void 0) y = 0;\n\tif (b === void 0) b = 0;\n\tconst l = transfer(x + y) - bias;\n\tconst m = transfer(y - x) - bias;\n\tconst s = transfer(b + y) - bias;\n\tconst res = convertLrgbToRgb_default({\n\t\tr: 11.031566904639861 * l - 9.866943908131562 * m - .16462299650829934 * s,\n\t\tg: -3.2541473810744237 * l + 4.418770377582723 * m - .16462299650829934 * s,\n\t\tb: -3.6588512867136815 * l + 2.7129230459360922 * m + 1.9459282407775895 * s\n\t});\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertXybToRgb_default = convertXybToRgb;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/xyb/definition.js\nconst definition$1 = {\n\tmode: \"xyb\",\n\tchannels: [\n\t\t\"x\",\n\t\t\"y\",\n\t\t\"b\",\n\t\t\"alpha\"\n\t],\n\tparse: [\"--xyb\"],\n\tserialize: \"--xyb\",\n\ttoMode: { rgb: convertXybToRgb_default },\n\tfromMode: { rgb: convertRgbToXyb_default },\n\tranges: {\n\t\tx: [-.0154, .0281],\n\t\ty: [0, .8453],\n\t\tb: [-.2778, .388]\n\t},\n\tinterpolate: {\n\t\tx: interpolatorLinear,\n\t\ty: interpolatorLinear,\n\t\tb: interpolatorLinear,\n\t\talpha: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupAlpha\n\t\t}\n\t}\n};\nvar definition_default$26 = definition$1;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/yiq/convertRgbToYiq.js\nconst convertRgbToYiq = ({ r: r$1, g, b, alpha }) => {\n\tif (r$1 === void 0) r$1 = 0;\n\tif (g === void 0) g = 0;\n\tif (b === void 0) b = 0;\n\tconst res = {\n\t\tmode: \"yiq\",\n\t\ty: .29889531 * r$1 + .58662247 * g + .11448223 * b,\n\t\ti: .59597799 * r$1 - .2741761 * g - .32180189 * b,\n\t\tq: .21147017 * r$1 - .52261711 * g + .31114694 * b\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertRgbToYiq_default = convertRgbToYiq;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/yiq/convertYiqToRgb.js\nconst convertYiqToRgb = ({ y, i, q, alpha }) => {\n\tif (y === void 0) y = 0;\n\tif (i === void 0) i = 0;\n\tif (q === void 0) q = 0;\n\tconst res = {\n\t\tmode: \"rgb\",\n\t\tr: y + .95608445 * i + .6208885 * q,\n\t\tg: y - .27137664 * i - .6486059 * q,\n\t\tb: y - 1.10561724 * i + 1.70250126 * q\n\t};\n\tif (alpha !== void 0) res.alpha = alpha;\n\treturn res;\n};\nvar convertYiqToRgb_default = convertYiqToRgb;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/yiq/definition.js\nconst definition = {\n\tmode: \"yiq\",\n\ttoMode: { rgb: convertYiqToRgb_default },\n\tfromMode: { rgb: convertRgbToYiq_default },\n\tchannels: [\n\t\t\"y\",\n\t\t\"i\",\n\t\t\"q\",\n\t\t\"alpha\"\n\t],\n\tparse: [\"--yiq\"],\n\tserialize: \"--yiq\",\n\tranges: {\n\t\ti: [-.595, .595],\n\t\tq: [-.522, .522]\n\t},\n\tinterpolate: {\n\t\ty: interpolatorLinear,\n\t\ti: interpolatorLinear,\n\t\tq: interpolatorLinear,\n\t\talpha: {\n\t\t\tuse: interpolatorLinear,\n\t\t\tfixup: fixupAlpha\n\t\t}\n\t}\n};\nvar definition_default$27 = definition;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/round.js\nconst r = (value, precision) => Math.round(value * (precision = Math.pow(10, precision))) / precision;\nconst round = (precision = 4) => (value) => typeof value === \"number\" ? r(value, precision) : value;\nvar round_default = round;\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/formatter.js\nlet twoDecimals = round_default(2);\nconst clamp = (value) => Math.max(0, Math.min(1, value || 0));\nconst fixup = (value) => Math.round(clamp(value) * 255);\nconst rgb$2 = converter_default(\"rgb\");\nconst hsl$1 = converter_default(\"hsl\");\nconst serializeHex = (color) => {\n\tif (color === void 0) return;\n\tlet r$1 = fixup(color.r);\n\tlet g = fixup(color.g);\n\tlet b = fixup(color.b);\n\treturn \"#\" + (1 << 24 | r$1 << 16 | g << 8 | b).toString(16).slice(1);\n};\nconst serializeHex8 = (color) => {\n\tif (color === void 0) return;\n\tlet a = fixup(color.alpha !== void 0 ? color.alpha : 1);\n\treturn serializeHex(color) + (256 | a).toString(16).slice(1);\n};\nconst formatCss = (c$1) => {\n\tconst color = _prepare_default(c$1);\n\tif (!color) return;\n\tconst def = getMode(color.mode);\n\tif (!def.serialize || typeof def.serialize === \"string\") {\n\t\tlet res = `color(${def.serialize || `--${color.mode}`} `;\n\t\tdef.channels.forEach((ch, i) => {\n\t\t\tif (ch !== \"alpha\") res += (i ? \" \" : \"\") + (color[ch] !== void 0 ? color[ch] : \"none\");\n\t\t});\n\t\tif (color.alpha !== void 0 && color.alpha < 1) res += ` / ${color.alpha}`;\n\t\treturn res + \")\";\n\t}\n\tif (typeof def.serialize === \"function\") return def.serialize(color);\n};\nconst formatHex = (c$1) => serializeHex(rgb$2(c$1));\nconst formatHex8 = (c$1) => serializeHex8(rgb$2(c$1));\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/clamp.js\nconst rgb$1 = converter_default(\"rgb\");\nconst fixup_rgb = (c$1) => {\n\tconst res = {\n\t\tmode: c$1.mode,\n\t\tr: Math.max(0, Math.min(c$1.r !== void 0 ? c$1.r : 0, 1)),\n\t\tg: Math.max(0, Math.min(c$1.g !== void 0 ? c$1.g : 0, 1)),\n\t\tb: Math.max(0, Math.min(c$1.b !== void 0 ? c$1.b : 0, 1))\n\t};\n\tif (c$1.alpha !== void 0) res.alpha = c$1.alpha;\n\treturn res;\n};\nconst inrange_rgb = (c$1) => {\n\treturn c$1 !== void 0 && (c$1.r === void 0 || c$1.r >= 0 && c$1.r <= 1) && (c$1.g === void 0 || c$1.g >= 0 && c$1.g <= 1) && (c$1.b === void 0 || c$1.b >= 0 && c$1.b <= 1);\n};\nfunction displayable(color) {\n\treturn inrange_rgb(rgb$1(color));\n}\nfunction inGamut(mode = \"rgb\") {\n\tconst { gamut } = getMode(mode);\n\tif (!gamut) return (color) => true;\n\tconst conv = converter_default(typeof gamut === \"string\" ? gamut : mode);\n\treturn (color) => inrange_rgb(conv(color));\n}\nfunction clampGamut(mode = \"rgb\") {\n\tconst { gamut } = getMode(mode);\n\tif (!gamut) return (color) => _prepare_default(color);\n\tconst destMode = typeof gamut === \"string\" ? gamut : mode;\n\tconst destConv = converter_default(destMode);\n\tconst inDestGamut = inGamut(destMode);\n\treturn (color) => {\n\t\tconst original = _prepare_default(color);\n\t\tif (!original) return;\n\t\tconst converted = destConv(original);\n\t\tif (inDestGamut(converted)) return original;\n\t\tconst clamped = fixup_rgb(converted);\n\t\tif (original.mode === clamped.mode) return clamped;\n\t\treturn converter_default(original.mode)(clamped);\n\t};\n}\nfunction toGamut(dest = \"rgb\", mode = \"oklch\", delta = differenceEuclidean(\"oklch\"), jnd = .02) {\n\tconst destConv = converter_default(dest);\n\tconst destMode = getMode(dest);\n\tif (!destMode.gamut) return (color) => destConv(color);\n\tconst inDestinationGamut = inGamut(dest);\n\tconst clipToGamut = clampGamut(dest);\n\tconst ucs = converter_default(mode);\n\tconst { ranges } = getMode(mode);\n\tif (!ranges.l || !ranges.c) throw new Error(\"LCH-like space expected\");\n\treturn (color) => {\n\t\tcolor = _prepare_default(color);\n\t\tif (color === void 0) return;\n\t\tconst candidate = { ...ucs(color) };\n\t\tif (candidate.l === void 0) candidate.l = 0;\n\t\tif (candidate.c === void 0) candidate.c = 0;\n\t\tif (candidate.l >= ranges.l[1]) {\n\t\t\tconst res = {\n\t\t\t\t...destMode.white,\n\t\t\t\tmode: dest\n\t\t\t};\n\t\t\tif (color.alpha !== void 0) res.alpha = color.alpha;\n\t\t\treturn res;\n\t\t}\n\t\tif (candidate.l <= ranges.l[0]) {\n\t\t\tconst res = {\n\t\t\t\t...destMode.black,\n\t\t\t\tmode: dest\n\t\t\t};\n\t\t\tif (color.alpha !== void 0) res.alpha = color.alpha;\n\t\t\treturn res;\n\t\t}\n\t\tif (inDestinationGamut(candidate)) return destConv(candidate);\n\t\tlet start = 0;\n\t\tlet end = candidate.c;\n\t\tlet epsilon = (ranges.c[1] - ranges.c[0]) / 4e3;\n\t\tlet clipped = clipToGamut(candidate);\n\t\twhile (end - start > epsilon) {\n\t\t\tcandidate.c = (start + end) * .5;\n\t\t\tclipped = clipToGamut(candidate);\n\t\t\tif (inDestinationGamut(candidate) || delta && jnd > 0 && delta(candidate, clipped) <= jnd) start = candidate.c;\n\t\t\telse end = candidate.c;\n\t\t}\n\t\treturn destConv(inDestinationGamut(candidate) ? candidate : clipped);\n\t};\n}\n\n//#endregion\n//#region ../token-tools/dist/string-BIhoe-L2.js\nconst HEX_RE = /^#?([0-9a-f]{8}|[0-9a-f]{6}|[0-9a-f]{4}|[0-9a-f]{3})$/i;\nconst CULORI_TO_CSS = {\n\ta98: \"a98-rgb\",\n\thsl: \"hsl\",\n\thwb: \"hwb\",\n\tlab: \"lab\",\n\tlab65: \"lab-d65\",\n\tlch: \"lch\",\n\tlrgb: \"srgb-linear\",\n\toklab: \"oklab\",\n\toklch: \"oklch\",\n\tokhsv: \"okhsv\",\n\tp3: \"display-p3\",\n\tprophoto: \"prophoto-rgb\",\n\trec2020: \"rec2020\",\n\trgb: \"srgb\",\n\txyz50: \"xyz-d50\",\n\txyz65: \"xyz-d65\"\n};\nconst CSS_TO_CULORI = {\n\t\"a98-rgb\": \"a98\",\n\t\"display-p3\": \"p3\",\n\thsl: \"hsl\",\n\thwb: \"hwb\",\n\tlab: \"lab\",\n\t\"lab-d65\": \"lab65\",\n\tlch: \"lch\",\n\toklab: \"oklab\",\n\toklch: \"oklch\",\n\tokhsv: \"okhsv\",\n\t\"prophoto-rgb\": \"prophoto\",\n\trec2020: \"rec2020\",\n\tsrgb: \"rgb\",\n\t\"srgb-linear\": \"lrgb\",\n\txyz: \"xyz65\",\n\t\"xyz-d50\": \"xyz50\",\n\t\"xyz-d65\": \"xyz65\"\n};\n/** Parse any color */\nfunction parseColor(color) {\n\tconst result = parse_default(color);\n\tif (!result) throw new Error(`Unable to parse color \"${color}\"`);\n\tif (!(result.mode in CULORI_TO_CSS)) throw new Error(`Unsupported color space: ${result.mode}`);\n\tconst colorSpace = CULORI_TO_CSS[result.mode];\n\tlet components = [\n\t\t0,\n\t\t0,\n\t\t0\n\t];\n\tswitch (result.mode) {\n\t\tcase \"a98\":\n\t\tcase \"rec2020\":\n\t\tcase \"p3\":\n\t\tcase \"prophoto\":\n\t\tcase \"lrgb\":\n\t\tcase \"rgb\":\n\t\t\tcomponents = [\n\t\t\t\tresult.r,\n\t\t\t\tresult.g,\n\t\t\t\tresult.b\n\t\t\t];\n\t\t\tbreak;\n\t\tcase \"hsl\": {\n\t\t\tconst maxS = COLORSPACE[colorSpace].ranges[1]?.[1] ?? 1;\n\t\t\tconst maxL = COLORSPACE[colorSpace].ranges[2]?.[1] ?? 1;\n\t\t\tcomponents = [\n\t\t\t\tresult.h ?? 0,\n\t\t\t\tresult.s * maxS,\n\t\t\t\tresult.l * maxL\n\t\t\t];\n\t\t\tbreak;\n\t\t}\n\t\tcase \"hwb\": {\n\t\t\tconst maxW = COLORSPACE[colorSpace].ranges[1]?.[1] ?? 1;\n\t\t\tconst maxB = COLORSPACE[colorSpace].ranges[2]?.[1] ?? 1;\n\t\t\tcomponents = [\n\t\t\t\tresult.h ?? 0,\n\t\t\t\tresult.w * maxW,\n\t\t\t\tresult.b * maxB\n\t\t\t];\n\t\t\tbreak;\n\t\t}\n\t\tcase \"lab\":\n\t\tcase \"lab65\":\n\t\tcase \"oklab\":\n\t\t\tcomponents = [\n\t\t\t\tresult.l,\n\t\t\t\tresult.a,\n\t\t\t\tresult.b\n\t\t\t];\n\t\t\tbreak;\n\t\tcase \"lch\":\n\t\tcase \"oklch\":\n\t\t\tcomponents = [\n\t\t\t\tresult.l,\n\t\t\t\tresult.c,\n\t\t\t\tresult.h ?? 0\n\t\t\t];\n\t\t\tbreak;\n\t\tcase \"okhsv\":\n\t\t\tcomponents = [\n\t\t\t\tresult.h ?? 0,\n\t\t\t\tresult.s,\n\t\t\t\tresult.v\n\t\t\t];\n\t\t\tbreak;\n\t\tcase \"xyz50\":\n\t\tcase \"xyz65\":\n\t\t\tcomponents = [\n\t\t\t\tresult.x,\n\t\t\t\tresult.y,\n\t\t\t\tresult.z\n\t\t\t];\n\t\t\tbreak;\n\t}\n\tconst value = {\n\t\tcolorSpace,\n\t\tcomponents,\n\t\talpha: result.alpha ?? 1\n\t};\n\tif (HEX_RE.test(color)) value.hex = formatHex(result);\n\treturn value;\n}\n/** Convert a color token to a Culori color */\nfunction tokenToCulori(value) {\n\tswitch (value.colorSpace) {\n\t\tcase \"a98-rgb\":\n\t\tcase \"display-p3\":\n\t\tcase \"prophoto-rgb\":\n\t\tcase \"rec2020\":\n\t\tcase \"srgb\":\n\t\tcase \"srgb-linear\": {\n\t\t\tconst [r$1, g, b] = value.components;\n\t\t\treturn {\n\t\t\t\tmode: CSS_TO_CULORI[value.colorSpace] || value.colorSpace,\n\t\t\t\tr: r$1,\n\t\t\t\tg,\n\t\t\t\tb,\n\t\t\t\talpha: value.alpha\n\t\t\t};\n\t\t}\n\t\tcase \"hsl\": {\n\t\t\tconst [h, s, l] = value.components;\n\t\t\tconst maxS = COLORSPACE[value.colorSpace].ranges[1]?.[1] ?? 1;\n\t\t\tconst maxL = COLORSPACE[value.colorSpace].ranges[2]?.[1] ?? 1;\n\t\t\treturn {\n\t\t\t\tmode: \"hsl\",\n\t\t\t\th,\n\t\t\t\ts: s / maxS,\n\t\t\t\tl: l / maxL,\n\t\t\t\talpha: value.alpha\n\t\t\t};\n\t\t}\n\t\tcase \"hwb\": {\n\t\t\tconst [h, w, b] = value.components;\n\t\t\tconst maxW = COLORSPACE[value.colorSpace].ranges[1]?.[1] ?? 1;\n\t\t\tconst maxB = COLORSPACE[value.colorSpace].ranges[2]?.[1] ?? 1;\n\t\t\treturn {\n\t\t\t\tmode: \"hwb\",\n\t\t\t\th,\n\t\t\t\tw: w / maxW,\n\t\t\t\tb: b / maxB,\n\t\t\t\talpha: value.alpha\n\t\t\t};\n\t\t}\n\t\tcase \"lab\":\n\t\tcase \"lab-d65\":\n\t\tcase \"oklab\": {\n\t\t\tconst [l = 0, a = 0, b = 0] = value.components;\n\t\t\treturn {\n\t\t\t\tmode: value.colorSpace === \"lab-d65\" ? \"lab65\" : value.colorSpace,\n\t\t\t\tl,\n\t\t\t\ta,\n\t\t\t\tb,\n\t\t\t\talpha: value.alpha\n\t\t\t};\n\t\t}\n\t\tcase \"lch\":\n\t\tcase \"oklch\": {\n\t\t\tconst [l, c$1, h] = value.components;\n\t\t\treturn {\n\t\t\t\tmode: value.colorSpace,\n\t\t\t\tl,\n\t\t\t\tc: c$1,\n\t\t\t\th,\n\t\t\t\talpha: value.alpha\n\t\t\t};\n\t\t}\n\t\tcase \"okhsv\": {\n\t\t\tconst [h, s, v] = value.components;\n\t\t\treturn {\n\t\t\t\tmode: value.colorSpace,\n\t\t\t\th,\n\t\t\t\ts,\n\t\t\t\tv,\n\t\t\t\talpha: value.alpha\n\t\t\t};\n\t\t}\n\t\tcase \"xyz\":\n\t\tcase \"xyz-d50\":\n\t\tcase \"xyz-d65\": {\n\t\t\tconst [x, y, z] = value.components;\n\t\t\treturn {\n\t\t\t\tmode: CSS_TO_CULORI[value.colorSpace],\n\t\t\t\tx,\n\t\t\t\ty,\n\t\t\t\tz,\n\t\t\t\talpha: value.alpha\n\t\t\t};\n\t\t}\n\t\tdefault: throw new Error(`Invalid colorSpace \"${value.colorSpace}\". Expected one of ${Object.keys(CSS_TO_CULORI).join(\", \")}`);\n\t}\n}\n/** Complete list of CSS Module 4 Colorspaces */\nconst COLORSPACE = {\n\t\"a98-rgb\": { ranges: [\n\t\t[0, 1],\n\t\t[0, 1],\n\t\t[0, 1]\n\t] },\n\t\"display-p3\": { ranges: [\n\t\t[0, 1],\n\t\t[0, 1],\n\t\t[0, 1]\n\t] },\n\thsl: { ranges: [\n\t\t[0, 360],\n\t\t[0, 100],\n\t\t[0, 100]\n\t] },\n\thwb: { ranges: [\n\t\t[0, 360],\n\t\t[0, 100],\n\t\t[0, 100]\n\t] },\n\tlab: { ranges: [\n\t\t[0, 100],\n\t\t[-125, 125],\n\t\t[-125, 125]\n\t] },\n\t\"lab-d65\": { ranges: [\n\t\t[0, 100],\n\t\t[-125, 125],\n\t\t[-125, 125]\n\t] },\n\tlch: { ranges: [\n\t\t[0, 100],\n\t\t[0, 150],\n\t\t[0, 360]\n\t] },\n\toklab: { ranges: [\n\t\t[0, 1],\n\t\t[-.4, .4],\n\t\t[-.4, .4]\n\t] },\n\toklch: { ranges: [\n\t\t[0, 1],\n\t\t[0, .4],\n\t\t[0, 360]\n\t] },\n\tokhsv: { ranges: [\n\t\t[0, 360],\n\t\t[0, 1],\n\t\t[0, 1]\n\t] },\n\t\"prophoto-rgb\": { ranges: [\n\t\t[0, 1],\n\t\t[0, 1],\n\t\t[0, 1]\n\t] },\n\trec2020: { ranges: [\n\t\t[0, 1],\n\t\t[0, 1],\n\t\t[0, 1]\n\t] },\n\tsrgb: { ranges: [\n\t\t[0, 1],\n\t\t[0, 1],\n\t\t[0, 1]\n\t] },\n\t\"srgb-linear\": { ranges: [\n\t\t[0, 1],\n\t\t[0, 1],\n\t\t[0, 1]\n\t] },\n\t\"xyz-d50\": { ranges: [\n\t\t[0, 1],\n\t\t[0, 1],\n\t\t[0, 1]\n\t] },\n\txyz: { ranges: [\n\t\t[0, 1],\n\t\t[0, 1],\n\t\t[0, 1]\n\t] },\n\t\"xyz-d65\": { ranges: [\n\t\t[0, 1],\n\t\t[0, 1],\n\t\t[0, 1]\n\t] }\n};\n/** Turn a string into kebab-case */\nfunction kebabCase(str) {\n\tlet output = \"\";\n\tfor (const c$1 of str.split(\"\")) {\n\t\tif (c$1 === \".\") {\n\t\t\toutput += \"-\";\n\t\t\tcontinue;\n\t\t}\n\t\tlet isFirstUppercase = true;\n\t\tif (isFirstUppercase && /\\p{Uppercase_Letter}/u.test(c$1)) {\n\t\t\toutput += `-${c$1.toLocaleLowerCase()}`;\n\t\t\tisFirstUppercase = false;\n\t\t\tcontinue;\n\t\t} else isFirstUppercase = true;\n\t\toutput += c$1;\n\t}\n\treturn output;\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/wildcard-match@5.1.4/node_modules/wildcard-match/build/index.es.mjs\n/**\n* Escapes a character if it has a special meaning in regular expressions\n* and returns the character as is if it doesn't\n*/\nfunction escapeRegExpChar(char) {\n\tif (char === \"-\" || char === \"^\" || char === \"$\" || char === \"+\" || char === \".\" || char === \"(\" || char === \")\" || char === \"|\" || char === \"[\" || char === \"]\" || char === \"{\" || char === \"}\" || char === \"*\" || char === \"?\" || char === \"\\\\\") return \"\\\\\".concat(char);\n\telse return char;\n}\n/**\n* Escapes all characters in a given string that have a special meaning in regular expressions\n*/\nfunction escapeRegExpString(str) {\n\tvar result = \"\";\n\tfor (var i = 0; i < str.length; i++) result += escapeRegExpChar(str[i]);\n\treturn result;\n}\n/**\n* Transforms one or more glob patterns into a RegExp pattern\n*/\nfunction transform(pattern, separator) {\n\tif (separator === void 0) separator = true;\n\tif (Array.isArray(pattern)) {\n\t\tvar regExpPatterns = pattern.map(function(p$2) {\n\t\t\treturn \"^\".concat(transform(p$2, separator), \"$\");\n\t\t});\n\t\treturn \"(?:\".concat(regExpPatterns.join(\"|\"), \")\");\n\t}\n\tvar separatorSplitter = \"\";\n\tvar separatorMatcher = \"\";\n\tvar wildcard = \".\";\n\tif (separator === true) {\n\t\tseparatorSplitter = \"/\";\n\t\tseparatorMatcher = \"[/\\\\\\\\]\";\n\t\twildcard = \"[^/\\\\\\\\]\";\n\t} else if (separator) {\n\t\tseparatorSplitter = separator;\n\t\tseparatorMatcher = escapeRegExpString(separatorSplitter);\n\t\tif (separatorMatcher.length > 1) {\n\t\t\tseparatorMatcher = \"(?:\".concat(separatorMatcher, \")\");\n\t\t\twildcard = \"((?!\".concat(separatorMatcher, \").)\");\n\t\t} else wildcard = \"[^\".concat(separatorMatcher, \"]\");\n\t}\n\tvar requiredSeparator = separator ? \"\".concat(separatorMatcher, \"+?\") : \"\";\n\tvar optionalSeparator = separator ? \"\".concat(separatorMatcher, \"*?\") : \"\";\n\tvar segments = separator ? pattern.split(separatorSplitter) : [pattern];\n\tvar result = \"\";\n\tfor (var s = 0; s < segments.length; s++) {\n\t\tvar segment = segments[s];\n\t\tvar nextSegment = segments[s + 1];\n\t\tvar currentSeparator = \"\";\n\t\tif (!segment && s > 0) continue;\n\t\tif (separator) if (s === segments.length - 1) currentSeparator = optionalSeparator;\n\t\telse if (nextSegment !== \"**\") currentSeparator = requiredSeparator;\n\t\telse currentSeparator = \"\";\n\t\tif (separator && segment === \"**\") {\n\t\t\tif (currentSeparator) {\n\t\t\t\tresult += s === 0 ? \"\" : s === segments.length - 1 ? \"(?:\".concat(requiredSeparator, \"|$)\") : requiredSeparator;\n\t\t\t\tresult += \"(?:\".concat(wildcard, \"*?\").concat(currentSeparator, \")*?\");\n\t\t\t}\n\t\t\tcontinue;\n\t\t}\n\t\tfor (var c$1 = 0; c$1 < segment.length; c$1++) {\n\t\t\tvar char = segment[c$1];\n\t\t\tif (char === \"\\\\\") {\n\t\t\t\tif (c$1 < segment.length - 1) {\n\t\t\t\t\tresult += escapeRegExpChar(segment[c$1 + 1]);\n\t\t\t\t\tc$1++;\n\t\t\t\t}\n\t\t\t} else if (char === \"?\") result += wildcard;\n\t\t\telse if (char === \"*\") result += \"\".concat(wildcard, \"*?\");\n\t\t\telse result += escapeRegExpChar(char);\n\t\t}\n\t\tresult += currentSeparator;\n\t}\n\treturn result;\n}\nfunction isMatch(regexp, sample) {\n\tif (typeof sample !== \"string\") throw new TypeError(\"Sample must be a string, but \".concat(typeof sample, \" given\"));\n\treturn regexp.test(sample);\n}\n/**\n* Compiles one or more glob patterns into a RegExp and returns an isMatch function.\n* The isMatch function takes a sample string as its only argument and returns `true`\n* if the string matches the pattern(s).\n*\n* ```js\n* wildcardMatch('src/*.js')('src/index.js') //=> true\n* ```\n*\n* ```js\n* const isMatch = wildcardMatch('*.example.com', '.')\n* isMatch('foo.example.com') //=> true\n* isMatch('foo.bar.com') //=> false\n* ```\n*/\nfunction wildcardMatch(pattern, options) {\n\tif (typeof pattern !== \"string\" && !Array.isArray(pattern)) throw new TypeError(\"The first argument must be a single pattern string or an array of patterns, but \".concat(typeof pattern, \" given\"));\n\tif (typeof options === \"string\" || typeof options === \"boolean\") options = { separator: options };\n\tif (arguments.length === 2 && !(typeof options === \"undefined\" || typeof options === \"object\" && options !== null && !Array.isArray(options))) throw new TypeError(\"The second argument must be an options object or a string/boolean separator, but \".concat(typeof options, \" given\"));\n\toptions = options || {};\n\tif (options.separator === \"\\\\\") throw new Error(\"\\\\ is not a valid separator because it is used for escaping. Try setting the separator to `true` instead\");\n\tvar regexpPattern = transform(pattern, options.separator);\n\tvar regexp = new RegExp(\"^\".concat(regexpPattern, \"$\"), options.flags);\n\tvar fn$4 = isMatch.bind(null, regexp);\n\tfn$4.options = options;\n\tfn$4.pattern = pattern;\n\tfn$4.regexp = regexp;\n\treturn fn$4;\n}\n\n//#endregion\n//#region ../token-tools/dist/index.js\n/** Give a user pertinent feedback if they override a transform incorrectly */\nfunction validateCustomTransform(value, { $type }) {\n\tif (value) {\n\t\tif (typeof value !== \"string\" && typeof value !== \"object\" || Array.isArray(value)) throw new Error(`transform(): expected string or Object of strings, received ${Array.isArray(value) ? \"Array\" : typeof value}`);\n\t\tswitch ($type) {\n\t\t\tcase \"typography\":\n\t\t\t\tif (typeof value !== \"object\") throw new Error(\"transform(): typography tokens must be an object of keys\");\n\t\t\t\tbreak;\n\t\t}\n\t}\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/culori@4.0.2/node_modules/culori/src/index.js\nconst a98 = useMode(definition_default);\nconst cubehelix = useMode(definition_default$15);\nconst dlab = useMode(definition_default$16);\nconst dlch = useMode(definition_default$17);\nconst hsi = useMode(definition_default$18);\nconst hsl = useMode(definition_default$1);\nconst hsv = useMode(definition_default$19);\nconst hwb = useMode(definition_default$2);\nconst itp = useMode(definition_default$20);\nconst jab = useMode(definition_default$21);\nconst jch = useMode(definition_default$22);\nconst lab = useMode(definition_default$3);\nconst lab65 = useMode(definition_default$4);\nconst lch = useMode(definition_default$5);\nconst lch65 = useMode(definition_default$23);\nconst lchuv = useMode(definition_default$24);\nconst lrgb = useMode(definition_default$6);\nconst luv = useMode(definition_default$25);\nconst okhsl = useMode(modeOkhsl_default);\nconst okhsv = useMode(modeOkhsv_default);\nconst oklab = useMode(definition_default$7);\nconst oklch = useMode(definition_default$8);\nconst p3 = useMode(definition_default$9);\nconst prophoto = useMode(definition_default$10);\nconst rec2020 = useMode(definition_default$11);\nconst rgb = useMode(definition_default$12);\nconst xyb = useMode(definition_default$26);\nconst xyz50 = useMode(definition_default$13);\nconst xyz65 = useMode(definition_default$14);\nconst yiq = useMode(definition_default$27);\n\n//#endregion\n//#region ../token-tools/dist/css.js\nfunction defaultAliasTransform(token) {\n\tif (!token) throw new Error(\"Undefined token\");\n\treturn `var(${makeCSSVar(token.id)})`;\n}\n/** Generate shorthand CSS for select token types */\nfunction generateShorthand({ token, localID }) {\n\tswitch (token.$type) {\n\t\tcase \"transition\": return [\n\t\t\t\"duration\",\n\t\t\t\"delay\",\n\t\t\t\"timing-function\"\n\t\t].map((p$2) => makeCSSVar(`${localID}-${p$2}`, { wrapVar: true })).join(\" \");\n\t\tcase \"typography\": {\n\t\t\tconst typeVar = (name) => makeCSSVar(`${localID}-${name}`, { wrapVar: true });\n\t\t\tif (\"font-size\" in token.$value && \"font-family\" in token.$value) {\n\t\t\t\tlet output = \"\";\n\t\t\t\tfor (const prop of [\n\t\t\t\t\t\"font-style\",\n\t\t\t\t\t\"font-variant\",\n\t\t\t\t\t\"font-weight\"\n\t\t\t\t]) if (prop in token.$value) output += ` ${typeVar(prop)}`;\n\t\t\t\tlet fontSizeVar = typeVar(\"font-size\");\n\t\t\t\tif (\"line-height\" in token.$value) fontSizeVar += `/${typeVar(\"line-height\")}`;\n\t\t\t\toutput += ` ${fontSizeVar}`;\n\t\t\t\toutput += ` ${typeVar(\"font-family\")}`;\n\t\t\t\treturn output.trim();\n\t\t\t}\n\t\t\tbreak;\n\t\t}\n\t}\n}\nconst CSS_VAR_RE = /(?:(\\p{Uppercase_Letter}?[\\p{Lowercase_Letter}\\p{Number}]+|[\\p{Uppercase_Letter}\\p{Number}]+|[\\u{80}-\\u{10FFFF}\\p{Number}]+)|.)/u;\n/**\n* Generate a valid CSS variable from any string\n* Code by @dfrankland\n*/\nfunction makeCSSVar(name, { prefix, wrapVar = false } = {}) {\n\tif (typeof name !== \"string\") throw new Error(`makeCSSVar() Expected string, received ${name}`);\n\tlet property = name.split(CSS_VAR_RE).filter(Boolean).join(\"-\");\n\tif (prefix && !property.startsWith(`${prefix}-`)) property = `${prefix}-${property}`;\n\tconst finalProperty = `--${property}`.toLocaleLowerCase();\n\treturn wrapVar ? `var(${finalProperty})` : finalProperty;\n}\n/** Convert boolean value to CSS string */\nfunction transformBoolean(token, { tokensSet, transformAlias = defaultAliasTransform }) {\n\tif (token.aliasChain?.[0]) return transformAlias(tokensSet[token.aliasChain[0]]);\n\treturn token.$value === true ? \"1\" : \"0\";\n}\n/** Convert color value to CSS string */\nfunction transformColor(token, options) {\n\tconst { transformAlias = defaultAliasTransform, tokensSet } = options;\n\tif (token.aliasChain?.[0]) return transformAlias(tokensSet[token.aliasChain[0]]);\n\tconst { colorSpace, components, alpha = 1 } = typeof token.$value === \"string\" ? parseColor(token.$value) : token.$value;\n\tconst color = tokenToCulori({\n\t\tcolorSpace,\n\t\tcomponents,\n\t\talpha\n\t});\n\tif (!color) throw new Error(`Can’t convert color ${JSON.stringify(token.$value)} to Culori color`);\n\tlet formatColor = formatCss;\n\tif (options.color?.legacyHex) formatColor = color.alpha !== 1 ? formatHex8 : formatHex;\n\treturn displayable(color) ? formatColor(color) : downsample({\n\t\tcolorSpace,\n\t\tcomponents,\n\t\talpha\n\t}, color, options.color?.depth);\n}\nconst converters = {\n\ta98: useMode(definition_default),\n\thsl: useMode(definition_default$1),\n\thwb: useMode(definition_default$2),\n\tlab: useMode(definition_default$3),\n\tlab65: useMode(definition_default$4),\n\tlch: useMode(definition_default$5),\n\tlrgb: useMode(definition_default$6),\n\toklab: useMode(definition_default$7),\n\toklch: useMode(definition_default$8),\n\tokhsv: useMode(modeOkhsv_default),\n\tp3: useMode(definition_default$9),\n\tprophoto: useMode(definition_default$10),\n\trec2020: useMode(definition_default$11),\n\trgb: useMode(definition_default$12),\n\txyz50: useMode(definition_default$13),\n\txyz65: useMode(definition_default$14)\n};\nconst DEPTH_ROUNDING = {\n\t24: round_default(4),\n\t30: round_default(4),\n\t36: round_default(5),\n\t48: round_default(6)\n};\n/**\n* Downsample color to sRGB/Display P3/Rec2020 colorspaces.\n* Note: because Culori tends to convert to RGB color spaces to ensure the operation,\n* we have to do an additional step of converting back. So we’re not really converting;\n* we’re just preserving the original colorspace.\n*/\nfunction downsample($value, culoriColor, depth = 30) {\n\tif (!($value.colorSpace in CSS_TO_CULORI)) throw new Error(`Invalid colorSpace \"${$value.colorSpace}\". Expected one of: ${Object.keys(CSS_TO_CULORI).join(\", \")}`);\n\tconst conversionSpace = CSS_TO_CULORI[$value.colorSpace] || \"oklab\";\n\tlet gamutSpace = conversionSpace;\n\tif (gamutSpace === \"lab\" || gamutSpace === \"lab65\") gamutSpace = \"lch\";\n\telse if (gamutSpace === \"oklab\") gamutSpace = \"oklch\";\n\tlet srgb = converters[conversionSpace](toGamut(\"rgb\", gamutSpace)(culoriColor));\n\tlet p3$2 = converters[conversionSpace](toGamut(\"p3\", gamutSpace)(culoriColor));\n\tlet rec2020$2 = converters[conversionSpace](toGamut(\"rec2020\", gamutSpace)(culoriColor));\n\tif (typeof depth === \"number\") {\n\t\tif (!DEPTH_ROUNDING[depth]) throw new Error(`Invalid bit depth: ${depth}. Supported values: ${Object.keys(DEPTH_ROUNDING).join(\", \")}`);\n\t\tsrgb = roundColor(srgb, depth);\n\t\tp3$2 = roundColor(p3$2, depth);\n\t\trec2020$2 = roundColor(rec2020$2, depth);\n\t}\n\treturn {\n\t\t\".\": formatCss(culoriColor),\n\t\tsrgb: formatCss(srgb),\n\t\tp3: formatCss(p3$2),\n\t\trec2020: formatCss(rec2020$2)\n\t};\n}\n/** Round color to certain depth. */\nfunction roundColor(color, depth = 30) {\n\tif (depth === \"unlimited\") return color;\n\tconst newColor = { ...color };\n\tfor (const [k$3, v] of Object.entries(color)) {\n\t\tif (typeof v !== \"number\" || k$3 === \"mode\") continue;\n\t\tnewColor[k$3] = DEPTH_ROUNDING[depth](v);\n\t}\n\treturn newColor;\n}\n/** Convert dimension value to CSS */\nfunction transformDimension(token, options) {\n\tconst { tokensSet, transformAlias = defaultAliasTransform } = options;\n\tif (token.aliasChain?.[0]) return transformAlias(tokensSet[token.aliasChain[0]]);\n\treturn token.$value.value === 0 ? \"0\" : `${token.$value.value}${token.$value.unit}`;\n}\n/** Convert strokeStyle value to CSS */\nfunction transformStrokeStyle(token, options) {\n\tconst { tokensSet, transformAlias = defaultAliasTransform } = options;\n\tif (token.aliasChain?.[0]) return transformAlias(tokensSet[token.aliasChain[0]]);\n\treturn typeof token.$value === \"string\" ? token.$value : \"dashed\";\n}\n/** Convert border value to multiple CSS values */\nfunction transformBorder(token, options) {\n\tconst { tokensSet, transformAlias = defaultAliasTransform } = options;\n\tif (token.aliasChain?.[0]) return transformAlias(tokensSet[token.aliasChain[0]]);\n\tconst width = token.partialAliasOf?.width ? transformAlias(tokensSet[token.partialAliasOf.width]) : transformDimension({ $value: token.$value.width }, options);\n\tconst color = token.partialAliasOf?.color ? transformAlias(tokensSet[token.partialAliasOf.color]) : transformColor({ $value: token.$value.color }, options);\n\tconst style = token.partialAliasOf?.style ? transformAlias(tokensSet[token.partialAliasOf.style]) : transformStrokeStyle({ $value: token.$value.style }, options);\n\tconst formatBorder = (colorKey) => [\n\t\twidth,\n\t\tstyle,\n\t\ttypeof color === \"string\" ? color : color[colorKey]\n\t].join(\" \");\n\treturn typeof color === \"string\" || displayable(color.p3) ? formatBorder(\".\") : {\n\t\t\".\": formatBorder(\".\"),\n\t\tsrgb: formatBorder(\"srgb\"),\n\t\tp3: formatBorder(\"p3\"),\n\t\trec2020: formatBorder(\"rec2020\")\n\t};\n}\n/** Convert cubicBezier value to CSS */\nfunction transformCubicBezier(token, options) {\n\tconst { tokensSet, transformAlias = defaultAliasTransform } = options;\n\tif (token.aliasChain?.[0]) return transformAlias(tokensSet[token.aliasChain[0]]);\n\treturn `cubic-bezier(${token.$value.map((v, i) => token.partialAliasOf?.[i] ? transformAlias(tokensSet[token.partialAliasOf[i]]) : v).join(\", \")})`;\n}\n/** Convert duration value to CSS */\nfunction transformDuration(token, options) {\n\tconst { tokensSet, transformAlias = defaultAliasTransform } = options;\n\tif (token.aliasChain?.[0]) return transformAlias(tokensSet[token.aliasChain[0]]);\n\treturn `${token.$value.value}${token.$value.unit}`;\n}\nconst FONT_NAME_KEYWORD = /^[a-z-]+$/;\nfunction transformFontFamily(token, options) {\n\tconst { tokensSet, transformAlias = defaultAliasTransform } = options;\n\tif (token.aliasChain?.[0]) return transformAlias(tokensSet[token.aliasChain[0]]);\n\treturn token.$value.map((fontName) => FONT_NAME_KEYWORD.test(fontName) ? fontName : `\"${fontName}\"`).join(\", \");\n}\n/** Convert fontWeight value to CSS */\nfunction transformFontWeight(token, options) {\n\tconst { tokensSet, transformAlias = defaultAliasTransform } = options;\n\tif (token.aliasChain?.[0]) return transformAlias(tokensSet[token.aliasChain[0]]);\n\treturn String(token.$value);\n}\n/** Convert gradient value to CSS */\nfunction transformGradient(token, options) {\n\tconst { tokensSet, transformAlias = defaultAliasTransform } = options;\n\tif (token.aliasChain?.[0]) return transformAlias(tokensSet[token.aliasChain[0]]);\n\tlet isHDR = false;\n\tconst colors = [];\n\tconst positions = [];\n\tfor (let i = 0; i < token.$value.length; i++) {\n\t\tconst { color, position } = token.$value[i];\n\t\tconst colorValue = token.partialAliasOf?.[i]?.color ? transformAlias(tokensSet[token.partialAliasOf[i].color]) : transformColor({ $value: color }, options);\n\t\tif (typeof colorValue !== \"string\") isHDR = true;\n\t\tcolors.push(colorValue);\n\t\tpositions.push(token.partialAliasOf?.[i]?.position ? transformAlias(tokensSet[token.partialAliasOf[i].position]) : `${100 * position}%`);\n\t}\n\tfunction formatStop(i, colorKey = \".\") {\n\t\treturn `${typeof colors[i] === \"string\" ? colors[i] : colors[i][colorKey]} ${positions[i]}`;\n\t}\n\treturn !isHDR ? token.$value.map((_, i) => formatStop(i, positions[i])).join(\", \") : {\n\t\t\".\": token.$value.map((_, i) => formatStop(i, \".\")).join(\", \"),\n\t\tsrgb: token.$value.map((_, i) => formatStop(i, \"srgb\")).join(\", \"),\n\t\tp3: token.$value.map((_, i) => formatStop(i, \"p3\")).join(\", \"),\n\t\trec2020: token.$value.map((_, i) => formatStop(i, \"rec2020\")).join(\", \")\n\t};\n}\n/** Convert link value to CSS */\nfunction transformLink(token, options) {\n\tconst { tokensSet, transformAlias = defaultAliasTransform } = options;\n\tif (token.aliasChain?.[0]) return transformAlias(tokensSet[token.aliasChain[0]]);\n\treturn `url(\"${token.$value}\")`;\n}\n/** Convert number value to CSS */\nfunction transformNumber(token, options) {\n\tconst { tokensSet, transformAlias = defaultAliasTransform } = options;\n\tif (token.aliasChain?.[0]) return transformAlias(tokensSet[token.aliasChain[0]]);\n\treturn String(token.$value);\n}\n/** Convert shadow subvalue to CSS */\nfunction transformShadowLayer(value, options) {\n\tconst { tokensSet, colorValue, partialAliasOf, transformAlias = defaultAliasTransform } = options;\n\tconst offsetX = partialAliasOf?.offsetX ? transformAlias(tokensSet[partialAliasOf.offsetX]) : transformDimension({ $value: value.offsetX }, options);\n\tconst offsetY = partialAliasOf?.offsetY ? transformAlias(tokensSet[partialAliasOf.offsetY]) : transformDimension({ $value: value.offsetY }, options);\n\tconst blur = partialAliasOf?.blur ? transformAlias(tokensSet[partialAliasOf.blur]) : transformDimension({ $value: value.blur }, options);\n\tconst spread = partialAliasOf?.spread ? transformAlias(tokensSet[partialAliasOf.spread]) : transformDimension({ $value: value.spread }, options);\n\treturn [\n\t\tvalue?.inset === true ? \"inset\" : void 0,\n\t\toffsetX,\n\t\toffsetY,\n\t\tblur,\n\t\tspread,\n\t\tcolorValue\n\t].filter(Boolean).join(\" \");\n}\n/** Convert shadow value to CSS */\nfunction transformShadow(token, options) {\n\tconst { tokensSet, transformAlias = defaultAliasTransform } = options;\n\tif (token.aliasChain?.[0]) return transformAlias(tokensSet[token.aliasChain[0]]);\n\tconst colors = token.$value.map((v, i) => token.partialAliasOf?.[i]?.color ? transformAlias(tokensSet[token.partialAliasOf[i].color]) : transformColor({ $value: v.color }, options));\n\tconst isHDR = colors.some((c$1) => typeof c$1 === \"object\");\n\tconst formatShadow = (colorKey) => token.$value.map((v, i) => transformShadowLayer(v, {\n\t\ttokensSet,\n\t\tcolorValue: typeof colors[i] === \"string\" ? colors[i] : colors[i][colorKey],\n\t\tpartialAliasOf: token.partialAliasOf?.[i],\n\t\ttransformAlias\n\t})).join(\", \");\n\treturn !isHDR ? formatShadow(\".\") : {\n\t\t\".\": formatShadow(\".\"),\n\t\tsrgb: formatShadow(\"srgb\"),\n\t\tp3: formatShadow(\"p3\"),\n\t\trec2020: formatShadow(\"rec2020\")\n\t};\n}\n/** Convert string value to CSS */\nfunction transformString(token, options) {\n\tconst { tokensSet, transformAlias = defaultAliasTransform } = options;\n\tif (token.aliasChain?.[0]) return transformAlias(tokensSet[token.aliasChain[0]]);\n\treturn String(token.$value);\n}\n/** Convert transition value to shorthand */\nfunction transformTransition(token, options) {\n\tconst { tokensSet, transformAlias = defaultAliasTransform } = options;\n\tif (token.aliasChain?.[0]) return transformAlias(tokensSet[token.aliasChain[0]]);\n\treturn `${token.partialAliasOf?.duration ? transformAlias(tokensSet[token.partialAliasOf.duration]) : transformDuration({ $value: token.$value.duration }, options)} ${token.partialAliasOf?.delay ? transformAlias(tokensSet[token.partialAliasOf.delay]) : transformDuration({ $value: token.$value.delay }, options)} ${token.partialAliasOf?.timingFunction ? transformAlias(tokensSet[token.partialAliasOf.timingFunction]) : transformCubicBezier({ $value: token.$value.timingFunction }, options)}`;\n}\n/** Convert typography value to multiple CSS values */\nfunction transformTypography(token, options) {\n\tconst { tokensSet, transformAlias = defaultAliasTransform } = options;\n\tconst output = {};\n\tfor (const [property, subvalue] of Object.entries(token.$value)) {\n\t\tlet transformedValue;\n\t\tconst aliasedID = token.aliasChain?.[0] ?? token.partialAliasOf?.[property];\n\t\tif (aliasedID) {\n\t\t\tconst resolvedToken = tokensSet[aliasedID];\n\t\t\ttransformedValue = transformAlias(resolvedToken.$type === \"typography\" ? { id: `${aliasedID}-${property}` } : resolvedToken);\n\t\t} else switch (property) {\n\t\t\tcase \"fontFamily\":\n\t\t\t\ttransformedValue = transformFontFamily({ $value: subvalue }, options);\n\t\t\t\tbreak;\n\t\t\tcase \"fontSize\":\n\t\t\tcase \"letterSpacing\":\n\t\t\t\ttransformedValue = transformDimension({ $value: subvalue }, options);\n\t\t\t\tbreak;\n\t\t\tcase \"fontWeight\":\n\t\t\t\ttransformedValue = transformFontWeight({ $value: subvalue }, options);\n\t\t\t\tbreak;\n\t\t\tcase \"lineHeight\":\n\t\t\t\tif (typeof subvalue === \"number\") transformedValue = transformNumber({ $value: subvalue }, options);\n\t\t\t\telse transformedValue = transformDimension({ $value: subvalue }, options);\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\ttransformedValue = transformString({ $value: subvalue }, options);\n\t\t\t\tbreak;\n\t\t}\n\t\toutput[kebabCase(property)] = transformedValue;\n\t}\n\treturn output;\n}\n/** Main CSS Transform */\nfunction transformCSSValue(token, { mode, ...options }) {\n\tconst selectedMode = token.mode[mode];\n\tif (!selectedMode) return;\n\tconst tokenWithModeValue = {\n\t\tid: token.id,\n\t\t$type: token.$type,\n\t\t...selectedMode\n\t};\n\tswitch (tokenWithModeValue.$type) {\n\t\tcase \"boolean\": return transformBoolean(tokenWithModeValue, options);\n\t\tcase \"border\": return transformBorder(tokenWithModeValue, options);\n\t\tcase \"color\": return transformColor(tokenWithModeValue, options);\n\t\tcase \"cubicBezier\": return transformCubicBezier(tokenWithModeValue, options);\n\t\tcase \"dimension\": return transformDimension(tokenWithModeValue, options);\n\t\tcase \"duration\": return transformDuration(tokenWithModeValue, options);\n\t\tcase \"fontFamily\": return transformFontFamily(tokenWithModeValue, options);\n\t\tcase \"fontWeight\": return transformFontWeight(tokenWithModeValue, options);\n\t\tcase \"gradient\": return transformGradient(tokenWithModeValue, options);\n\t\tcase \"link\": return transformLink(tokenWithModeValue, options);\n\t\tcase \"number\": return transformNumber(tokenWithModeValue, options);\n\t\tcase \"shadow\": return transformShadow(tokenWithModeValue, options);\n\t\tcase \"string\": return transformString(tokenWithModeValue, options);\n\t\tcase \"strokeStyle\": return transformStrokeStyle(tokenWithModeValue, options);\n\t\tcase \"transition\": return transformTransition(tokenWithModeValue, options);\n\t\tcase \"typography\": return transformTypography(tokenWithModeValue, options);\n\t}\n}\n\n//#endregion\n//#region src/lib.ts\nconst FORMAT_ID = \"css\";\nconst FILE_PREFIX = `/* -------------------------------------------\n * Autogenerated by ⛋ Terrazzo. DO NOT EDIT!\n * ------------------------------------------- */`;\n/** Convert CSSRules into a formatted, indented CSS string */\nfunction printRules(rules) {\n\tconst output = [];\n\tfor (const rule of rules) {\n\t\tif (!rule.selectors.length || !Object.keys(rule.declarations).length) continue;\n\t\tconst mqSelectors = [];\n\t\tconst joinableSelectors = [];\n\t\tfor (const s of rule.selectors) (s.startsWith(\"@\") ? mqSelectors : joinableSelectors).push(s);\n\t\tfor (const s of mqSelectors) output.push(_printRule({\n\t\t\t...rule,\n\t\t\tselectors: [s]\n\t\t}));\n\t\tif (joinableSelectors.length) output.push(_printRule({\n\t\t\t...rule,\n\t\t\tselectors: joinableSelectors\n\t\t}));\n\t}\n\treturn output.join(\"\\n\\n\");\n}\nfunction _printRule(rule) {\n\tconst output = [];\n\tconst isMediaQuery = rule.selectors.some((s) => s.startsWith(\"@\"));\n\tlet indent = \"\";\n\tif (rule.nestedQuery && isMediaQuery) {\n\t\toutput.push(`${indent}${rule.selectors.join(`,\\n${indent}`)} {`);\n\t\tindent += \" \";\n\t\toutput.push(`${indent}${rule.nestedQuery} {`);\n\t} else if (rule.nestedQuery && !isMediaQuery) {\n\t\toutput.push(`${indent}${rule.nestedQuery} {`);\n\t\tindent += \" \";\n\t\toutput.push(`${indent}${rule.selectors.join(`,\\n${indent}`)} {`);\n\t} else output.push(`${indent}${rule.selectors.join(`,\\n${indent}`)} {`);\n\tindent += \" \";\n\tif (isMediaQuery) {\n\t\toutput.push(`${indent}:root {`);\n\t\tindent += \" \";\n\t}\n\tfor (const [k$3, d] of Object.entries(rule.declarations)) output.push(`${indent}${k$3}: ${d.value};${d.description ? ` /* ${d.description} */` : \"\"}`);\n\twhile (indent !== \"\") {\n\t\tindent = indent.substring(0, indent.length - 2);\n\t\toutput.push(`${indent}}`);\n\t}\n\treturn output.join(\"\\n\");\n}\n\n//#endregion\n//#region src/build/utility-css.ts\nconst GROUP_REGEX = {\n\tbg: /(^bg-|-bg-)/,\n\tborder: /(^border-|-border-)/,\n\tfont: /(^font-|-font-)/,\n\tgap: /(^gap-|-gap-)/,\n\tm: /(^margin-|-margin-|)/,\n\tp: /(^padding-|-padding-|)/,\n\tshadow: /(^shadow-|-shadow-)/,\n\ttext: /(^text-|-text-)/\n};\n/** Make CSS class name from transformed token */\nfunction makeSelector(token, prefix, subgroup) {\n\treturn `.${prefix}${subgroup || \"\"}-${kebabCase(token.token.id).replace(GROUP_REGEX[prefix], \"\")}`;\n}\nfunction makeVarValue(token) {\n\treturn { value: makeCSSVar(token.localID ?? token.token.id, { wrapVar: true }) };\n}\nfunction generateUtilityCSS(groups, tokens) {\n\tconst output = [];\n\tconst groupEntries = Object.entries(groups);\n\tgroupEntries.sort((a, b) => a[0].localeCompare(b[0]));\n\tfor (const [group, selectors] of groupEntries) {\n\t\tconst selectorMatcher = wildcardMatch(selectors);\n\t\tconst matchingTokens = tokens.filter((token) => selectorMatcher(token.token.id));\n\t\tif (!matchingTokens.length) {\n\t\t\tconsole.warn(`[@terrazzo/plugin-css] utility group \"${group}\" matched 0 tokens: ${JSON.stringify(selectors)}`);\n\t\t\tbreak;\n\t\t}\n\t\tswitch (group) {\n\t\t\tcase \"bg\":\n\t\t\t\tfor (const token of matchingTokens) {\n\t\t\t\t\tconst selector = makeSelector(token, \"bg\");\n\t\t\t\t\tswitch (token.token.$type) {\n\t\t\t\t\t\tcase \"color\":\n\t\t\t\t\t\t\toutput.push({\n\t\t\t\t\t\t\t\tselectors: [selector],\n\t\t\t\t\t\t\t\tdeclarations: { \"background-color\": makeVarValue(token) }\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase \"gradient\": output.push({\n\t\t\t\t\t\t\tselectors: [selector],\n\t\t\t\t\t\t\tdeclarations: { \"background-image\": { value: `linear-gradient(${makeCSSVar(token.localID ?? token.token.id, { wrapVar: true })})` } }\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\tcase \"border\":\n\t\t\t\tfor (const token of matchingTokens) {\n\t\t\t\t\tconst property = {\n\t\t\t\t\t\tborder: \"border\",\n\t\t\t\t\t\tcolor: \"border-color\",\n\t\t\t\t\t\tdimension: \"border-width\",\n\t\t\t\t\t\tstrokeStyle: \"border-style\"\n\t\t\t\t\t}[token.token.$type];\n\t\t\t\t\tif (property) output.push({\n\t\t\t\t\t\tselectors: [makeSelector(token, \"border\")],\n\t\t\t\t\t\tdeclarations: { [property]: makeVarValue(token) }\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\tfor (const token of matchingTokens) for (const side of [\n\t\t\t\t\t\"top\",\n\t\t\t\t\t\"right\",\n\t\t\t\t\t\"bottom\",\n\t\t\t\t\t\"left\"\n\t\t\t\t]) {\n\t\t\t\t\tconst property = {\n\t\t\t\t\t\tborder: `border-${side}`,\n\t\t\t\t\t\tcolor: `border-${side}-color`,\n\t\t\t\t\t\tdimension: `border-${side}-width`,\n\t\t\t\t\t\tstrokeStyle: `border-${side}-style`\n\t\t\t\t\t}[token.token.$type];\n\t\t\t\t\tif (property) output.push({\n\t\t\t\t\t\tselectors: [makeSelector(token, \"border\", `-${side}`)],\n\t\t\t\t\t\tdeclarations: { [property]: makeVarValue(token) }\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\tcase \"font\":\n\t\t\t\tfor (const token of matchingTokens) {\n\t\t\t\t\tconst selector = makeSelector(token, \"font\");\n\t\t\t\t\tif (token.token.$type === \"typography\" && token.type === \"MULTI_VALUE\") {\n\t\t\t\t\t\tconst declarations = {};\n\t\t\t\t\t\tfor (const k$3 of Object.keys(token.value)) declarations[k$3] = { value: makeCSSVar(`${token.localID ?? token.token.id}-${k$3}`, { wrapVar: true }) };\n\t\t\t\t\t\toutput.push({\n\t\t\t\t\t\t\tselectors: [selector],\n\t\t\t\t\t\t\tdeclarations\n\t\t\t\t\t\t});\n\t\t\t\t\t} else {\n\t\t\t\t\t\tconst property = {\n\t\t\t\t\t\t\tdimension: \"font-size\",\n\t\t\t\t\t\t\tfontFamily: \"font-family\",\n\t\t\t\t\t\t\tfontWeight: \"font-weight\"\n\t\t\t\t\t\t}[token.token.$type];\n\t\t\t\t\t\tif (property) output.push({\n\t\t\t\t\t\t\tselectors: [selector],\n\t\t\t\t\t\t\tdeclarations: { [property]: makeVarValue(token) }\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\tcase \"layout\": {\n\t\t\t\tconst filteredTokens = matchingTokens.filter((t) => t.token.$type === \"dimension\");\n\t\t\t\tfor (const token of filteredTokens) output.push({\n\t\t\t\t\tselectors: [makeSelector(token, \"gap\")],\n\t\t\t\t\tdeclarations: { gap: makeVarValue(token) }\n\t\t\t\t});\n\t\t\t\tfor (const token of filteredTokens) output.push({\n\t\t\t\t\tselectors: [makeSelector(token, \"gap\", \"-col\")],\n\t\t\t\t\tdeclarations: { \"column-gap\": makeVarValue(token) }\n\t\t\t\t});\n\t\t\t\tfor (const token of filteredTokens) output.push({\n\t\t\t\t\tselectors: [makeSelector(token, \"gap\", \"-row\")],\n\t\t\t\t\tdeclarations: { \"row-gap\": makeVarValue(token) }\n\t\t\t\t});\n\t\t\t\tfor (const prefix of [\"m\", \"p\"]) {\n\t\t\t\t\tconst property = prefix === \"m\" ? \"margin\" : \"padding\";\n\t\t\t\t\tfor (const token of filteredTokens) output.push({\n\t\t\t\t\t\tselectors: [makeSelector(token, prefix, \"a\")],\n\t\t\t\t\t\tdeclarations: { [property]: makeVarValue(token) }\n\t\t\t\t\t});\n\t\t\t\t\tfor (const token of filteredTokens) {\n\t\t\t\t\t\tconst value = makeVarValue(token);\n\t\t\t\t\t\toutput.push({\n\t\t\t\t\t\t\tselectors: [makeSelector(token, prefix, \"x\")],\n\t\t\t\t\t\t\tdeclarations: {\n\t\t\t\t\t\t\t\t[`${property}-left`]: value,\n\t\t\t\t\t\t\t\t[`${property}-right`]: value\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}, {\n\t\t\t\t\t\t\tselectors: [makeSelector(token, prefix, \"y\")],\n\t\t\t\t\t\t\tdeclarations: {\n\t\t\t\t\t\t\t\t[`${property}-bottom`]: value,\n\t\t\t\t\t\t\t\t[`${property}-top`]: value\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t\tfor (const side of [\n\t\t\t\t\t\t\"top\",\n\t\t\t\t\t\t\"right\",\n\t\t\t\t\t\t\"bottom\",\n\t\t\t\t\t\t\"left\"\n\t\t\t\t\t]) for (const token of filteredTokens) output.push({\n\t\t\t\t\t\tselectors: [makeSelector(token, prefix, side[0])],\n\t\t\t\t\t\tdeclarations: { [`${property}-${side}`]: makeVarValue(token) }\n\t\t\t\t\t});\n\t\t\t\t\tfor (const token of filteredTokens) {\n\t\t\t\t\t\tconst value = makeVarValue(token);\n\t\t\t\t\t\toutput.push({\n\t\t\t\t\t\t\tselectors: [makeSelector(token, prefix, \"s\")],\n\t\t\t\t\t\t\tdeclarations: { [`${property}-inline-start`]: value }\n\t\t\t\t\t\t}, {\n\t\t\t\t\t\t\tselectors: [makeSelector(token, prefix, \"e\")],\n\t\t\t\t\t\t\tdeclarations: { [`${property}-inline-end`]: value }\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase \"shadow\":\n\t\t\t\tfor (const token of matchingTokens) if (token.token.$type === \"shadow\") output.push({\n\t\t\t\t\tselectors: [makeSelector(token, \"shadow\")],\n\t\t\t\t\tdeclarations: { \"box-shadow\": makeVarValue(token) }\n\t\t\t\t});\n\t\t\t\tbreak;\n\t\t\tcase \"text\":\n\t\t\t\tfor (const token of matchingTokens) {\n\t\t\t\t\tconst selector = makeSelector(token, \"text\");\n\t\t\t\t\tconst value = makeVarValue(token);\n\t\t\t\t\tswitch (token.token.$type) {\n\t\t\t\t\t\tcase \"color\":\n\t\t\t\t\t\t\toutput.push({\n\t\t\t\t\t\t\t\tselectors: [selector],\n\t\t\t\t\t\t\t\tdeclarations: { color: value }\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase \"gradient\":\n\t\t\t\t\t\t\toutput.push({\n\t\t\t\t\t\t\t\tselectors: [selector],\n\t\t\t\t\t\t\t\tdeclarations: {\n\t\t\t\t\t\t\t\t\tbackground: { value: `-webkit-linear-gradient(${value.value})` },\n\t\t\t\t\t\t\t\t\t\"-webkit-background-clip\": { value: \"text\" },\n\t\t\t\t\t\t\t\t\t\"-webkit-text-fill-color\": { value: \"transparent\" }\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tconsole.warn(`[@terrazzo/plugin-css] unknown utility CSS group \"${group}\", ignoring`);\n\t\t\t\tbreak;\n\t\t}\n\t}\n\treturn output;\n}\n\n//#endregion\n//#region src/build/index.ts\nconst P3_MQ = \"@media (color-gamut: p3)\";\nconst REC2020_MQ = \"@media (color-gamut: rec2020)\";\nfunction buildFormat({ getTransforms, exclude, utility, modeSelectors, baseSelector, baseScheme }) {\n\tconst rules = [];\n\tconst rootTokens = getTransforms({\n\t\tformat: FORMAT_ID,\n\t\tmode: \".\"\n\t});\n\tif (rootTokens.length) {\n\t\tconst rootRule = {\n\t\t\tselectors: [baseSelector],\n\t\t\tdeclarations: {}\n\t\t};\n\t\tconst p3Rule = {\n\t\t\tselectors: [baseSelector],\n\t\t\tnestedQuery: P3_MQ,\n\t\t\tdeclarations: {}\n\t\t};\n\t\tconst rec2020Rule = {\n\t\t\tselectors: [baseSelector],\n\t\t\tnestedQuery: REC2020_MQ,\n\t\t\tdeclarations: {}\n\t\t};\n\t\trules.push(rootRule, p3Rule, rec2020Rule);\n\t\tconst shouldExclude = wildcardMatch(exclude ?? []);\n\t\tif (baseScheme) rootRule.declarations[\"color-scheme\"] = { value: baseScheme };\n\t\tfor (const token of rootTokens) {\n\t\t\tif (shouldExclude(token.token.id)) continue;\n\t\t\tconst localID = token.localID ?? token.token.id;\n\t\t\tconst aliasTokens = token.token.aliasedBy?.length ? getTransforms({\n\t\t\t\tformat: FORMAT_ID,\n\t\t\t\tid: token.token.aliasedBy\n\t\t\t}) : [];\n\t\t\tif (token.type === \"SINGLE_VALUE\") rootRule.declarations[localID] = {\n\t\t\t\tvalue: token.value,\n\t\t\t\tdescription: token.token.$description\n\t\t\t};\n\t\t\telse if (token.value.srgb && token.value.p3 && token.value.rec2020) {\n\t\t\t\trootRule.declarations[localID] = {\n\t\t\t\t\tvalue: token.value.srgb,\n\t\t\t\t\tdescription: token.token.$description\n\t\t\t\t};\n\t\t\t\tif (token.value.p3 !== token.value.srgb) {\n\t\t\t\t\tp3Rule.declarations[localID] = {\n\t\t\t\t\t\tvalue: token.value.p3,\n\t\t\t\t\t\tdescription: token.token.$description\n\t\t\t\t\t};\n\t\t\t\t\trec2020Rule.declarations[localID] = {\n\t\t\t\t\t\tvalue: token.value.rec2020,\n\t\t\t\t\t\tdescription: token.token.$description\n\t\t\t\t\t};\n\t\t\t\t\tfor (const alias of aliasTokens) if (alias.localID && typeof alias.value === \"string\") {\n\t\t\t\t\t\tp3Rule.declarations[alias.localID] ??= {\n\t\t\t\t\t\t\tvalue: alias.value,\n\t\t\t\t\t\t\tdescription: token.token.$description\n\t\t\t\t\t\t};\n\t\t\t\t\t\trec2020Rule.declarations[alias.localID] ??= {\n\t\t\t\t\t\t\tvalue: alias.value,\n\t\t\t\t\t\t\tdescription: token.token.$description\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (token.type === \"MULTI_VALUE\") {\n\t\t\t\tfor (const [name, value] of Object.entries(token.value)) rootRule.declarations[name === \".\" ? localID : [localID, name].join(\"-\")] = {\n\t\t\t\t\tvalue,\n\t\t\t\t\tdescription: token.token.$description\n\t\t\t\t};\n\t\t\t\tconst shorthand = generateShorthand({\n\t\t\t\t\ttoken: {\n\t\t\t\t\t\t...token.token,\n\t\t\t\t\t\t$value: token.value\n\t\t\t\t\t},\n\t\t\t\t\tlocalID\n\t\t\t\t});\n\t\t\t\tif (shorthand) rootRule.declarations[token.localID ?? token.token.id] = {\n\t\t\t\t\tvalue: shorthand,\n\t\t\t\t\tdescription: token.token.$description\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\t}\n\tfor (const { selectors, tokens, mode, scheme } of modeSelectors ?? []) {\n\t\tif (!selectors.length) continue;\n\t\tconst selectorTokens = getTransforms({\n\t\t\tformat: FORMAT_ID,\n\t\t\tid: tokens,\n\t\t\tmode\n\t\t});\n\t\tif (!selectorTokens.length) continue;\n\t\tconst selectorRule = {\n\t\t\tselectors,\n\t\t\tdeclarations: {}\n\t\t};\n\t\tconst selectorP3Rule = {\n\t\t\tselectors,\n\t\t\tnestedQuery: P3_MQ,\n\t\t\tdeclarations: {}\n\t\t};\n\t\tconst selectorRec2020Rule = {\n\t\t\tselectors,\n\t\t\tnestedQuery: REC2020_MQ,\n\t\t\tdeclarations: {}\n\t\t};\n\t\tconst selectorAliasDeclarations = {};\n\t\trules.push(selectorRule, selectorP3Rule, selectorRec2020Rule);\n\t\tif (scheme) selectorRule.declarations[\"color-scheme\"] = { value: scheme };\n\t\tfor (const token of selectorTokens) {\n\t\t\tconst localID = token.localID ?? token.token.id;\n\t\t\tconst aliasTokens = token.token.aliasedBy?.length ? getTransforms({\n\t\t\t\tformat: FORMAT_ID,\n\t\t\t\tid: token.token.aliasedBy\n\t\t\t}) : [];\n\t\t\tif (token.type === \"SINGLE_VALUE\") selectorRule.declarations[localID] = {\n\t\t\t\tvalue: token.value,\n\t\t\t\tdescription: token.token.$description\n\t\t\t};\n\t\t\telse if (token.value.srgb && token.value.p3 && token.value.rec2020) {\n\t\t\t\tselectorRule.declarations[localID] = {\n\t\t\t\t\tvalue: token.value.srgb,\n\t\t\t\t\tdescription: token.token.$description\n\t\t\t\t};\n\t\t\t\tif (token.value.p3 !== token.value.srgb) {\n\t\t\t\t\tselectorP3Rule.declarations[localID] = {\n\t\t\t\t\t\tvalue: token.value.p3,\n\t\t\t\t\t\tdescription: token.token.$description\n\t\t\t\t\t};\n\t\t\t\t\tselectorRec2020Rule.declarations[localID] = {\n\t\t\t\t\t\tvalue: token.value.rec2020,\n\t\t\t\t\t\tdescription: token.token.$description\n\t\t\t\t\t};\n\t\t\t\t\tfor (const alias of aliasTokens) if (alias.localID && typeof alias.value === \"string\") {\n\t\t\t\t\t\tselectorP3Rule.declarations[alias.localID] ??= {\n\t\t\t\t\t\t\tvalue: alias.value,\n\t\t\t\t\t\t\tdescription: token.token.$description\n\t\t\t\t\t\t};\n\t\t\t\t\t\tselectorRec2020Rule.declarations[alias.localID] ??= {\n\t\t\t\t\t\t\tvalue: alias.value,\n\t\t\t\t\t\t\tdescription: token.token.$description\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tfor (const [name, subvalue] of Object.entries(token.value)) selectorRule.declarations[`${localID}-${name}`] = {\n\t\t\t\t\tvalue: subvalue,\n\t\t\t\t\tdescription: token.token.$description\n\t\t\t\t};\n\t\t\t\tconst shorthand = generateShorthand({\n\t\t\t\t\ttoken: {\n\t\t\t\t\t\t...token.token,\n\t\t\t\t\t\t$value: token.value\n\t\t\t\t\t},\n\t\t\t\t\tlocalID\n\t\t\t\t});\n\t\t\t\tif (shorthand) selectorRule.declarations[localID] = {\n\t\t\t\t\tvalue: shorthand,\n\t\t\t\t\tdescription: token.token.$description\n\t\t\t\t};\n\t\t\t}\n\t\t\tfor (const alias of aliasTokens) if (alias.localID && typeof alias.value === \"string\") selectorAliasDeclarations[alias.localID] = {\n\t\t\t\tvalue: alias.value,\n\t\t\t\tdescription: token.token.$description\n\t\t\t};\n\t\t}\n\t\tfor (const [name, { value, description }] of Object.entries(selectorAliasDeclarations)) selectorRule.declarations[name] ??= {\n\t\t\tvalue,\n\t\t\tdescription\n\t\t};\n\t}\n\tif (utility && Object.keys(utility).length) rules.push(...generateUtilityCSS(utility, getTransforms({\n\t\tformat: FORMAT_ID,\n\t\tmode: \".\"\n\t})));\n\treturn printRules(rules);\n}\n\n//#endregion\n//#region src/index.ts\nfunction cssPlugin(options) {\n\tconst { exclude, variableName, modeSelectors, transform: customTransform, utility, legacyHex, skipBuild, baseScheme } = options ?? {};\n\tconst filename = options?.filename ?? options?.fileName ?? \"index.css\";\n\tconst baseSelector = options?.baseSelector ?? \":root\";\n\tfunction transformName(token) {\n\t\tconst customName = variableName?.(token);\n\t\tif (customName !== void 0) {\n\t\t\tif (typeof customName !== \"string\") throw new Error(`variableName() must return a string; received ${customName}`);\n\t\t\treturn customName;\n\t\t}\n\t\treturn makeCSSVar(token.id);\n\t}\n\tconst transformAlias = (token) => `var(${transformName(token)})`;\n\treturn {\n\t\tname: \"@terrazzo/plugin-css\",\n\t\tasync transform({ tokens, getTransforms, setTransform }) {\n\t\t\tif (getTransforms({\n\t\t\t\tformat: FORMAT_ID,\n\t\t\t\tid: \"*\",\n\t\t\t\tmode: \"*\"\n\t\t\t}).length) return;\n\t\t\tfor (const [id, token] of Object.entries(tokens)) {\n\t\t\t\tconst localID = transformName(token);\n\t\t\t\tfor (const mode of Object.keys(token.mode)) {\n\t\t\t\t\tif (customTransform) {\n\t\t\t\t\t\tconst value = customTransform(token, mode);\n\t\t\t\t\t\tif (value !== void 0 && value !== null) {\n\t\t\t\t\t\t\tvalidateCustomTransform(value, { $type: token.$type });\n\t\t\t\t\t\t\tsetTransform(id, {\n\t\t\t\t\t\t\t\tformat: FORMAT_ID,\n\t\t\t\t\t\t\t\tlocalID,\n\t\t\t\t\t\t\t\tvalue,\n\t\t\t\t\t\t\t\tmode,\n\t\t\t\t\t\t\t\tmeta: { \"token-listing\": { name: localID } }\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\tcontinue;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tconst transformedValue = transformCSSValue(token, {\n\t\t\t\t\t\tmode,\n\t\t\t\t\t\ttokensSet: tokens,\n\t\t\t\t\t\ttransformAlias,\n\t\t\t\t\t\tcolor: { legacyHex }\n\t\t\t\t\t});\n\t\t\t\t\tif (transformedValue !== void 0) {\n\t\t\t\t\t\tlet listingName = localID;\n\t\t\t\t\t\tif (typeof transformedValue === \"object\" && generateShorthand({\n\t\t\t\t\t\t\ttoken,\n\t\t\t\t\t\t\tlocalID\n\t\t\t\t\t\t}) === void 0) listingName = void 0;\n\t\t\t\t\t\tsetTransform(id, {\n\t\t\t\t\t\t\tformat: FORMAT_ID,\n\t\t\t\t\t\t\tlocalID,\n\t\t\t\t\t\t\tvalue: transformedValue,\n\t\t\t\t\t\t\tmode,\n\t\t\t\t\t\t\tmeta: { \"token-listing\": { name: listingName } }\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\tasync build({ getTransforms, outputFile }) {\n\t\t\tif (skipBuild === true) return;\n\t\t\tconst output = [FILE_PREFIX, \"\"];\n\t\t\toutput.push(buildFormat({\n\t\t\t\texclude,\n\t\t\t\tgetTransforms,\n\t\t\t\tmodeSelectors,\n\t\t\t\tutility,\n\t\t\t\tbaseSelector,\n\t\t\t\tbaseScheme\n\t\t\t}), \"\\n\");\n\t\t\toutputFile(filename, output.join(\"\\n\"));\n\t\t}\n\t};\n}\n\n//#endregion\nexport { FILE_PREFIX, FORMAT_ID, cssPlugin as default, printRules };\n//# sourceMappingURL=index.js.map","export interface TailwindPluginOptions {\n /**\n * Filename to output.\n * @default \"tailwind-theme.css\"\n */\n filename?: string;\n /** @see https://tailwindcss.com/docs/theme */\n theme: Record<string, any>;\n /** Array of mapping variants to DTCG modes. */\n modeVariants?: { variant: string; mode: string }[];\n}\n\n/** Flatten an arbitrarily-nested object */\nexport function flattenThemeObj(themeObj: Record<string, unknown>): { path: string[]; value: string | string[] }[] {\n const result: { path: string[]; value: string | string[] }[] = [];\n\n function traverse(obj: Record<string, unknown>, path: string[]) {\n for (const [key, value] of Object.entries(obj)) {\n const newPath = [...path, key];\n if (typeof value === 'string' || Array.isArray(value)) {\n if (Array.isArray(value) && (value.length === 0 || value.some((v) => typeof v !== 'string'))) {\n throw new Error(\n `Invalid value at path \"${newPath.join('.')}\": expected a string or an array of strings, but got ${JSON.stringify(value)}`,\n );\n }\n result.push({ path: newPath, value });\n } else if (typeof value === 'object' && value !== null) {\n traverse(value as Record<string, unknown>, newPath);\n }\n }\n }\n\n traverse(themeObj, []);\n return result;\n}\n","import type { Plugin } from '@terrazzo/parser';\nimport { FORMAT_ID as FORMAT_CSS } from '@terrazzo/plugin-css';\nimport { flattenThemeObj, type TailwindPluginOptions } from './lib.js';\n\nexport const FORMAT_ID = 'tailwind';\n\nexport * from './lib.js';\n\nexport default function pluginTailwind(options: TailwindPluginOptions): Plugin {\n const filename = options?.filename ?? (options as any)?.fileName ?? 'tailwind-theme.css';\n\n return {\n name: '@terrazzo/plugin-tailwind',\n enforce: 'post', // ensure this comes after @terrazzo/plugin-css\n config(config) {\n if (!config.plugins.some((p) => p.name === '@terrazzo/plugin-css')) {\n throw new Error(\n '@terrazzo/plugin-css missing! Please install and add to the plugins array to use the Tailwind plugin.',\n );\n }\n\n if (!options || !options.theme) {\n throw new Error('Missing Tailwind `theme` option.');\n }\n },\n async transform({ getTransforms, setTransform }) {\n const variants = [{ variant: '.', mode: '.' }, ...(options?.modeVariants ?? [])];\n for (const { variant, mode } of variants) {\n const flatTheme = flattenThemeObj(options.theme);\n for (const { path, value } of flatTheme) {\n const tokens = getTransforms({\n format: FORMAT_CSS,\n id: value,\n mode,\n });\n for (const token of tokens) {\n let relName = token.id.split('.').at(-1)!;\n for (const subgroup of [...(Array.isArray(value) ? value : [value])]) {\n const match = subgroup.replace(/\\*.*/, '');\n relName = token.id.replace(match, '');\n }\n setTransform(token.id, {\n format: FORMAT_ID,\n localID: `--${path.join('-')}-${relName.replace(/\\./g, '-')}`,\n value: typeof token.value === 'object' ? token.value['.']! : token.value,\n mode: variant, // ! <- not the original mode!\n });\n }\n }\n }\n },\n async build({ getTransforms, outputFile }) {\n const output = ['@import \"tailwindcss\";', ''];\n\n const variants: Record<string, string[]> = { '.': [] };\n for (const token of getTransforms({ format: FORMAT_ID })) {\n const { localID, value, mode } = token;\n if (!variants[mode]) {\n variants[mode] = [];\n }\n variants[mode].push(`${localID}: ${value};`);\n }\n for (const [variant, values] of Object.entries(variants)) {\n output.push(variant === '.' ? '@theme {' : `@variant ${variant} {`);\n for (const value of values) {\n output.push(` ${value}`);\n }\n output.push('}', '');\n }\n\n outputFile(filename, output.join('\\n'));\n },\n };\n}\n"],"mappings":"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"}