import { t as __exportAll } from "./chunk-DrSxFLj_.js";
//#region ../../node_modules/.pnpm/prettier@3.8.2/node_modules/prettier/plugins/postcss.mjs
var postcss_exports = /* @__PURE__ */ __exportAll({
	default: () => _l,
	languages: () => Si,
	options: () => Ti,
	parsers: () => en,
	printers: () => Hy
});
var bl = Object.create;
var Vr = Object.defineProperty;
var El = Object.getOwnPropertyDescriptor;
var Sl = Object.getOwnPropertyNames;
var kl = Object.getPrototypeOf, Tl = Object.prototype.hasOwnProperty;
var w = (t, e) => () => (e || t((e = { exports: {} }).exports, e), e.exports), sn = (t, e) => {
	for (var s in e) Vr(t, s, {
		get: e[s],
		enumerable: !0
	});
}, Al = (t, e, s, r) => {
	if (e && typeof e == "object" || typeof e == "function") for (let n of Sl(e)) !Tl.call(t, n) && n !== s && Vr(t, n, {
		get: () => e[n],
		enumerable: !(r = El(e, n)) || r.enumerable
	});
	return t;
};
var Te = (t, e, s) => (s = t != null ? bl(kl(t)) : {}, Al(e || !t || !t.__esModule ? Vr(s, "default", {
	value: t,
	enumerable: !0
}) : s, t));
var Oi = w((ux, os) => {
	var x = String, Ai = function() {
		return {
			isColorSupported: !1,
			reset: x,
			bold: x,
			dim: x,
			italic: x,
			underline: x,
			inverse: x,
			hidden: x,
			strikethrough: x,
			black: x,
			red: x,
			green: x,
			yellow: x,
			blue: x,
			magenta: x,
			cyan: x,
			white: x,
			gray: x,
			bgBlack: x,
			bgRed: x,
			bgGreen: x,
			bgYellow: x,
			bgBlue: x,
			bgMagenta: x,
			bgCyan: x,
			bgWhite: x,
			blackBright: x,
			redBright: x,
			greenBright: x,
			yellowBright: x,
			blueBright: x,
			magentaBright: x,
			cyanBright: x,
			whiteBright: x,
			bgBlackBright: x,
			bgRedBright: x,
			bgGreenBright: x,
			bgYellowBright: x,
			bgBlueBright: x,
			bgMagentaBright: x,
			bgCyanBright: x,
			bgWhiteBright: x
		};
	};
	os.exports = Ai();
	os.exports.createColors = Ai;
});
var as = w(() => {});
var zt = w((fx, Pi) => {
	"use strict";
	var Ci = Oi(), Ni = as(), st = class t extends Error {
		constructor(e, s, r, n, i, o) {
			super(e), this.name = "CssSyntaxError", this.reason = e, i && (this.file = i), n && (this.source = n), o && (this.plugin = o), typeof s < "u" && typeof r < "u" && (typeof s == "number" ? (this.line = s, this.column = r) : (this.line = s.line, this.column = s.column, this.endLine = r.line, this.endColumn = r.column)), this.setMessage(), Error.captureStackTrace && Error.captureStackTrace(this, t);
		}
		setMessage() {
			this.message = this.plugin ? this.plugin + ": " : "", this.message += this.file ? this.file : "<css input>", typeof this.line < "u" && (this.message += ":" + this.line + ":" + this.column), this.message += ": " + this.reason;
		}
		showSourceCode(e) {
			if (!this.source) return "";
			let s = this.source;
			e ??= Ci.isColorSupported;
			let r = (f) => f, n = (f) => f, i = (f) => f;
			if (e) {
				let { bold: f, gray: h, red: c } = Ci.createColors(!0);
				n = (g) => f(c(g)), r = (g) => h(g), Ni && (i = (g) => Ni(g));
			}
			let o = s.split(/\r?\n/), u = Math.max(this.line - 3, 0), a = Math.min(this.line + 2, o.length), l = String(a).length;
			return o.slice(u, a).map((f, h) => {
				let c = u + 1 + h, g = " " + (" " + c).slice(-l) + " | ";
				if (c === this.line) {
					if (f.length > 160) {
						let d = 20, p = Math.max(0, this.column - d), m = Math.max(this.column + d, this.endColumn + d), y = f.slice(p, m), v = r(g.replace(/\d/g, " ")) + f.slice(0, Math.min(this.column - 1, d - 1)).replace(/[^\t]/g, " ");
						return n(">") + r(g) + i(y) + `
 ` + v + n("^");
					}
					let b = r(g.replace(/\d/g, " ")) + f.slice(0, this.column - 1).replace(/[^\t]/g, " ");
					return n(">") + r(g) + i(f) + `
 ` + b + n("^");
				}
				return " " + r(g) + i(f);
			}).join(`
`);
		}
		toString() {
			let e = this.showSourceCode();
			return e && (e = `

` + e + `
`), this.name + ": " + this.message + e;
		}
	};
	Pi.exports = st;
	st.default = st;
});
var jt = w((px, Ii) => {
	"use strict";
	var Ri = {
		after: `
`,
		beforeClose: `
`,
		beforeComment: `
`,
		beforeDecl: `
`,
		beforeOpen: " ",
		beforeRule: `
`,
		colon: ": ",
		commentLeft: " ",
		commentRight: " ",
		emptyBody: "",
		indent: "    ",
		semicolon: !1
	};
	function Rc(t) {
		return t[0].toUpperCase() + t.slice(1);
	}
	var nt = class {
		constructor(e) {
			this.builder = e;
		}
		atrule(e, s) {
			let r = "@" + e.name, n = e.params ? this.rawValue(e, "params") : "";
			if (typeof e.raws.afterName < "u" ? r += e.raws.afterName : n && (r += " "), e.nodes) this.block(e, r + n);
			else {
				let i = (e.raws.between || "") + (s ? ";" : "");
				this.builder(r + n + i, e);
			}
		}
		beforeAfter(e, s) {
			let r;
			e.type === "decl" ? r = this.raw(e, null, "beforeDecl") : e.type === "comment" ? r = this.raw(e, null, "beforeComment") : s === "before" ? r = this.raw(e, null, "beforeRule") : r = this.raw(e, null, "beforeClose");
			let n = e.parent, i = 0;
			for (; n && n.type !== "root";) i += 1, n = n.parent;
			if (r.includes(`
`)) {
				let o = this.raw(e, null, "indent");
				if (o.length) for (let u = 0; u < i; u++) r += o;
			}
			return r;
		}
		block(e, s) {
			let r = this.raw(e, "between", "beforeOpen");
			this.builder(s + r + "{", e, "start");
			let n;
			e.nodes && e.nodes.length ? (this.body(e), n = this.raw(e, "after")) : n = this.raw(e, "after", "emptyBody"), n && this.builder(n), this.builder("}", e, "end");
		}
		body(e) {
			let s = e.nodes.length - 1;
			for (; s > 0 && e.nodes[s].type === "comment";) s -= 1;
			let r = this.raw(e, "semicolon");
			for (let n = 0; n < e.nodes.length; n++) {
				let i = e.nodes[n], o = this.raw(i, "before");
				o && this.builder(o), this.stringify(i, s !== n || r);
			}
		}
		comment(e) {
			let s = this.raw(e, "left", "commentLeft"), r = this.raw(e, "right", "commentRight");
			this.builder("/*" + s + e.text + r + "*/", e);
		}
		decl(e, s) {
			let r = this.raw(e, "between", "colon"), n = e.prop + r + this.rawValue(e, "value");
			e.important && (n += e.raws.important || " !important"), s && (n += ";"), this.builder(n, e);
		}
		document(e) {
			this.body(e);
		}
		raw(e, s, r) {
			let n;
			if (r || (r = s), s && (n = e.raws[s], typeof n < "u")) return n;
			let i = e.parent;
			if (r === "before" && (!i || i.type === "root" && i.first === e || i && i.type === "document")) return "";
			if (!i) return Ri[r];
			let o = e.root();
			if (o.rawCache || (o.rawCache = {}), typeof o.rawCache[r] < "u") return o.rawCache[r];
			if (r === "before" || r === "after") return this.beforeAfter(e, r);
			{
				let u = "raw" + Rc(r);
				this[u] ? n = this[u](o, e) : o.walk((a) => {
					if (n = a.raws[s], typeof n < "u") return !1;
				});
			}
			return typeof n > "u" && (n = Ri[r]), o.rawCache[r] = n, n;
		}
		rawBeforeClose(e) {
			let s;
			return e.walk((r) => {
				if (r.nodes && r.nodes.length > 0 && typeof r.raws.after < "u") return s = r.raws.after, s.includes(`
`) && (s = s.replace(/[^\n]+$/, "")), !1;
			}), s && (s = s.replace(/\S/g, "")), s;
		}
		rawBeforeComment(e, s) {
			let r;
			return e.walkComments((n) => {
				if (typeof n.raws.before < "u") return r = n.raws.before, r.includes(`
`) && (r = r.replace(/[^\n]+$/, "")), !1;
			}), typeof r > "u" ? r = this.raw(s, null, "beforeDecl") : r && (r = r.replace(/\S/g, "")), r;
		}
		rawBeforeDecl(e, s) {
			let r;
			return e.walkDecls((n) => {
				if (typeof n.raws.before < "u") return r = n.raws.before, r.includes(`
`) && (r = r.replace(/[^\n]+$/, "")), !1;
			}), typeof r > "u" ? r = this.raw(s, null, "beforeRule") : r && (r = r.replace(/\S/g, "")), r;
		}
		rawBeforeOpen(e) {
			let s;
			return e.walk((r) => {
				if (r.type !== "decl" && (s = r.raws.between, typeof s < "u")) return !1;
			}), s;
		}
		rawBeforeRule(e) {
			let s;
			return e.walk((r) => {
				if (r.nodes && (r.parent !== e || e.first !== r) && typeof r.raws.before < "u") return s = r.raws.before, s.includes(`
`) && (s = s.replace(/[^\n]+$/, "")), !1;
			}), s && (s = s.replace(/\S/g, "")), s;
		}
		rawColon(e) {
			let s;
			return e.walkDecls((r) => {
				if (typeof r.raws.between < "u") return s = r.raws.between.replace(/[^\s:]/g, ""), !1;
			}), s;
		}
		rawEmptyBody(e) {
			let s;
			return e.walk((r) => {
				if (r.nodes && r.nodes.length === 0 && (s = r.raws.after, typeof s < "u")) return !1;
			}), s;
		}
		rawIndent(e) {
			if (e.raws.indent) return e.raws.indent;
			let s;
			return e.walk((r) => {
				let n = r.parent;
				if (n && n !== e && n.parent && n.parent === e && typeof r.raws.before < "u") {
					let i = r.raws.before.split(`
`);
					return s = i[i.length - 1], s = s.replace(/\S/g, ""), !1;
				}
			}), s;
		}
		rawSemicolon(e) {
			let s;
			return e.walk((r) => {
				if (r.nodes && r.nodes.length && r.last.type === "decl" && (s = r.raws.semicolon, typeof s < "u")) return !1;
			}), s;
		}
		rawValue(e, s) {
			let r = e[s], n = e.raws[s];
			return n && n.value === r ? n.raw : r;
		}
		root(e) {
			this.body(e), e.raws.after && this.builder(e.raws.after);
		}
		rule(e) {
			this.block(e, this.rawValue(e, "selector")), e.raws.ownSemicolon && this.builder(e.raws.ownSemicolon, e, "end");
		}
		stringify(e, s) {
			if (!this[e.type]) throw new Error("Unknown AST node type " + e.type + ". Maybe you need to change PostCSS stringifier.");
			this[e.type](e, s);
		}
	};
	Ii.exports = nt;
	nt.default = nt;
});
var it = w((hx, qi) => {
	"use strict";
	var Ic = jt();
	function us(t, e) {
		new Ic(e).stringify(t);
	}
	qi.exports = us;
	us.default = us;
});
var Ht = w((dx, ls) => {
	"use strict";
	ls.exports.isClean = Symbol("isClean");
	ls.exports.my = Symbol("my");
});
var ut = w((mx, Li) => {
	"use strict";
	var qc = zt(), Lc = jt(), Dc = it(), { isClean: ot, my: Mc } = Ht();
	function cs(t, e) {
		let s = new t.constructor();
		for (let r in t) {
			if (!Object.prototype.hasOwnProperty.call(t, r) || r === "proxyCache") continue;
			let n = t[r], i = typeof n;
			r === "parent" && i === "object" ? e && (s[r] = e) : r === "source" ? s[r] = n : Array.isArray(n) ? s[r] = n.map((o) => cs(o, s)) : (i === "object" && n !== null && (n = cs(n)), s[r] = n);
		}
		return s;
	}
	function ee(t, e) {
		if (e && typeof e.offset < "u") return e.offset;
		let s = 1, r = 1, n = 0;
		for (let i = 0; i < t.length; i++) {
			if (r === e.line && s === e.column) {
				n = i;
				break;
			}
			t[i] === `
` ? (s = 1, r += 1) : s += 1;
		}
		return n;
	}
	var at = class {
		get proxyOf() {
			return this;
		}
		constructor(e = {}) {
			this.raws = {}, this[ot] = !1, this[Mc] = !0;
			for (let s in e) if (s === "nodes") {
				this.nodes = [];
				for (let r of e[s]) typeof r.clone == "function" ? this.append(r.clone()) : this.append(r);
			} else this[s] = e[s];
		}
		addToError(e) {
			if (e.postcssNode = this, e.stack && this.source && /\n\s{4}at /.test(e.stack)) {
				let s = this.source;
				e.stack = e.stack.replace(/\n\s{4}at /, `$&${s.input.from}:${s.start.line}:${s.start.column}$&`);
			}
			return e;
		}
		after(e) {
			return this.parent.insertAfter(this, e), this;
		}
		assign(e = {}) {
			for (let s in e) this[s] = e[s];
			return this;
		}
		before(e) {
			return this.parent.insertBefore(this, e), this;
		}
		cleanRaws(e) {
			delete this.raws.before, delete this.raws.after, e || delete this.raws.between;
		}
		clone(e = {}) {
			let s = cs(this);
			for (let r in e) s[r] = e[r];
			return s;
		}
		cloneAfter(e = {}) {
			let s = this.clone(e);
			return this.parent.insertAfter(this, s), s;
		}
		cloneBefore(e = {}) {
			let s = this.clone(e);
			return this.parent.insertBefore(this, s), s;
		}
		error(e, s = {}) {
			if (this.source) {
				let { end: r, start: n } = this.rangeBy(s);
				return this.source.input.error(e, {
					column: n.column,
					line: n.line
				}, {
					column: r.column,
					line: r.line
				}, s);
			}
			return new qc(e);
		}
		getProxyProcessor() {
			return {
				get(e, s) {
					return s === "proxyOf" ? e : s === "root" ? () => e.root().toProxy() : e[s];
				},
				set(e, s, r) {
					return e[s] === r || (e[s] = r, (s === "prop" || s === "value" || s === "name" || s === "params" || s === "important" || s === "text") && e.markDirty()), !0;
				}
			};
		}
		markClean() {
			this[ot] = !0;
		}
		markDirty() {
			if (this[ot]) {
				this[ot] = !1;
				let e = this;
				for (; e = e.parent;) e[ot] = !1;
			}
		}
		next() {
			if (!this.parent) return;
			let e = this.parent.index(this);
			return this.parent.nodes[e + 1];
		}
		positionBy(e = {}) {
			let s = this.source.start;
			if (e.index) s = this.positionInside(e.index);
			else if (e.word) {
				let r = "document" in this.source.input ? this.source.input.document : this.source.input.css, i = r.slice(ee(r, this.source.start), ee(r, this.source.end)).indexOf(e.word);
				i !== -1 && (s = this.positionInside(i));
			}
			return s;
		}
		positionInside(e) {
			let s = this.source.start.column, r = this.source.start.line, n = "document" in this.source.input ? this.source.input.document : this.source.input.css, i = ee(n, this.source.start), o = i + e;
			for (let u = i; u < o; u++) n[u] === `
` ? (s = 1, r += 1) : s += 1;
			return {
				column: s,
				line: r,
				offset: o
			};
		}
		prev() {
			if (!this.parent) return;
			let e = this.parent.index(this);
			return this.parent.nodes[e - 1];
		}
		rangeBy(e = {}) {
			let s = "document" in this.source.input ? this.source.input.document : this.source.input.css, r = {
				column: this.source.start.column,
				line: this.source.start.line,
				offset: ee(s, this.source.start)
			}, n = this.source.end ? {
				column: this.source.end.column + 1,
				line: this.source.end.line,
				offset: typeof this.source.end.offset == "number" ? this.source.end.offset : ee(s, this.source.end) + 1
			} : {
				column: r.column + 1,
				line: r.line,
				offset: r.offset + 1
			};
			if (e.word) {
				let o = s.slice(ee(s, this.source.start), ee(s, this.source.end)).indexOf(e.word);
				o !== -1 && (r = this.positionInside(o), n = this.positionInside(o + e.word.length));
			} else e.start ? r = {
				column: e.start.column,
				line: e.start.line,
				offset: ee(s, e.start)
			} : e.index && (r = this.positionInside(e.index)), e.end ? n = {
				column: e.end.column,
				line: e.end.line,
				offset: ee(s, e.end)
			} : typeof e.endIndex == "number" ? n = this.positionInside(e.endIndex) : e.index && (n = this.positionInside(e.index + 1));
			return (n.line < r.line || n.line === r.line && n.column <= r.column) && (n = {
				column: r.column + 1,
				line: r.line,
				offset: r.offset + 1
			}), {
				end: n,
				start: r
			};
		}
		raw(e, s) {
			return new Lc().raw(this, e, s);
		}
		remove() {
			return this.parent && this.parent.removeChild(this), this.parent = void 0, this;
		}
		replaceWith(...e) {
			if (this.parent) {
				let s = this, r = !1;
				for (let n of e) n === this ? r = !0 : r ? (this.parent.insertAfter(s, n), s = n) : this.parent.insertBefore(s, n);
				r || this.remove();
			}
			return this;
		}
		root() {
			let e = this;
			for (; e.parent && e.parent.type !== "document";) e = e.parent;
			return e;
		}
		toJSON(e, s) {
			let r = {}, n = s == null;
			s = s || /* @__PURE__ */ new Map();
			let i = 0;
			for (let o in this) {
				if (!Object.prototype.hasOwnProperty.call(this, o) || o === "parent" || o === "proxyCache") continue;
				let u = this[o];
				if (Array.isArray(u)) r[o] = u.map((a) => typeof a == "object" && a.toJSON ? a.toJSON(null, s) : a);
				else if (typeof u == "object" && u.toJSON) r[o] = u.toJSON(null, s);
				else if (o === "source") {
					if (u == null) continue;
					let a = s.get(u.input);
					a ?? (a = i, s.set(u.input, i), i++), r[o] = {
						end: u.end,
						inputId: a,
						start: u.start
					};
				} else r[o] = u;
			}
			return n && (r.inputs = [...s.keys()].map((o) => o.toJSON())), r;
		}
		toProxy() {
			return this.proxyCache || (this.proxyCache = new Proxy(this, this.getProxyProcessor())), this.proxyCache;
		}
		toString(e = Dc) {
			e.stringify && (e = e.stringify);
			let s = "";
			return e(this, (r) => {
				s += r;
			}), s;
		}
		warn(e, s, r = {}) {
			let n = { node: this };
			for (let i in r) n[i] = r[i];
			return e.warn(s, n);
		}
	};
	Li.exports = at;
	at.default = at;
});
var Me = w((yx, Di) => {
	"use strict";
	var Bc = ut(), lt = class extends Bc {
		constructor(e) {
			super(e), this.type = "comment";
		}
	};
	Di.exports = lt;
	lt.default = lt;
});
var ft = w((gx, Mi) => {
	"use strict";
	var Uc = ut(), ct = class extends Uc {
		get variable() {
			return this.prop.startsWith("--") || this.prop[0] === "$";
		}
		constructor(e) {
			e && typeof e.value < "u" && typeof e.value != "string" && (e = {
				...e,
				value: String(e.value)
			}), super(e), this.type = "decl";
		}
	};
	Mi.exports = ct;
	ct.default = ct;
});
var fe = w((wx, zi) => {
	"use strict";
	var Bi = Me(), Ui = ft(), Fc = ut(), { isClean: Fi, my: $i } = Ht(), fs, Wi, Gi, ps;
	function Yi(t) {
		return t.map((e) => (e.nodes && (e.nodes = Yi(e.nodes)), delete e.source, e));
	}
	function Vi(t) {
		if (t[Fi] = !1, t.proxyOf.nodes) for (let e of t.proxyOf.nodes) Vi(e);
	}
	var z = class t extends Fc {
		get first() {
			if (this.proxyOf.nodes) return this.proxyOf.nodes[0];
		}
		get last() {
			if (this.proxyOf.nodes) return this.proxyOf.nodes[this.proxyOf.nodes.length - 1];
		}
		append(...e) {
			for (let s of e) {
				let r = this.normalize(s, this.last);
				for (let n of r) this.proxyOf.nodes.push(n);
			}
			return this.markDirty(), this;
		}
		cleanRaws(e) {
			if (super.cleanRaws(e), this.nodes) for (let s of this.nodes) s.cleanRaws(e);
		}
		each(e) {
			if (!this.proxyOf.nodes) return;
			let s = this.getIterator(), r, n;
			for (; this.indexes[s] < this.proxyOf.nodes.length && (r = this.indexes[s], n = e(this.proxyOf.nodes[r], r), n !== !1);) this.indexes[s] += 1;
			return delete this.indexes[s], n;
		}
		every(e) {
			return this.nodes.every(e);
		}
		getIterator() {
			this.lastEach || (this.lastEach = 0), this.indexes || (this.indexes = {}), this.lastEach += 1;
			let e = this.lastEach;
			return this.indexes[e] = 0, e;
		}
		getProxyProcessor() {
			return {
				get(e, s) {
					return s === "proxyOf" ? e : e[s] ? s === "each" || typeof s == "string" && s.startsWith("walk") ? (...r) => e[s](...r.map((n) => typeof n == "function" ? (i, o) => n(i.toProxy(), o) : n)) : s === "every" || s === "some" ? (r) => e[s]((n, ...i) => r(n.toProxy(), ...i)) : s === "root" ? () => e.root().toProxy() : s === "nodes" ? e.nodes.map((r) => r.toProxy()) : s === "first" || s === "last" ? e[s].toProxy() : e[s] : e[s];
				},
				set(e, s, r) {
					return e[s] === r || (e[s] = r, (s === "name" || s === "params" || s === "selector") && e.markDirty()), !0;
				}
			};
		}
		index(e) {
			return typeof e == "number" ? e : (e.proxyOf && (e = e.proxyOf), this.proxyOf.nodes.indexOf(e));
		}
		insertAfter(e, s) {
			let r = this.index(e), n = this.normalize(s, this.proxyOf.nodes[r]).reverse();
			r = this.index(e);
			for (let o of n) this.proxyOf.nodes.splice(r + 1, 0, o);
			let i;
			for (let o in this.indexes) i = this.indexes[o], r < i && (this.indexes[o] = i + n.length);
			return this.markDirty(), this;
		}
		insertBefore(e, s) {
			let r = this.index(e), n = r === 0 ? "prepend" : !1, i = this.normalize(s, this.proxyOf.nodes[r], n).reverse();
			r = this.index(e);
			for (let u of i) this.proxyOf.nodes.splice(r, 0, u);
			let o;
			for (let u in this.indexes) o = this.indexes[u], r <= o && (this.indexes[u] = o + i.length);
			return this.markDirty(), this;
		}
		normalize(e, s) {
			if (typeof e == "string") e = Yi(Wi(e).nodes);
			else if (typeof e > "u") e = [];
			else if (Array.isArray(e)) {
				e = e.slice(0);
				for (let n of e) n.parent && n.parent.removeChild(n, "ignore");
			} else if (e.type === "root" && this.type !== "document") {
				e = e.nodes.slice(0);
				for (let n of e) n.parent && n.parent.removeChild(n, "ignore");
			} else if (e.type) e = [e];
			else if (e.prop) {
				if (typeof e.value > "u") throw new Error("Value field is missed in node creation");
				typeof e.value != "string" && (e.value = String(e.value)), e = [new Ui(e)];
			} else if (e.selector || e.selectors) e = [new ps(e)];
			else if (e.name) e = [new fs(e)];
			else if (e.text) e = [new Bi(e)];
			else throw new Error("Unknown node type in node creation");
			return e.map((n) => (n[$i] || t.rebuild(n), n = n.proxyOf, n.parent && n.parent.removeChild(n), n[Fi] && Vi(n), n.raws || (n.raws = {}), typeof n.raws.before > "u" && s && typeof s.raws.before < "u" && (n.raws.before = s.raws.before.replace(/\S/g, "")), n.parent = this.proxyOf, n));
		}
		prepend(...e) {
			e = e.reverse();
			for (let s of e) {
				let r = this.normalize(s, this.first, "prepend").reverse();
				for (let n of r) this.proxyOf.nodes.unshift(n);
				for (let n in this.indexes) this.indexes[n] = this.indexes[n] + r.length;
			}
			return this.markDirty(), this;
		}
		push(e) {
			return e.parent = this, this.proxyOf.nodes.push(e), this;
		}
		removeAll() {
			for (let e of this.proxyOf.nodes) e.parent = void 0;
			return this.proxyOf.nodes = [], this.markDirty(), this;
		}
		removeChild(e) {
			e = this.index(e), this.proxyOf.nodes[e].parent = void 0, this.proxyOf.nodes.splice(e, 1);
			let s;
			for (let r in this.indexes) s = this.indexes[r], s >= e && (this.indexes[r] = s - 1);
			return this.markDirty(), this;
		}
		replaceValues(e, s, r) {
			return r || (r = s, s = {}), this.walkDecls((n) => {
				s.props && !s.props.includes(n.prop) || s.fast && !n.value.includes(s.fast) || (n.value = n.value.replace(e, r));
			}), this.markDirty(), this;
		}
		some(e) {
			return this.nodes.some(e);
		}
		walk(e) {
			return this.each((s, r) => {
				let n;
				try {
					n = e(s, r);
				} catch (i) {
					throw s.addToError(i);
				}
				return n !== !1 && s.walk && (n = s.walk(e)), n;
			});
		}
		walkAtRules(e, s) {
			return s ? e instanceof RegExp ? this.walk((r, n) => {
				if (r.type === "atrule" && e.test(r.name)) return s(r, n);
			}) : this.walk((r, n) => {
				if (r.type === "atrule" && r.name === e) return s(r, n);
			}) : (s = e, this.walk((r, n) => {
				if (r.type === "atrule") return s(r, n);
			}));
		}
		walkComments(e) {
			return this.walk((s, r) => {
				if (s.type === "comment") return e(s, r);
			});
		}
		walkDecls(e, s) {
			return s ? e instanceof RegExp ? this.walk((r, n) => {
				if (r.type === "decl" && e.test(r.prop)) return s(r, n);
			}) : this.walk((r, n) => {
				if (r.type === "decl" && r.prop === e) return s(r, n);
			}) : (s = e, this.walk((r, n) => {
				if (r.type === "decl") return s(r, n);
			}));
		}
		walkRules(e, s) {
			return s ? e instanceof RegExp ? this.walk((r, n) => {
				if (r.type === "rule" && e.test(r.selector)) return s(r, n);
			}) : this.walk((r, n) => {
				if (r.type === "rule" && r.selector === e) return s(r, n);
			}) : (s = e, this.walk((r, n) => {
				if (r.type === "rule") return s(r, n);
			}));
		}
	};
	z.registerParse = (t) => {
		Wi = t;
	};
	z.registerRule = (t) => {
		ps = t;
	};
	z.registerAtRule = (t) => {
		fs = t;
	};
	z.registerRoot = (t) => {
		Gi = t;
	};
	zi.exports = z;
	z.default = z;
	z.rebuild = (t) => {
		t.type === "atrule" ? Object.setPrototypeOf(t, fs.prototype) : t.type === "rule" ? Object.setPrototypeOf(t, ps.prototype) : t.type === "decl" ? Object.setPrototypeOf(t, Ui.prototype) : t.type === "comment" ? Object.setPrototypeOf(t, Bi.prototype) : t.type === "root" && Object.setPrototypeOf(t, Gi.prototype), t[$i] = !0, t.nodes && t.nodes.forEach((e) => {
			z.rebuild(e);
		});
	};
});
var Hi = w((vx, ji) => {
	var $c = "useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict", Wc = (t, e = 21) => (s = e) => {
		let r = "", n = s | 0;
		for (; n--;) r += t[Math.random() * t.length | 0];
		return r;
	}, Gc = (t = 21) => {
		let e = "", s = t | 0;
		for (; s--;) e += $c[Math.random() * 64 | 0];
		return e;
	};
	ji.exports = {
		nanoid: Gc,
		customAlphabet: Wc
	};
});
var Ki = w(() => {});
var hs = w((bx, Qi) => {
	Qi.exports = class {};
});
var Ue = w((Sx, to) => {
	"use strict";
	var { nanoid: Yc } = Hi(), { isAbsolute: ys, resolve: gs } = {}, { SourceMapConsumer: Vc, SourceMapGenerator: zc } = Ki(), { fileURLToPath: Xi, pathToFileURL: Kt } = {}, Ji = zt(), jc = hs(), ds = as(), ms = Symbol("lineToIndexCache"), Hc = !!(Vc && zc), Zi = !!(gs && ys);
	function eo(t) {
		if (t[ms]) return t[ms];
		let e = t.css.split(`
`), s = new Array(e.length), r = 0;
		for (let n = 0, i = e.length; n < i; n++) s[n] = r, r += e[n].length + 1;
		return t[ms] = s, s;
	}
	var Be = class {
		get from() {
			return this.file || this.id;
		}
		constructor(e, s = {}) {
			if (e === null || typeof e > "u" || typeof e == "object" && !e.toString) throw new Error(`PostCSS received ${e} instead of CSS string`);
			if (this.css = e.toString(), this.css[0] === "﻿" || this.css[0] === "" ? (this.hasBOM = !0, this.css = this.css.slice(1)) : this.hasBOM = !1, this.document = this.css, s.document && (this.document = s.document.toString()), s.from && (!Zi || /^\w+:\/\//.test(s.from) || ys(s.from) ? this.file = s.from : this.file = gs(s.from)), Zi && Hc) {
				let r = new jc(this.css, s);
				if (r.text) {
					this.map = r;
					let n = r.consumer().file;
					!this.file && n && (this.file = this.mapResolve(n));
				}
			}
			this.file || (this.id = "<input css " + Yc(6) + ">"), this.map && (this.map.file = this.from);
		}
		error(e, s, r, n = {}) {
			let i, o, u, a, l;
			if (s && typeof s == "object") {
				let h = s, c = r;
				if (typeof h.offset == "number") {
					a = h.offset;
					let g = this.fromOffset(a);
					s = g.line, r = g.col;
				} else s = h.line, r = h.column, a = this.fromLineAndColumn(s, r);
				if (typeof c.offset == "number") {
					u = c.offset;
					let g = this.fromOffset(u);
					o = g.line, i = g.col;
				} else o = c.line, i = c.column, u = this.fromLineAndColumn(c.line, c.column);
			} else if (r) a = this.fromLineAndColumn(s, r);
			else {
				a = s;
				let h = this.fromOffset(a);
				s = h.line, r = h.col;
			}
			let f = this.origin(s, r, o, i);
			return f ? l = new Ji(e, f.endLine === void 0 ? f.line : {
				column: f.column,
				line: f.line
			}, f.endLine === void 0 ? f.column : {
				column: f.endColumn,
				line: f.endLine
			}, f.source, f.file, n.plugin) : l = new Ji(e, o === void 0 ? s : {
				column: r,
				line: s
			}, o === void 0 ? r : {
				column: i,
				line: o
			}, this.css, this.file, n.plugin), l.input = {
				column: r,
				endColumn: i,
				endLine: o,
				endOffset: u,
				line: s,
				offset: a,
				source: this.css
			}, this.file && (Kt && (l.input.url = Kt(this.file).toString()), l.input.file = this.file), l;
		}
		fromLineAndColumn(e, s) {
			return eo(this)[e - 1] + s - 1;
		}
		fromOffset(e) {
			let s = eo(this), r = s[s.length - 1], n = 0;
			if (e >= r) n = s.length - 1;
			else {
				let i = s.length - 2, o;
				for (; n < i;) if (o = n + (i - n >> 1), e < s[o]) i = o - 1;
				else if (e >= s[o + 1]) n = o + 1;
				else {
					n = o;
					break;
				}
			}
			return {
				col: e - s[n] + 1,
				line: n + 1
			};
		}
		mapResolve(e) {
			return /^\w+:\/\//.test(e) ? e : gs(this.map.consumer().sourceRoot || this.map.root || ".", e);
		}
		origin(e, s, r, n) {
			if (!this.map) return !1;
			let i = this.map.consumer(), o = i.originalPositionFor({
				column: s,
				line: e
			});
			if (!o.source) return !1;
			let u;
			typeof r == "number" && (u = i.originalPositionFor({
				column: n,
				line: r
			}));
			let a;
			ys(o.source) ? a = Kt(o.source) : a = new URL(o.source, this.map.consumer().sourceRoot || Kt(this.map.mapFile));
			let l = {
				column: o.column,
				endColumn: u && u.column,
				endLine: u && u.line,
				line: o.line,
				url: a.toString()
			};
			if (a.protocol === "file:") if (Xi) l.file = Xi(a);
			else throw new Error("file: protocol is not available in this PostCSS build");
			let f = i.sourceContentFor(o.source);
			return f && (l.source = f), l;
		}
		toJSON() {
			let e = {};
			for (let s of [
				"hasBOM",
				"css",
				"file",
				"id"
			]) this[s] != null && (e[s] = this[s]);
			return this.map && (e.map = { ...this.map }, e.map.consumerCache && (e.map.consumerCache = void 0)), e;
		}
	};
	to.exports = Be;
	Be.default = Be;
	ds && ds.registerInput && ds.registerInput(Be);
});
var Qt = w((kx, so) => {
	"use strict";
	var ro = fe(), Fe = class extends ro {
		constructor(e) {
			super(e), this.type = "atrule";
		}
		append(...e) {
			return this.proxyOf.nodes || (this.nodes = []), super.append(...e);
		}
		prepend(...e) {
			return this.proxyOf.nodes || (this.nodes = []), super.prepend(...e);
		}
	};
	so.exports = Fe;
	Fe.default = Fe;
	ro.registerAtRule(Fe);
});
var $e = w((Tx, ao) => {
	"use strict";
	var no = fe(), io, oo, pe = class extends no {
		constructor(e) {
			super(e), this.type = "root", this.nodes || (this.nodes = []);
		}
		normalize(e, s, r) {
			let n = super.normalize(e);
			if (s) {
				if (r === "prepend") this.nodes.length > 1 ? s.raws.before = this.nodes[1].raws.before : delete s.raws.before;
				else if (this.first !== s) for (let i of n) i.raws.before = s.raws.before;
			}
			return n;
		}
		removeChild(e, s) {
			let r = this.index(e);
			return !s && r === 0 && this.nodes.length > 1 && (this.nodes[1].raws.before = this.nodes[r].raws.before), super.removeChild(e);
		}
		toResult(e = {}) {
			return new io(new oo(), this, e).stringify();
		}
	};
	pe.registerLazyResult = (t) => {
		io = t;
	};
	pe.registerProcessor = (t) => {
		oo = t;
	};
	ao.exports = pe;
	pe.default = pe;
	no.registerRoot(pe);
});
var ws = w((Ax, uo) => {
	"use strict";
	var pt = {
		comma(t) {
			return pt.split(t, [","], !0);
		},
		space(t) {
			return pt.split(t, [
				" ",
				`
`,
				"	"
			]);
		},
		split(t, e, s) {
			let r = [], n = "", i = !1, o = 0, u = !1, a = "", l = !1;
			for (let f of t) l ? l = !1 : f === "\\" ? l = !0 : u ? f === a && (u = !1) : f === "\"" || f === "'" ? (u = !0, a = f) : f === "(" ? o += 1 : f === ")" ? o > 0 && (o -= 1) : o === 0 && e.includes(f) && (i = !0), i ? (n !== "" && r.push(n.trim()), n = "", i = !1) : n += f;
			return (s || n !== "") && r.push(n.trim()), r;
		}
	};
	uo.exports = pt;
	pt.default = pt;
});
var Xt = w((Ox, co) => {
	"use strict";
	var lo = fe(), Kc = ws(), We = class extends lo {
		get selectors() {
			return Kc.comma(this.selector);
		}
		set selectors(e) {
			let s = this.selector ? this.selector.match(/,\s*/) : null, r = s ? s[0] : "," + this.raw("between", "beforeOpen");
			this.selector = e.join(r);
		}
		constructor(e) {
			super(e), this.type = "rule", this.nodes || (this.nodes = []);
		}
	};
	co.exports = We;
	We.default = We;
	lo.registerRule(We);
});
var er = w((Cx, po) => {
	"use strict";
	var Jt = /[\t\n\f\r "#'()/;[\\\]{}]/g, Zt = /[\t\n\f\r !"#'():;@[\\\]{}]|\/(?=\*)/g, Qc = /.[\r\n"'(/\\]/, fo = /[\da-f]/i;
	po.exports = function(e, s = {}) {
		let r = e.css.valueOf(), n = s.ignoreErrors, i, o, u, a, l, f, h, c, g, b, d = r.length, p = 0, m = [], y = [];
		function v() {
			return p;
		}
		function O(W) {
			throw e.error("Unclosed " + W, p);
		}
		function q() {
			return y.length === 0 && p >= d;
		}
		function H(W) {
			if (y.length) return y.pop();
			if (p >= d) return;
			let A = W ? W.ignoreUnclosed : !1;
			switch (i = r.charCodeAt(p), i) {
				case 10:
				case 32:
				case 9:
				case 13:
				case 12:
					a = p;
					do
						a += 1, i = r.charCodeAt(a);
					while (i === 32 || i === 10 || i === 9 || i === 13 || i === 12);
					f = ["space", r.slice(p, a)], p = a - 1;
					break;
				case 91:
				case 93:
				case 123:
				case 125:
				case 58:
				case 59:
				case 41: {
					let k = String.fromCharCode(i);
					f = [
						k,
						k,
						p
					];
					break;
				}
				case 40:
					if (b = m.length ? m.pop()[1] : "", g = r.charCodeAt(p + 1), b === "url" && g !== 39 && g !== 34 && g !== 32 && g !== 10 && g !== 9 && g !== 12 && g !== 13) {
						a = p;
						do {
							if (h = !1, a = r.indexOf(")", a + 1), a === -1) if (n || A) {
								a = p;
								break;
							} else O("bracket");
							for (c = a; r.charCodeAt(c - 1) === 92;) c -= 1, h = !h;
						} while (h);
						f = [
							"brackets",
							r.slice(p, a + 1),
							p,
							a
						], p = a;
					} else a = r.indexOf(")", p + 1), o = r.slice(p, a + 1), a === -1 || Qc.test(o) ? f = [
						"(",
						"(",
						p
					] : (f = [
						"brackets",
						o,
						p,
						a
					], p = a);
					break;
				case 39:
				case 34:
					l = i === 39 ? "'" : "\"", a = p;
					do {
						if (h = !1, a = r.indexOf(l, a + 1), a === -1) if (n || A) {
							a = p + 1;
							break;
						} else O("string");
						for (c = a; r.charCodeAt(c - 1) === 92;) c -= 1, h = !h;
					} while (h);
					f = [
						"string",
						r.slice(p, a + 1),
						p,
						a
					], p = a;
					break;
				case 64:
					Jt.lastIndex = p + 1, Jt.test(r), Jt.lastIndex === 0 ? a = r.length - 1 : a = Jt.lastIndex - 2, f = [
						"at-word",
						r.slice(p, a + 1),
						p,
						a
					], p = a;
					break;
				case 92:
					for (a = p, u = !0; r.charCodeAt(a + 1) === 92;) a += 1, u = !u;
					if (i = r.charCodeAt(a + 1), u && i !== 47 && i !== 32 && i !== 10 && i !== 9 && i !== 13 && i !== 12 && (a += 1, fo.test(r.charAt(a)))) {
						for (; fo.test(r.charAt(a + 1));) a += 1;
						r.charCodeAt(a + 1) === 32 && (a += 1);
					}
					f = [
						"word",
						r.slice(p, a + 1),
						p,
						a
					], p = a;
					break;
				default:
					i === 47 && r.charCodeAt(p + 1) === 42 ? (a = r.indexOf("*/", p + 2) + 1, a === 0 && (n || A ? a = r.length : O("comment")), f = [
						"comment",
						r.slice(p, a + 1),
						p,
						a
					], p = a) : (Zt.lastIndex = p + 1, Zt.test(r), Zt.lastIndex === 0 ? a = r.length - 1 : a = Zt.lastIndex - 2, f = [
						"word",
						r.slice(p, a + 1),
						p,
						a
					], m.push(f), p = a);
					break;
			}
			return p++, f;
		}
		function ne(W) {
			y.push(W);
		}
		return {
			back: ne,
			endOfFile: q,
			nextToken: H,
			position: v
		};
	};
});
var tr = w((Nx, yo) => {
	"use strict";
	var Xc = Qt(), Jc = Me(), Zc = ft(), ef = $e(), ho = Xt(), tf = er(), mo = {
		empty: !0,
		space: !0
	};
	function rf(t) {
		for (let e = t.length - 1; e >= 0; e--) {
			let s = t[e], r = s[3] || s[2];
			if (r) return r;
		}
	}
	var vs = class {
		constructor(e) {
			this.input = e, this.root = new ef(), this.current = this.root, this.spaces = "", this.semicolon = !1, this.createTokenizer(), this.root.source = {
				input: e,
				start: {
					column: 1,
					line: 1,
					offset: 0
				}
			};
		}
		atrule(e) {
			let s = new Xc();
			s.name = e[1].slice(1), s.name === "" && this.unnamedAtrule(s, e), this.init(s, e[2]);
			let r, n, i, o = !1, u = !1, a = [], l = [];
			for (; !this.tokenizer.endOfFile();) {
				if (e = this.tokenizer.nextToken(), r = e[0], r === "(" || r === "[" ? l.push(r === "(" ? ")" : "]") : r === "{" && l.length > 0 ? l.push("}") : r === l[l.length - 1] && l.pop(), l.length === 0) if (r === ";") {
					s.source.end = this.getPosition(e[2]), s.source.end.offset++, this.semicolon = !0;
					break;
				} else if (r === "{") {
					u = !0;
					break;
				} else if (r === "}") {
					if (a.length > 0) {
						for (i = a.length - 1, n = a[i]; n && n[0] === "space";) n = a[--i];
						n && (s.source.end = this.getPosition(n[3] || n[2]), s.source.end.offset++);
					}
					this.end(e);
					break;
				} else a.push(e);
				else a.push(e);
				if (this.tokenizer.endOfFile()) {
					o = !0;
					break;
				}
			}
			s.raws.between = this.spacesAndCommentsFromEnd(a), a.length ? (s.raws.afterName = this.spacesAndCommentsFromStart(a), this.raw(s, "params", a), o && (e = a[a.length - 1], s.source.end = this.getPosition(e[3] || e[2]), s.source.end.offset++, this.spaces = s.raws.between, s.raws.between = "")) : (s.raws.afterName = "", s.params = ""), u && (s.nodes = [], this.current = s);
		}
		checkMissedSemicolon(e) {
			let s = this.colon(e);
			if (s === !1) return;
			let r = 0, n;
			for (let i = s - 1; i >= 0 && (n = e[i], !(n[0] !== "space" && (r += 1, r === 2))); i--);
			throw this.input.error("Missed semicolon", n[0] === "word" ? n[3] + 1 : n[2]);
		}
		colon(e) {
			let s = 0, r, n, i;
			for (let [o, u] of e.entries()) {
				if (n = u, i = n[0], i === "(" && (s += 1), i === ")" && (s -= 1), s === 0 && i === ":") if (!r) this.doubleColon(n);
				else {
					if (r[0] === "word" && r[1] === "progid") continue;
					return o;
				}
				r = n;
			}
			return !1;
		}
		comment(e) {
			let s = new Jc();
			this.init(s, e[2]), s.source.end = this.getPosition(e[3] || e[2]), s.source.end.offset++;
			let r = e[1].slice(2, -2);
			if (/^\s*$/.test(r)) s.text = "", s.raws.left = r, s.raws.right = "";
			else {
				let n = r.match(/^(\s*)([^]*\S)(\s*)$/);
				s.text = n[2], s.raws.left = n[1], s.raws.right = n[3];
			}
		}
		createTokenizer() {
			this.tokenizer = tf(this.input);
		}
		decl(e, s) {
			let r = new Zc();
			this.init(r, e[0][2]);
			let n = e[e.length - 1];
			for (n[0] === ";" && (this.semicolon = !0, e.pop()), r.source.end = this.getPosition(n[3] || n[2] || rf(e)), r.source.end.offset++; e[0][0] !== "word";) e.length === 1 && this.unknownWord(e), r.raws.before += e.shift()[1];
			for (r.source.start = this.getPosition(e[0][2]), r.prop = ""; e.length;) {
				let l = e[0][0];
				if (l === ":" || l === "space" || l === "comment") break;
				r.prop += e.shift()[1];
			}
			r.raws.between = "";
			let i;
			for (; e.length;) if (i = e.shift(), i[0] === ":") {
				r.raws.between += i[1];
				break;
			} else i[0] === "word" && /\w/.test(i[1]) && this.unknownWord([i]), r.raws.between += i[1];
			(r.prop[0] === "_" || r.prop[0] === "*") && (r.raws.before += r.prop[0], r.prop = r.prop.slice(1));
			let o = [], u;
			for (; e.length && (u = e[0][0], !(u !== "space" && u !== "comment"));) o.push(e.shift());
			this.precheckMissedSemicolon(e);
			for (let l = e.length - 1; l >= 0; l--) {
				if (i = e[l], i[1].toLowerCase() === "!important") {
					r.important = !0;
					let f = this.stringFrom(e, l);
					f = this.spacesFromEnd(e) + f, f !== " !important" && (r.raws.important = f);
					break;
				} else if (i[1].toLowerCase() === "important") {
					let f = e.slice(0), h = "";
					for (let c = l; c > 0; c--) {
						let g = f[c][0];
						if (h.trim().startsWith("!") && g !== "space") break;
						h = f.pop()[1] + h;
					}
					h.trim().startsWith("!") && (r.important = !0, r.raws.important = h, e = f);
				}
				if (i[0] !== "space" && i[0] !== "comment") break;
			}
			e.some((l) => l[0] !== "space" && l[0] !== "comment") && (r.raws.between += o.map((l) => l[1]).join(""), o = []), this.raw(r, "value", o.concat(e), s), r.value.includes(":") && !s && this.checkMissedSemicolon(e);
		}
		doubleColon(e) {
			throw this.input.error("Double colon", { offset: e[2] }, { offset: e[2] + e[1].length });
		}
		emptyRule(e) {
			let s = new ho();
			this.init(s, e[2]), s.selector = "", s.raws.between = "", this.current = s;
		}
		end(e) {
			this.current.nodes && this.current.nodes.length && (this.current.raws.semicolon = this.semicolon), this.semicolon = !1, this.current.raws.after = (this.current.raws.after || "") + this.spaces, this.spaces = "", this.current.parent ? (this.current.source.end = this.getPosition(e[2]), this.current.source.end.offset++, this.current = this.current.parent) : this.unexpectedClose(e);
		}
		endFile() {
			this.current.parent && this.unclosedBlock(), this.current.nodes && this.current.nodes.length && (this.current.raws.semicolon = this.semicolon), this.current.raws.after = (this.current.raws.after || "") + this.spaces, this.root.source.end = this.getPosition(this.tokenizer.position());
		}
		freeSemicolon(e) {
			if (this.spaces += e[1], this.current.nodes) {
				let s = this.current.nodes[this.current.nodes.length - 1];
				s && s.type === "rule" && !s.raws.ownSemicolon && (s.raws.ownSemicolon = this.spaces, this.spaces = "", s.source.end = this.getPosition(e[2]), s.source.end.offset += s.raws.ownSemicolon.length);
			}
		}
		getPosition(e) {
			let s = this.input.fromOffset(e);
			return {
				column: s.col,
				line: s.line,
				offset: e
			};
		}
		init(e, s) {
			this.current.push(e), e.source = {
				input: this.input,
				start: this.getPosition(s)
			}, e.raws.before = this.spaces, this.spaces = "", e.type !== "comment" && (this.semicolon = !1);
		}
		other(e) {
			let s = !1, r = null, n = !1, i = null, o = [], u = e[1].startsWith("--"), a = [], l = e;
			for (; l;) {
				if (r = l[0], a.push(l), r === "(" || r === "[") i || (i = l), o.push(r === "(" ? ")" : "]");
				else if (u && n && r === "{") i || (i = l), o.push("}");
				else if (o.length === 0) if (r === ";") if (n) {
					this.decl(a, u);
					return;
				} else break;
				else if (r === "{") {
					this.rule(a);
					return;
				} else if (r === "}") {
					this.tokenizer.back(a.pop()), s = !0;
					break;
				} else r === ":" && (n = !0);
				else r === o[o.length - 1] && (o.pop(), o.length === 0 && (i = null));
				l = this.tokenizer.nextToken();
			}
			if (this.tokenizer.endOfFile() && (s = !0), o.length > 0 && this.unclosedBracket(i), s && n) {
				if (!u) for (; a.length && (l = a[a.length - 1][0], !(l !== "space" && l !== "comment"));) this.tokenizer.back(a.pop());
				this.decl(a, u);
			} else this.unknownWord(a);
		}
		parse() {
			let e;
			for (; !this.tokenizer.endOfFile();) switch (e = this.tokenizer.nextToken(), e[0]) {
				case "space":
					this.spaces += e[1];
					break;
				case ";":
					this.freeSemicolon(e);
					break;
				case "}":
					this.end(e);
					break;
				case "comment":
					this.comment(e);
					break;
				case "at-word":
					this.atrule(e);
					break;
				case "{":
					this.emptyRule(e);
					break;
				default:
					this.other(e);
					break;
			}
			this.endFile();
		}
		precheckMissedSemicolon() {}
		raw(e, s, r, n) {
			let i, o, u = r.length, a = "", l = !0, f, h;
			for (let c = 0; c < u; c += 1) i = r[c], o = i[0], o === "space" && c === u - 1 && !n ? l = !1 : o === "comment" ? (h = r[c - 1] ? r[c - 1][0] : "empty", f = r[c + 1] ? r[c + 1][0] : "empty", !mo[h] && !mo[f] ? a.slice(-1) === "," ? l = !1 : a += i[1] : l = !1) : a += i[1];
			if (!l) {
				let c = r.reduce((g, b) => g + b[1], "");
				e.raws[s] = {
					raw: c,
					value: a
				};
			}
			e[s] = a;
		}
		rule(e) {
			e.pop();
			let s = new ho();
			this.init(s, e[0][2]), s.raws.between = this.spacesAndCommentsFromEnd(e), this.raw(s, "selector", e), this.current = s;
		}
		spacesAndCommentsFromEnd(e) {
			let s, r = "";
			for (; e.length && (s = e[e.length - 1][0], !(s !== "space" && s !== "comment"));) r = e.pop()[1] + r;
			return r;
		}
		spacesAndCommentsFromStart(e) {
			let s, r = "";
			for (; e.length && (s = e[0][0], !(s !== "space" && s !== "comment"));) r += e.shift()[1];
			return r;
		}
		spacesFromEnd(e) {
			let s, r = "";
			for (; e.length && (s = e[e.length - 1][0], s === "space");) r = e.pop()[1] + r;
			return r;
		}
		stringFrom(e, s) {
			let r = "";
			for (let n = s; n < e.length; n++) r += e[n][1];
			return e.splice(s, e.length - s), r;
		}
		unclosedBlock() {
			let e = this.current.source.start;
			throw this.input.error("Unclosed block", e.line, e.column);
		}
		unclosedBracket(e) {
			throw this.input.error("Unclosed bracket", { offset: e[2] }, { offset: e[2] + 1 });
		}
		unexpectedClose(e) {
			throw this.input.error("Unexpected }", { offset: e[2] }, { offset: e[2] + 1 });
		}
		unknownWord(e) {
			throw this.input.error("Unknown word " + e[0][1], { offset: e[0][2] }, { offset: e[0][2] + e[0][1].length });
		}
		unnamedAtrule(e, s) {
			throw this.input.error("At-rule without name", { offset: s[2] }, { offset: s[2] + s[1].length });
		}
	};
	yo.exports = vs;
});
var ht = w((Px, go) => {
	"use strict";
	var sf = fe(), nf = Ue(), of = tr();
	function rr(t, e) {
		let r = new of(new nf(t, e));
		try {
			r.parse();
		} catch (n) {
			throw n;
		}
		return r.root;
	}
	go.exports = rr;
	rr.default = rr;
	sf.registerParse(rr);
});
var wo = w((Rx, xs) => {
	var af = er(), uf = Ue();
	xs.exports = { isInlineComment(t) {
		if (t[0] === "word" && t[1].slice(0, 2) === "//") {
			let e = t, s = [], r, n;
			for (; t;) {
				if (/\r?\n/.test(t[1])) {
					if (/['"].*\r?\n/.test(t[1])) {
						s.push(t[1].substring(0, t[1].indexOf(`
`))), n = t[1].substring(t[1].indexOf(`
`));
						let o = this.input.css.valueOf().substring(this.tokenizer.position());
						n += o, r = t[3] + o.length - n.length;
					} else this.tokenizer.back(t);
					break;
				}
				s.push(t[1]), r = t[2], t = this.tokenizer.nextToken({ ignoreUnclosed: !0 });
			}
			let i = [
				"comment",
				s.join(""),
				e[2],
				r
			];
			return this.inlineComment(i), n && (this.input = new uf(n), this.tokenizer = af(this.input)), !0;
		} else if (t[1] === "/") {
			let e = this.tokenizer.nextToken({ ignoreUnclosed: !0 });
			if (e[0] === "comment" && /^\/\*/.test(e[1])) return e[0] = "word", e[1] = e[1].slice(1), t[1] = "//", this.tokenizer.back(e), xs.exports.isInlineComment.bind(this)(t);
		}
		return !1;
	} };
});
var xo = w((Ix, vo) => {
	vo.exports = { interpolation(t) {
		let e = [t, this.tokenizer.nextToken()], s = ["word", "}"];
		if (e[0][1].length > 1 || e[1][0] !== "{") return this.tokenizer.back(e[1]), !1;
		for (t = this.tokenizer.nextToken(); t && s.includes(t[0]);) e.push(t), t = this.tokenizer.nextToken();
		let r = e.map((u) => u[1]), [n] = e, i = e.pop(), o = [
			"word",
			r.join(""),
			n[2],
			i[2]
		];
		return this.tokenizer.back(t), this.tokenizer.back(o), !0;
	} };
});
var bo = w((qx, _o) => {
	var lf = /^#[0-9a-fA-F]{6}$|^#[0-9a-fA-F]{3}$/, cf = /\.[0-9]/, ff = (t) => {
		let [, e] = t, [s] = e;
		return (s === "." || s === "#") && lf.test(e) === !1 && cf.test(e) === !1;
	};
	_o.exports = { isMixinToken: ff };
});
var So = w((Lx, Eo) => {
	var pf = er(), hf = /^url\((.+)\)/;
	Eo.exports = (t) => {
		let { name: e, params: s = "" } = t;
		if (e === "import" && s.length) {
			t.import = !0;
			let r = pf({ css: s });
			for (t.filename = s.replace(hf, "$1"); !r.endOfFile();) {
				let [n, i] = r.nextToken();
				if (n === "word" && i === "url") return;
				if (n === "brackets") {
					t.options = i, t.filename = s.replace(i, "").trim();
					break;
				}
			}
		}
	};
});
var Oo = w((Dx, Ao) => {
	var ko = /:$/, To = /^:(\s+)?/;
	Ao.exports = (t) => {
		let { name: e, params: s = "" } = t;
		if (t.name.slice(-1) === ":") {
			if (ko.test(e)) {
				let [r] = e.match(ko);
				t.name = e.replace(r, ""), t.raws.afterName = r + (t.raws.afterName || ""), t.variable = !0, t.value = t.params;
			}
			if (To.test(s)) {
				let [r] = s.match(To);
				t.value = s.replace(r, ""), t.raws.afterName = (t.raws.afterName || "") + r, t.variable = !0;
			}
		}
	};
});
var Po = w((Bx, No) => {
	var df = Me(), mf = tr(), { isInlineComment: yf } = wo(), { interpolation: Co } = xo(), { isMixinToken: gf } = bo(), wf = So(), vf = Oo(), xf = /(!\s*important)$/i;
	No.exports = class extends mf {
		constructor(...e) {
			super(...e), this.lastNode = null;
		}
		atrule(e) {
			Co.bind(this)(e) || (super.atrule(e), wf(this.lastNode), vf(this.lastNode));
		}
		decl(...e) {
			super.decl(...e), /extend\(.+\)/i.test(this.lastNode.value) && (this.lastNode.extend = !0);
		}
		each(e) {
			e[0][1] = ` ${e[0][1]}`;
			let s = e.findIndex((u) => u[0] === "("), r = e.reverse().find((u) => u[0] === ")"), n = e.reverse().indexOf(r), o = e.splice(s, n).map((u) => u[1]).join("");
			for (let u of e.reverse()) this.tokenizer.back(u);
			this.atrule(this.tokenizer.nextToken()), this.lastNode.function = !0, this.lastNode.params = o;
		}
		init(e, s, r) {
			super.init(e, s, r), this.lastNode = e;
		}
		inlineComment(e) {
			let s = new df(), r = e[1].slice(2);
			if (this.init(s, e[2]), s.source.end = this.getPosition(e[3] || e[2]), s.inline = !0, s.raws.begin = "//", /^\s*$/.test(r)) s.text = "", s.raws.left = r, s.raws.right = "";
			else {
				let n = r.match(/^(\s*)([^]*[^\s])(\s*)$/);
				[, s.raws.left, s.text, s.raws.right] = n;
			}
		}
		mixin(e) {
			let [s] = e, r = s[1].slice(0, 1), n = e.findIndex((l) => l[0] === "brackets"), i = e.findIndex((l) => l[0] === "("), o = "";
			if ((n < 0 || n > 3) && i > 0) {
				let l = e.reduce((v, O, q) => O[0] === ")" ? q : v), h = e.slice(i, l + i).map((v) => v[1]).join(""), [c] = e.slice(i), g = [c[2], c[3]], [b] = e.slice(l, l + 1), d = [b[2], b[3]], p = ["brackets", h].concat(g, d), m = e.slice(0, i), y = e.slice(l + 1);
				e = m, e.push(p), e = e.concat(y);
			}
			let u = [];
			for (let l of e) if ((l[1] === "!" || u.length) && u.push(l), l[1] === "important") break;
			if (u.length) {
				let [l] = u, f = e.indexOf(l), h = u[u.length - 1], c = [l[2], l[3]], g = [h[4], h[5]], d = ["word", u.map((p) => p[1]).join("")].concat(c, g);
				e.splice(f, u.length, d);
			}
			let a = e.findIndex((l) => xf.test(l[1]));
			a > 0 && ([, o] = e[a], e.splice(a, 1));
			for (let l of e.reverse()) this.tokenizer.back(l);
			this.atrule(this.tokenizer.nextToken()), this.lastNode.mixin = !0, this.lastNode.raws.identifier = r, o && (this.lastNode.important = !0, this.lastNode.raws.important = o);
		}
		other(e) {
			yf.bind(this)(e) || super.other(e);
		}
		rule(e) {
			let s = e[e.length - 1], r = e[e.length - 2];
			if (r[0] === "at-word" && s[0] === "{" && (this.tokenizer.back(s), Co.bind(this)(r))) {
				let i = this.tokenizer.nextToken();
				e = e.slice(0, e.length - 2).concat([i]);
				for (let o of e.reverse()) this.tokenizer.back(o);
				return;
			}
			super.rule(e), /:extend\(.+\)/i.test(this.lastNode.selector) && (this.lastNode.extend = !0);
		}
		unknownWord(e) {
			let [s] = e;
			if (e[0][1] === "each" && e[1][0] === "(") {
				this.each(e);
				return;
			}
			if (gf(s)) {
				this.mixin(e);
				return;
			}
			super.unknownWord(e);
		}
	};
});
var Io = w((Fx, Ro) => {
	var _f = jt();
	Ro.exports = class extends _f {
		atrule(e, s) {
			if (!e.mixin && !e.variable && !e.function) {
				super.atrule(e, s);
				return;
			}
			let n = `${e.function ? "" : e.raws.identifier || "@"}${e.name}`, i = e.params ? this.rawValue(e, "params") : "", o = e.raws.important || "";
			if (e.variable && (i = e.value), typeof e.raws.afterName < "u" ? n += e.raws.afterName : i && (n += " "), e.nodes) this.block(e, n + i + o);
			else {
				let u = (e.raws.between || "") + o + (s ? ";" : "");
				this.builder(n + i + u, e);
			}
		}
		comment(e) {
			if (e.inline) {
				let s = this.raw(e, "left", "commentLeft"), r = this.raw(e, "right", "commentRight");
				this.builder(`//${s}${e.text}${r}`, e);
			} else super.comment(e);
		}
	};
});
var qo = w(($x, _s) => {
	var bf = Ue(), Ef = Po(), Sf = Io();
	_s.exports = {
		parse(t, e) {
			let s = new bf(t, e), r = new Ef(s);
			return r.parse(), r.root.walk((n) => {
				let i = s.css.lastIndexOf(n.source.input.css);
				if (i === 0) return;
				if (i + n.source.input.css.length !== s.css.length) throw new Error("Invalid state detected in postcss-less");
				let o = i + n.source.start.offset, u = s.fromOffset(i + n.source.start.offset);
				if (n.source.start = {
					offset: o,
					line: u.line,
					column: u.col
				}, n.source.end) {
					let a = i + n.source.end.offset, l = s.fromOffset(i + n.source.end.offset);
					n.source.end = {
						offset: a,
						line: l.line,
						column: l.col
					};
				}
			}), r.root;
		},
		stringify(t, e) {
			new Sf(e).stringify(t);
		},
		nodeToString(t) {
			let e = "";
			return _s.exports.stringify(t, (s) => {
				e += s;
			}), e;
		}
	};
});
var sr = w((Wx, Mo) => {
	"use strict";
	var kf = fe(), Lo, Do, be = class extends kf {
		constructor(e) {
			super({
				type: "document",
				...e
			}), this.nodes || (this.nodes = []);
		}
		toResult(e = {}) {
			return new Lo(new Do(), this, e).stringify();
		}
	};
	be.registerLazyResult = (t) => {
		Lo = t;
	};
	be.registerProcessor = (t) => {
		Do = t;
	};
	Mo.exports = be;
	be.default = be;
});
var Uo = w((Gx, Bo) => {
	"use strict";
	var Tf = Qt(), Af = Me(), Of = ft(), Cf = Ue(), Nf = hs(), Pf = $e(), Rf = Xt();
	function dt(t, e) {
		if (Array.isArray(t)) return t.map((n) => dt(n));
		let { inputs: s, ...r } = t;
		if (s) {
			e = [];
			for (let n of s) {
				let i = {
					...n,
					__proto__: Cf.prototype
				};
				i.map && (i.map = {
					...i.map,
					__proto__: Nf.prototype
				}), e.push(i);
			}
		}
		if (r.nodes && (r.nodes = t.nodes.map((n) => dt(n, e))), r.source) {
			let { inputId: n, ...i } = r.source;
			r.source = i, n != null && (r.source.input = e[n]);
		}
		if (r.type === "root") return new Pf(r);
		if (r.type === "decl") return new Of(r);
		if (r.type === "rule") return new Rf(r);
		if (r.type === "comment") return new Af(r);
		if (r.type === "atrule") return new Tf(r);
		throw new Error("Unknown node type: " + t.type);
	}
	Bo.exports = dt;
	dt.default = dt;
});
var bs = w((Yx, Fo) => {
	Fo.exports = class {
		generate() {}
	};
});
var Es = w((zx, $o) => {
	"use strict";
	var mt = class {
		constructor(e, s = {}) {
			if (this.type = "warning", this.text = e, s.node && s.node.source) {
				let r = s.node.rangeBy(s);
				this.line = r.start.line, this.column = r.start.column, this.endLine = r.end.line, this.endColumn = r.end.column;
			}
			for (let r in s) this[r] = s[r];
		}
		toString() {
			return this.node ? this.node.error(this.text, {
				index: this.index,
				plugin: this.plugin,
				word: this.word
			}).message : this.plugin ? this.plugin + ": " + this.text : this.text;
		}
	};
	$o.exports = mt;
	mt.default = mt;
});
var nr = w((jx, Wo) => {
	"use strict";
	var If = Es(), yt = class {
		get content() {
			return this.css;
		}
		constructor(e, s, r) {
			this.processor = e, this.messages = [], this.root = s, this.opts = r, this.css = "", this.map = void 0;
		}
		toString() {
			return this.css;
		}
		warn(e, s = {}) {
			s.plugin || this.lastPlugin && this.lastPlugin.postcssPlugin && (s.plugin = this.lastPlugin.postcssPlugin);
			let r = new If(e, s);
			return this.messages.push(r), r;
		}
		warnings() {
			return this.messages.filter((e) => e.type === "warning");
		}
	};
	Wo.exports = yt;
	yt.default = yt;
});
var Ss = w((Hx, Yo) => {
	"use strict";
	var Go = {};
	Yo.exports = function(e) {
		Go[e] || (Go[e] = !0, typeof console < "u" && console.warn && console.warn(e));
	};
});
var As = w((Qx, Ho) => {
	"use strict";
	var qf = fe(), Lf = sr(), Df = bs(), Mf = ht(), Vo = nr(), Bf = $e(), Uf = it(), { isClean: Q, my: Ff } = Ht();
	Ss();
	var $f = {
		atrule: "AtRule",
		comment: "Comment",
		decl: "Declaration",
		document: "Document",
		root: "Root",
		rule: "Rule"
	}, Wf = {
		AtRule: !0,
		AtRuleExit: !0,
		Comment: !0,
		CommentExit: !0,
		Declaration: !0,
		DeclarationExit: !0,
		Document: !0,
		DocumentExit: !0,
		Once: !0,
		OnceExit: !0,
		postcssPlugin: !0,
		prepare: !0,
		Root: !0,
		RootExit: !0,
		Rule: !0,
		RuleExit: !0
	}, Gf = {
		Once: !0,
		postcssPlugin: !0,
		prepare: !0
	}, Ge = 0;
	function gt(t) {
		return typeof t == "object" && typeof t.then == "function";
	}
	function jo(t) {
		let e = !1, s = $f[t.type];
		return t.type === "decl" ? e = t.prop.toLowerCase() : t.type === "atrule" && (e = t.name.toLowerCase()), e && t.append ? [
			s,
			s + "-" + e,
			Ge,
			s + "Exit",
			s + "Exit-" + e
		] : e ? [
			s,
			s + "-" + e,
			s + "Exit",
			s + "Exit-" + e
		] : t.append ? [
			s,
			Ge,
			s + "Exit"
		] : [s, s + "Exit"];
	}
	function zo(t) {
		let e;
		return t.type === "document" ? e = [
			"Document",
			Ge,
			"DocumentExit"
		] : t.type === "root" ? e = [
			"Root",
			Ge,
			"RootExit"
		] : e = jo(t), {
			eventIndex: 0,
			events: e,
			iterator: 0,
			node: t,
			visitorIndex: 0,
			visitors: []
		};
	}
	function ks(t) {
		return t[Q] = !1, t.nodes && t.nodes.forEach((e) => ks(e)), t;
	}
	var Ts = {}, he = class t {
		get content() {
			return this.stringify().content;
		}
		get css() {
			return this.stringify().css;
		}
		get map() {
			return this.stringify().map;
		}
		get messages() {
			return this.sync().messages;
		}
		get opts() {
			return this.result.opts;
		}
		get processor() {
			return this.result.processor;
		}
		get root() {
			return this.sync().root;
		}
		get [Symbol.toStringTag]() {
			return "LazyResult";
		}
		constructor(e, s, r) {
			this.stringified = !1, this.processed = !1;
			let n;
			if (typeof s == "object" && s !== null && (s.type === "root" || s.type === "document")) n = ks(s);
			else if (s instanceof t || s instanceof Vo) n = ks(s.root), s.map && (typeof r.map > "u" && (r.map = {}), r.map.inline || (r.map.inline = !1), r.map.prev = s.map);
			else {
				let i = Mf;
				r.syntax && (i = r.syntax.parse), r.parser && (i = r.parser), i.parse && (i = i.parse);
				try {
					n = i(s, r);
				} catch (o) {
					this.processed = !0, this.error = o;
				}
				n && !n[Ff] && qf.rebuild(n);
			}
			this.result = new Vo(e, n, r), this.helpers = {
				...Ts,
				postcss: Ts,
				result: this.result
			}, this.plugins = this.processor.plugins.map((i) => typeof i == "object" && i.prepare ? {
				...i,
				...i.prepare(this.result)
			} : i);
		}
		async() {
			return this.error ? Promise.reject(this.error) : this.processed ? Promise.resolve(this.result) : (this.processing || (this.processing = this.runAsync()), this.processing);
		}
		catch(e) {
			return this.async().catch(e);
		}
		finally(e) {
			return this.async().then(e, e);
		}
		getAsyncError() {
			throw new Error("Use process(css).then(cb) to work with async plugins");
		}
		handleError(e, s) {
			let r = this.result.lastPlugin;
			try {
				s && s.addToError(e), this.error = e, e.name === "CssSyntaxError" && !e.plugin ? (e.plugin = r.postcssPlugin, e.setMessage()) : r.postcssVersion;
			} catch (n) {
				console && console.error && console.error(n);
			}
			return e;
		}
		prepareVisitors() {
			this.listeners = {};
			let e = (s, r, n) => {
				this.listeners[r] || (this.listeners[r] = []), this.listeners[r].push([s, n]);
			};
			for (let s of this.plugins) if (typeof s == "object") for (let r in s) {
				if (!Wf[r] && /^[A-Z]/.test(r)) throw new Error(`Unknown event ${r} in ${s.postcssPlugin}. Try to update PostCSS (${this.processor.version} now).`);
				if (!Gf[r]) if (typeof s[r] == "object") for (let n in s[r]) n === "*" ? e(s, r, s[r][n]) : e(s, r + "-" + n.toLowerCase(), s[r][n]);
				else typeof s[r] == "function" && e(s, r, s[r]);
			}
			this.hasListener = Object.keys(this.listeners).length > 0;
		}
		async runAsync() {
			this.plugin = 0;
			for (let e = 0; e < this.plugins.length; e++) {
				let s = this.plugins[e], r = this.runOnRoot(s);
				if (gt(r)) try {
					await r;
				} catch (n) {
					throw this.handleError(n);
				}
			}
			if (this.prepareVisitors(), this.hasListener) {
				let e = this.result.root;
				for (; !e[Q];) {
					e[Q] = !0;
					let s = [zo(e)];
					for (; s.length > 0;) {
						let r = this.visitTick(s);
						if (gt(r)) try {
							await r;
						} catch (n) {
							let i = s[s.length - 1].node;
							throw this.handleError(n, i);
						}
					}
				}
				if (this.listeners.OnceExit) for (let [s, r] of this.listeners.OnceExit) {
					this.result.lastPlugin = s;
					try {
						if (e.type === "document") {
							let n = e.nodes.map((i) => r(i, this.helpers));
							await Promise.all(n);
						} else await r(e, this.helpers);
					} catch (n) {
						throw this.handleError(n);
					}
				}
			}
			return this.processed = !0, this.stringify();
		}
		runOnRoot(e) {
			this.result.lastPlugin = e;
			try {
				if (typeof e == "object" && e.Once) {
					if (this.result.root.type === "document") {
						let s = this.result.root.nodes.map((r) => e.Once(r, this.helpers));
						return gt(s[0]) ? Promise.all(s) : s;
					}
					return e.Once(this.result.root, this.helpers);
				} else if (typeof e == "function") return e(this.result.root, this.result);
			} catch (s) {
				throw this.handleError(s);
			}
		}
		stringify() {
			if (this.error) throw this.error;
			if (this.stringified) return this.result;
			this.stringified = !0, this.sync();
			let e = this.result.opts, s = Uf;
			e.syntax && (s = e.syntax.stringify), e.stringifier && (s = e.stringifier), s.stringify && (s = s.stringify);
			let n = new Df(s, this.result.root, this.result.opts).generate();
			return this.result.css = n[0], this.result.map = n[1], this.result;
		}
		sync() {
			if (this.error) throw this.error;
			if (this.processed) return this.result;
			if (this.processed = !0, this.processing) throw this.getAsyncError();
			for (let e of this.plugins) if (gt(this.runOnRoot(e))) throw this.getAsyncError();
			if (this.prepareVisitors(), this.hasListener) {
				let e = this.result.root;
				for (; !e[Q];) e[Q] = !0, this.walkSync(e);
				if (this.listeners.OnceExit) if (e.type === "document") for (let s of e.nodes) this.visitSync(this.listeners.OnceExit, s);
				else this.visitSync(this.listeners.OnceExit, e);
			}
			return this.result;
		}
		then(e, s) {
			return this.async().then(e, s);
		}
		toString() {
			return this.css;
		}
		visitSync(e, s) {
			for (let [r, n] of e) {
				this.result.lastPlugin = r;
				let i;
				try {
					i = n(s, this.helpers);
				} catch (o) {
					throw this.handleError(o, s.proxyOf);
				}
				if (s.type !== "root" && s.type !== "document" && !s.parent) return !0;
				if (gt(i)) throw this.getAsyncError();
			}
		}
		visitTick(e) {
			let s = e[e.length - 1], { node: r, visitors: n } = s;
			if (r.type !== "root" && r.type !== "document" && !r.parent) {
				e.pop();
				return;
			}
			if (n.length > 0 && s.visitorIndex < n.length) {
				let [o, u] = n[s.visitorIndex];
				s.visitorIndex += 1, s.visitorIndex === n.length && (s.visitors = [], s.visitorIndex = 0), this.result.lastPlugin = o;
				try {
					return u(r.toProxy(), this.helpers);
				} catch (a) {
					throw this.handleError(a, r);
				}
			}
			if (s.iterator !== 0) {
				let o = s.iterator, u;
				for (; u = r.nodes[r.indexes[o]];) if (r.indexes[o] += 1, !u[Q]) {
					u[Q] = !0, e.push(zo(u));
					return;
				}
				s.iterator = 0, delete r.indexes[o];
			}
			let i = s.events;
			for (; s.eventIndex < i.length;) {
				let o = i[s.eventIndex];
				if (s.eventIndex += 1, o === Ge) {
					r.nodes && r.nodes.length && (r[Q] = !0, s.iterator = r.getIterator());
					return;
				} else if (this.listeners[o]) {
					s.visitors = this.listeners[o];
					return;
				}
			}
			e.pop();
		}
		walkSync(e) {
			e[Q] = !0;
			let s = jo(e);
			for (let r of s) if (r === Ge) e.nodes && e.each((n) => {
				n[Q] || this.walkSync(n);
			});
			else {
				let n = this.listeners[r];
				if (n && this.visitSync(n, e.toProxy())) return;
			}
		}
		warnings() {
			return this.sync().warnings();
		}
	};
	he.registerPostcss = (t) => {
		Ts = t;
	};
	Ho.exports = he;
	he.default = he;
	Bf.registerLazyResult(he);
	Lf.registerLazyResult(he);
});
var Qo = w((Jx, Ko) => {
	"use strict";
	var Yf = bs(), Vf = ht(), zf = nr(), jf = it();
	Ss();
	var wt = class {
		get content() {
			return this.result.css;
		}
		get css() {
			return this.result.css;
		}
		get map() {
			return this.result.map;
		}
		get messages() {
			return [];
		}
		get opts() {
			return this.result.opts;
		}
		get processor() {
			return this.result.processor;
		}
		get root() {
			if (this._root) return this._root;
			let e, s = Vf;
			try {
				e = s(this._css, this._opts);
			} catch (r) {
				this.error = r;
			}
			if (this.error) throw this.error;
			return this._root = e, e;
		}
		get [Symbol.toStringTag]() {
			return "NoWorkResult";
		}
		constructor(e, s, r) {
			s = s.toString(), this.stringified = !1, this._processor = e, this._css = s, this._opts = r, this._map = void 0;
			let n, i = jf;
			this.result = new zf(this._processor, n, this._opts), this.result.css = s;
			let o = this;
			Object.defineProperty(this.result, "root", { get() {
				return o.root;
			} });
			let u = new Yf(i, n, this._opts, s);
			if (u.isMap()) {
				let [a, l] = u.generate();
				a && (this.result.css = a), l && (this.result.map = l);
			} else u.clearAnnotation(), this.result.css = u.css;
		}
		async() {
			return this.error ? Promise.reject(this.error) : Promise.resolve(this.result);
		}
		catch(e) {
			return this.async().catch(e);
		}
		finally(e) {
			return this.async().then(e, e);
		}
		sync() {
			if (this.error) throw this.error;
			return this.result;
		}
		then(e, s) {
			return this.async().then(e, s);
		}
		toString() {
			return this._css;
		}
		warnings() {
			return [];
		}
	};
	Ko.exports = wt;
	wt.default = wt;
});
var Jo = w((Zx, Xo) => {
	"use strict";
	var Hf = sr(), Kf = As(), Qf = Qo(), Xf = $e(), Ee = class {
		constructor(e = []) {
			this.version = "8.5.6", this.plugins = this.normalize(e);
		}
		normalize(e) {
			let s = [];
			for (let r of e) if (r.postcss === !0 ? r = r() : r.postcss && (r = r.postcss), typeof r == "object" && Array.isArray(r.plugins)) s = s.concat(r.plugins);
			else if (typeof r == "object" && r.postcssPlugin) s.push(r);
			else if (typeof r == "function") s.push(r);
			else if (!(typeof r == "object" && (r.parse || r.stringify))) throw new Error(r + " is not a PostCSS plugin");
			return s;
		}
		process(e, s = {}) {
			return !this.plugins.length && !s.parser && !s.stringifier && !s.syntax ? new Qf(this, e, s) : new Kf(this, e, s);
		}
		use(e) {
			return this.plugins = this.plugins.concat(this.normalize([e])), this;
		}
	};
	Xo.exports = Ee;
	Ee.default = Ee;
	Xf.registerProcessor(Ee);
	Hf.registerProcessor(Ee);
});
var ir = w((e_, ia) => {
	"use strict";
	var Zo = Qt(), ea = Me(), Jf = fe(), Zf = zt(), ta = ft(), ra = sr(), ep = Uo(), tp = Ue(), rp = As(), sp = ws(), np = ut(), ip = ht(), Os = Jo(), op = nr(), sa = $e(), na = Xt(), ap = it(), up = Es();
	function S(...t) {
		return t.length === 1 && Array.isArray(t[0]) && (t = t[0]), new Os(t);
	}
	S.plugin = function(e, s) {
		let r = !1;
		function n(...o) {
			console && console.warn && !r && (r = !0, console.warn(e + `: postcss.plugin was deprecated. Migration guide:
https://evilmartians.com/chronicles/postcss-8-plugin-migration`));
			let u = s(...o);
			return u.postcssPlugin = e, u.postcssVersion = new Os().version, u;
		}
		let i;
		return Object.defineProperty(n, "postcss", { get() {
			return i || (i = n()), i;
		} }), n.process = function(o, u, a) {
			return S([n(a)]).process(o, u);
		}, n;
	};
	S.stringify = ap;
	S.parse = ip;
	S.fromJSON = ep;
	S.list = sp;
	S.comment = (t) => new ea(t);
	S.atRule = (t) => new Zo(t);
	S.decl = (t) => new ta(t);
	S.rule = (t) => new na(t);
	S.root = (t) => new sa(t);
	S.document = (t) => new ra(t);
	S.CssSyntaxError = Zf;
	S.Declaration = ta;
	S.Container = Jf;
	S.Processor = Os;
	S.Document = ra;
	S.Comment = ea;
	S.Warning = up;
	S.AtRule = Zo;
	S.Result = op;
	S.Input = tp;
	S.Rule = na;
	S.Root = sa;
	S.Node = np;
	rp.registerPostcss(S);
	ia.exports = S;
	S.default = S;
});
var aa = w((t_, oa) => {
	var { Container: lp } = ir(), Cs = class extends lp {
		constructor(e) {
			super(e), this.type = "decl", this.isNested = !0, this.nodes || (this.nodes = []);
		}
	};
	oa.exports = Cs;
});
var ca = w((r_, la) => {
	"use strict";
	var or = /[\t\n\f\r "#'()/;[\\\]{}]/g, ar = /[,\t\n\f\r !"#'():;@[\\\]{}]|\/(?=\*)/g, cp = /.[\r\n"'(/\\]/, ua = /[\da-f]/i, ur = /[\n\f\r]/g;
	la.exports = function(e, s = {}) {
		let r = e.css.valueOf(), n = s.ignoreErrors, i, o, u, a, l, f, h, c, g, b = r.length, d = 0, p = [], m = [], y;
		function v() {
			return d;
		}
		function O(A) {
			throw e.error("Unclosed " + A, d);
		}
		function q() {
			return m.length === 0 && d >= b;
		}
		function H() {
			let A = 1, k = !1, N = !1;
			for (; A > 0;) o += 1, r.length <= o && O("interpolation"), i = r.charCodeAt(o), c = r.charCodeAt(o + 1), k ? !N && i === k ? (k = !1, N = !1) : i === 92 ? N = !N : N && (N = !1) : i === 39 || i === 34 ? k = i : i === 125 ? A -= 1 : i === 35 && c === 123 && (A += 1);
		}
		function ne(A) {
			if (m.length) return m.pop();
			if (d >= b) return;
			let k = A ? A.ignoreUnclosed : !1;
			switch (i = r.charCodeAt(d), i) {
				case 10:
				case 32:
				case 9:
				case 13:
				case 12:
					o = d;
					do
						o += 1, i = r.charCodeAt(o);
					while (i === 32 || i === 10 || i === 9 || i === 13 || i === 12);
					g = ["space", r.slice(d, o)], d = o - 1;
					break;
				case 91:
				case 93:
				case 123:
				case 125:
				case 58:
				case 59:
				case 41: {
					let N = String.fromCharCode(i);
					g = [
						N,
						N,
						d
					];
					break;
				}
				case 44:
					g = [
						"word",
						",",
						d,
						d + 1
					];
					break;
				case 40:
					if (h = p.length ? p.pop()[1] : "", c = r.charCodeAt(d + 1), h === "url" && c !== 39 && c !== 34) {
						for (y = 1, f = !1, o = d + 1; o <= r.length - 1;) {
							if (c = r.charCodeAt(o), c === 92) f = !f;
							else if (c === 40) y += 1;
							else if (c === 41 && (y -= 1, y === 0)) break;
							o += 1;
						}
						a = r.slice(d, o + 1), g = [
							"brackets",
							a,
							d,
							o
						], d = o;
					} else o = r.indexOf(")", d + 1), a = r.slice(d, o + 1), o === -1 || cp.test(a) ? g = [
						"(",
						"(",
						d
					] : (g = [
						"brackets",
						a,
						d,
						o
					], d = o);
					break;
				case 39:
				case 34:
					for (u = i, o = d, f = !1; o < b && (o++, o === b && O("string"), i = r.charCodeAt(o), c = r.charCodeAt(o + 1), !(!f && i === u));) i === 92 ? f = !f : f ? f = !1 : i === 35 && c === 123 && H();
					g = [
						"string",
						r.slice(d, o + 1),
						d,
						o
					], d = o;
					break;
				case 64:
					or.lastIndex = d + 1, or.test(r), or.lastIndex === 0 ? o = r.length - 1 : o = or.lastIndex - 2, g = [
						"at-word",
						r.slice(d, o + 1),
						d,
						o
					], d = o;
					break;
				case 92:
					for (o = d, l = !0; r.charCodeAt(o + 1) === 92;) o += 1, l = !l;
					if (i = r.charCodeAt(o + 1), l && i !== 47 && i !== 32 && i !== 10 && i !== 9 && i !== 13 && i !== 12 && (o += 1, ua.test(r.charAt(o)))) {
						for (; ua.test(r.charAt(o + 1));) o += 1;
						r.charCodeAt(o + 1) === 32 && (o += 1);
					}
					g = [
						"word",
						r.slice(d, o + 1),
						d,
						o
					], d = o;
					break;
				default:
					c = r.charCodeAt(d + 1), i === 35 && c === 123 ? (o = d, H(), a = r.slice(d, o + 1), g = [
						"word",
						a,
						d,
						o
					], d = o) : i === 47 && c === 42 ? (o = r.indexOf("*/", d + 2) + 1, o === 0 && (n || k ? o = r.length : O("comment")), g = [
						"comment",
						r.slice(d, o + 1),
						d,
						o
					], d = o) : i === 47 && c === 47 ? (ur.lastIndex = d + 1, ur.test(r), ur.lastIndex === 0 ? o = r.length - 1 : o = ur.lastIndex - 2, a = r.slice(d, o + 1), g = [
						"comment",
						a,
						d,
						o,
						"inline"
					], d = o) : (ar.lastIndex = d + 1, ar.test(r), ar.lastIndex === 0 ? o = r.length - 1 : o = ar.lastIndex - 2, g = [
						"word",
						r.slice(d, o + 1),
						d,
						o
					], p.push(g), d = o);
					break;
			}
			return d++, g;
		}
		function W(A) {
			m.push(A);
		}
		return {
			back: W,
			endOfFile: q,
			nextToken: ne,
			position: v
		};
	};
});
var pa = w((s_, fa) => {
	var { Comment: fp } = ir(), pp = tr(), hp = aa(), dp = ca(), Ns = class extends pp {
		atrule(e) {
			let s = e[1], r = e;
			for (; !this.tokenizer.endOfFile();) {
				let n = this.tokenizer.nextToken();
				if (n[0] === "word" && n[2] === r[3] + 1) s += n[1], r = n;
				else {
					this.tokenizer.back(n);
					break;
				}
			}
			super.atrule([
				"at-word",
				s,
				e[2],
				r[3]
			]);
		}
		comment(e) {
			if (e[4] === "inline") {
				let s = new fp();
				this.init(s, e[2]), s.raws.inline = !0;
				let r = this.input.fromOffset(e[3]);
				s.source.end = {
					column: r.col,
					line: r.line,
					offset: e[3] + 1
				};
				let n = e[1].slice(2);
				if (/^\s*$/.test(n)) s.text = "", s.raws.left = n, s.raws.right = "";
				else {
					let i = n.match(/^(\s*)([^]*\S)(\s*)$/);
					s.text = i[2].replace(/(\*\/|\/\*)/g, "*//*"), s.raws.left = i[1], s.raws.right = i[3], s.raws.text = i[2];
				}
			} else super.comment(e);
		}
		createTokenizer() {
			this.tokenizer = dp(this.input);
		}
		raw(e, s, r, n) {
			if (super.raw(e, s, r, n), e.raws[s]) {
				let i = e.raws[s].raw;
				e.raws[s].raw = r.reduce((o, u) => {
					if (u[0] === "comment" && u[4] === "inline") {
						let a = u[1].slice(2).replace(/(\*\/|\/\*)/g, "*//*");
						return o + "/*" + a + "*/";
					} else return o + u[1];
				}, ""), i !== e.raws[s].raw && (e.raws[s].scss = i);
			}
		}
		rule(e) {
			let s = !1, r = 0, n = "";
			for (let i of e) if (s) i[0] !== "comment" && i[0] !== "{" && (n += i[1]);
			else {
				if (i[0] === "space" && i[1].includes(`
`)) break;
				i[0] === "(" ? r += 1 : i[0] === ")" ? r -= 1 : r === 0 && i[0] === ":" && (s = !0);
			}
			if (!s || n.trim() === "" || /^[#:A-Za-z-]/.test(n)) super.rule(e);
			else {
				e.pop();
				let i = new hp();
				this.init(i, e[0][2]);
				let o;
				for (let a = e.length - 1; a >= 0; a--) if (e[a][0] !== "space") {
					o = e[a];
					break;
				}
				if (o[3]) {
					let a = this.input.fromOffset(o[3]);
					i.source.end = {
						column: a.col,
						line: a.line,
						offset: o[3] + 1
					};
				} else {
					let a = this.input.fromOffset(o[2]);
					i.source.end = {
						column: a.col,
						line: a.line,
						offset: o[2] + 1
					};
				}
				for (; e[0][0] !== "word";) i.raws.before += e.shift()[1];
				if (e[0][2]) {
					let a = this.input.fromOffset(e[0][2]);
					i.source.start = {
						column: a.col,
						line: a.line,
						offset: e[0][2]
					};
				}
				for (i.prop = ""; e.length;) {
					let a = e[0][0];
					if (a === ":" || a === "space" || a === "comment") break;
					i.prop += e.shift()[1];
				}
				i.raws.between = "";
				let u;
				for (; e.length;) if (u = e.shift(), u[0] === ":") {
					i.raws.between += u[1];
					break;
				} else i.raws.between += u[1];
				(i.prop[0] === "_" || i.prop[0] === "*") && (i.raws.before += i.prop[0], i.prop = i.prop.slice(1)), i.raws.between += this.spacesAndCommentsFromStart(e), this.precheckMissedSemicolon(e);
				for (let a = e.length - 1; a > 0; a--) {
					if (u = e[a], u[1] === "!important") {
						i.important = !0;
						let l = this.stringFrom(e, a);
						l = this.spacesFromEnd(e) + l, l !== " !important" && (i.raws.important = l);
						break;
					} else if (u[1] === "important") {
						let l = e.slice(0), f = "";
						for (let h = a; h > 0; h--) {
							let c = l[h][0];
							if (f.trim().indexOf("!") === 0 && c !== "space") break;
							f = l.pop()[1] + f;
						}
						f.trim().indexOf("!") === 0 && (i.important = !0, i.raws.important = f, e = l);
					}
					if (u[0] !== "space" && u[0] !== "comment") break;
				}
				this.raw(i, "value", e), i.value.includes(":") && this.checkMissedSemicolon(e), this.current = i;
			}
		}
	};
	fa.exports = Ns;
});
var da = w((n_, ha) => {
	var { Input: mp } = ir(), yp = pa();
	ha.exports = function(e, s) {
		let n = new yp(new mp(e, s));
		return n.parse(), n.root;
	};
});
var Rs = w((Ps) => {
	"use strict";
	Object.defineProperty(Ps, "__esModule", { value: !0 });
	function vp(t) {
		this.after = t.after, this.before = t.before, this.type = t.type, this.value = t.value, this.sourceIndex = t.sourceIndex;
	}
	Ps.default = vp;
});
var qs = w((Is) => {
	"use strict";
	Object.defineProperty(Is, "__esModule", { value: !0 });
	var ya = _p(Rs());
	function _p(t) {
		return t && t.__esModule ? t : { default: t };
	}
	function vt(t) {
		var e = this;
		this.constructor(t), this.nodes = t.nodes, this.after === void 0 && (this.after = this.nodes.length > 0 ? this.nodes[this.nodes.length - 1].after : ""), this.before === void 0 && (this.before = this.nodes.length > 0 ? this.nodes[0].before : ""), this.sourceIndex === void 0 && (this.sourceIndex = this.before.length), this.nodes.forEach(function(s) {
			s.parent = e;
		});
	}
	vt.prototype = Object.create(ya.default.prototype);
	vt.constructor = ya.default;
	vt.prototype.walk = function(e, s) {
		for (var r = typeof e == "string" || e instanceof RegExp, n = r ? s : e, i = typeof e == "string" ? new RegExp(e) : e, o = 0; o < this.nodes.length; o++) {
			var u = this.nodes[o];
			if ((r ? i.test(u.type) : !0) && n && n(u, o, this.nodes) === !1 || u.nodes && u.walk(e, s) === !1) return !1;
		}
		return !0;
	};
	vt.prototype.each = function() {
		for (var e = arguments.length <= 0 || arguments[0] === void 0 ? function() {} : arguments[0], s = 0; s < this.nodes.length; s++) {
			var r = this.nodes[s];
			if (e(r, s, this.nodes) === !1) return !1;
		}
		return !0;
	};
	Is.default = vt;
});
var xa = w((xt) => {
	"use strict";
	Object.defineProperty(xt, "__esModule", { value: !0 });
	xt.parseMediaFeature = va;
	xt.parseMediaQuery = Ds;
	xt.parseMediaList = Sp;
	var ga = wa(Rs()), Ls = wa(qs());
	function wa(t) {
		return t && t.__esModule ? t : { default: t };
	}
	function va(t) {
		var e = arguments.length <= 1 || arguments[1] === void 0 ? 0 : arguments[1], s = [{
			mode: "normal",
			character: null
		}], r = [], n = 0, i = "", o = null, u = null, a = e, l = t;
		t[0] === "(" && t[t.length - 1] === ")" && (l = t.substring(1, t.length - 1), a++);
		for (var f = 0; f < l.length; f++) {
			var h = l[f];
			if ((h === "'" || h === "\"") && (s[n].isCalculationEnabled === !0 ? (s.push({
				mode: "string",
				isCalculationEnabled: !1,
				character: h
			}), n++) : s[n].mode === "string" && s[n].character === h && l[f - 1] !== "\\" && (s.pop(), n--)), h === "{" ? (s.push({
				mode: "interpolation",
				isCalculationEnabled: !0
			}), n++) : h === "}" && (s.pop(), n--), s[n].mode === "normal" && h === ":") {
				var c = l.substring(f + 1);
				u = {
					type: "value",
					before: /^(\s*)/.exec(c)[1],
					after: /(\s*)$/.exec(c)[1],
					value: c.trim()
				}, u.sourceIndex = u.before.length + f + 1 + a, o = {
					type: "colon",
					sourceIndex: f + a,
					after: u.before,
					value: ":"
				};
				break;
			}
			i += h;
		}
		return i = {
			type: "media-feature",
			before: /^(\s*)/.exec(i)[1],
			after: /(\s*)$/.exec(i)[1],
			value: i.trim()
		}, i.sourceIndex = i.before.length + a, r.push(i), o !== null && (o.before = i.after, r.push(o)), u !== null && r.push(u), r;
	}
	function Ds(t) {
		var e = arguments.length <= 1 || arguments[1] === void 0 ? 0 : arguments[1], s = [], r = 0, n = !1, i = void 0;
		function o() {
			return {
				before: "",
				after: "",
				value: ""
			};
		}
		i = o();
		for (var u = 0; u < t.length; u++) {
			var a = t[u];
			n ? (i.value += a, (a === "{" || a === "(") && r++, (a === ")" || a === "}") && r--) : a.search(/\s/) !== -1 ? i.before += a : (a === "(" && (i.type = "media-feature-expression", r++), i.value = a, i.sourceIndex = e + u, n = !0), n && r === 0 && (a === ")" || u === t.length - 1 || t[u + 1].search(/\s/) !== -1) && ([
				"not",
				"only",
				"and"
			].indexOf(i.value) !== -1 && (i.type = "keyword"), i.type === "media-feature-expression" && (i.nodes = va(i.value, i.sourceIndex)), s.push(Array.isArray(i.nodes) ? new Ls.default(i) : new ga.default(i)), i = o(), n = !1);
		}
		for (var l = 0; l < s.length; l++) if (i = s[l], l > 0 && (s[l - 1].after = i.before), i.type === void 0) {
			if (l > 0) {
				if (s[l - 1].type === "media-feature-expression") {
					i.type = "keyword";
					continue;
				}
				if (s[l - 1].value === "not" || s[l - 1].value === "only") {
					i.type = "media-type";
					continue;
				}
				if (s[l - 1].value === "and") {
					i.type = "media-feature-expression";
					continue;
				}
				s[l - 1].type === "media-type" && (s[l + 1] ? i.type = s[l + 1].type === "media-feature-expression" ? "keyword" : "media-feature-expression" : i.type = "media-feature-expression");
			}
			if (l === 0) {
				if (!s[l + 1]) {
					i.type = "media-type";
					continue;
				}
				if (s[l + 1] && (s[l + 1].type === "media-feature-expression" || s[l + 1].type === "keyword")) {
					i.type = "media-type";
					continue;
				}
				if (s[l + 2]) {
					if (s[l + 2].type === "media-feature-expression") {
						i.type = "media-type", s[l + 1].type = "keyword";
						continue;
					}
					if (s[l + 2].type === "keyword") {
						i.type = "keyword", s[l + 1].type = "media-type";
						continue;
					}
				}
				if (s[l + 3] && s[l + 3].type === "media-feature-expression") {
					i.type = "keyword", s[l + 1].type = "media-type", s[l + 2].type = "keyword";
					continue;
				}
			}
		}
		return s;
	}
	function Sp(t) {
		var e = [], s = 0, r = 0, n = /^(\s*)url\s*\(/.exec(t);
		if (n !== null) {
			for (var i = n[0].length, o = 1; o > 0;) {
				var u = t[i];
				u === "(" && o++, u === ")" && o--, i++;
			}
			e.unshift(new ga.default({
				type: "url",
				value: t.substring(0, i).trim(),
				sourceIndex: n[1].length,
				before: n[1],
				after: /^(\s*)/.exec(t.substring(i))[1]
			})), s = i;
		}
		for (var a = s; a < t.length; a++) {
			var l = t[a];
			if (l === "(" && r++, l === ")" && r--, r === 0 && l === ",") {
				var f = t.substring(s, a), h = /^(\s*)/.exec(f)[1];
				e.push(new Ls.default({
					type: "media-query",
					value: f.trim(),
					sourceIndex: s + h.length,
					nodes: Ds(f, s),
					before: h,
					after: /(\s*)$/.exec(f)[1]
				})), s = a + 1;
			}
		}
		var c = t.substring(s), g = /^(\s*)/.exec(c)[1];
		return e.push(new Ls.default({
			type: "media-query",
			value: c.trim(),
			sourceIndex: s + g.length,
			nodes: Ds(c, s),
			before: g,
			after: /(\s*)$/.exec(c)[1]
		})), e;
	}
});
var _a = w((Ms) => {
	"use strict";
	Object.defineProperty(Ms, "__esModule", { value: !0 });
	Ms.default = Cp;
	var Tp = Op(qs()), Ap = xa();
	function Op(t) {
		return t && t.__esModule ? t : { default: t };
	}
	function Cp(t) {
		return new Tp.default({
			nodes: (0, Ap.parseMediaList)(t),
			type: "media-query-list",
			value: t.trim()
		});
	}
});
var Us = w((m_, Sa) => {
	Sa.exports = function(e, s) {
		if (s = typeof s == "number" ? s : Infinity, !s) return Array.isArray(e) ? e.map(function(n) {
			return n;
		}) : e;
		return r(e, 1);
		function r(n, i) {
			return n.reduce(function(o, u) {
				return Array.isArray(u) && i < s ? o.concat(r(u, i + 1)) : o.concat(u);
			}, []);
		}
	};
});
var Fs = w((y_, ka) => {
	ka.exports = function(t, e) {
		for (var s = -1, r = []; (s = t.indexOf(e, s + 1)) !== -1;) r.push(s);
		return r;
	};
});
var $s = w((g_, Ta) => {
	"use strict";
	function Rp(t, e) {
		for (var s = 1, r = t.length, n = t[0], i = t[0], o = 1; o < r; ++o) if (i = n, n = t[o], e(n, i)) {
			if (o === s) {
				s++;
				continue;
			}
			t[s++] = n;
		}
		return t.length = s, t;
	}
	function Ip(t) {
		for (var e = 1, s = t.length, r = t[0], n = t[0], i = 1; i < s; ++i, n = r) if (n = r, r = t[i], r !== n) {
			if (i === e) {
				e++;
				continue;
			}
			t[e++] = r;
		}
		return t.length = e, t;
	}
	function qp(t, e, s) {
		return t.length === 0 ? t : e ? (s || t.sort(e), Rp(t, e)) : (s || t.sort(), Ip(t));
	}
	Ta.exports = qp;
});
var ke = w((lr, Oa) => {
	"use strict";
	lr.__esModule = !0;
	var Aa = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(t) {
		return typeof t;
	} : function(t) {
		return t && typeof Symbol == "function" && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t;
	};
	function Lp(t, e) {
		if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function");
	}
	var Dp = function t(e, s) {
		if ((typeof e > "u" ? "undefined" : Aa(e)) !== "object") return e;
		var r = new e.constructor();
		for (var n in e) if (e.hasOwnProperty(n)) {
			var i = e[n], o = typeof i > "u" ? "undefined" : Aa(i);
			n === "parent" && o === "object" ? s && (r[n] = s) : i instanceof Array ? r[n] = i.map(function(u) {
				return t(u, r);
			}) : r[n] = t(i, r);
		}
		return r;
	};
	lr.default = (function() {
		function t() {
			var e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
			Lp(this, t);
			for (var s in e) this[s] = e[s];
			var r = e.spaces;
			r = r === void 0 ? {} : r;
			var n = r.before, i = n === void 0 ? "" : n, o = r.after;
			this.spaces = {
				before: i,
				after: o === void 0 ? "" : o
			};
		}
		return t.prototype.remove = function() {
			return this.parent && this.parent.removeChild(this), this.parent = void 0, this;
		}, t.prototype.replaceWith = function() {
			if (this.parent) {
				for (var s in arguments) this.parent.insertBefore(this, arguments[s]);
				this.remove();
			}
			return this;
		}, t.prototype.next = function() {
			return this.parent.at(this.parent.index(this) + 1);
		}, t.prototype.prev = function() {
			return this.parent.at(this.parent.index(this) - 1);
		}, t.prototype.clone = function() {
			var s = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}, r = Dp(this);
			for (var n in s) r[n] = s[n];
			return r;
		}, t.prototype.toString = function() {
			return [
				this.spaces.before,
				String(this.value),
				this.spaces.after
			].join("");
		}, t;
	})();
	Oa.exports = lr.default;
});
var B = w((U) => {
	"use strict";
	U.__esModule = !0;
	U.TAG = "tag";
	U.STRING = "string";
	U.SELECTOR = "selector";
	U.ROOT = "root";
	U.PSEUDO = "pseudo";
	U.NESTING = "nesting";
	U.ID = "id";
	U.COMMENT = "comment";
	U.COMBINATOR = "combinator";
	U.CLASS = "class";
	U.ATTRIBUTE = "attribute";
	U.UNIVERSAL = "universal";
});
var fr = w((cr, Ca) => {
	"use strict";
	cr.__esModule = !0;
	var Bp = (function() {
		function t(e, s) {
			for (var r = 0; r < s.length; r++) {
				var n = s[r];
				n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n && (n.writable = !0), Object.defineProperty(e, n.key, n);
			}
		}
		return function(e, s, r) {
			return s && t(e.prototype, s), r && t(e, r), e;
		};
	})(), Fp = Gp(ke()), re = Wp(B());
	function Wp(t) {
		if (t && t.__esModule) return t;
		var e = {};
		if (t != null) for (var s in t) Object.prototype.hasOwnProperty.call(t, s) && (e[s] = t[s]);
		return e.default = t, e;
	}
	function Gp(t) {
		return t && t.__esModule ? t : { default: t };
	}
	function Yp(t, e) {
		if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function");
	}
	function Vp(t, e) {
		if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
		return e && (typeof e == "object" || typeof e == "function") ? e : t;
	}
	function zp(t, e) {
		if (typeof e != "function" && e !== null) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
		t.prototype = Object.create(e && e.prototype, { constructor: {
			value: t,
			enumerable: !1,
			writable: !0,
			configurable: !0
		} }), e && (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e);
	}
	cr.default = (function(t) {
		zp(e, t);
		function e(s) {
			Yp(this, e);
			var r = Vp(this, t.call(this, s));
			return r.nodes || (r.nodes = []), r;
		}
		return e.prototype.append = function(r) {
			return r.parent = this, this.nodes.push(r), this;
		}, e.prototype.prepend = function(r) {
			return r.parent = this, this.nodes.unshift(r), this;
		}, e.prototype.at = function(r) {
			return this.nodes[r];
		}, e.prototype.index = function(r) {
			return typeof r == "number" ? r : this.nodes.indexOf(r);
		}, e.prototype.removeChild = function(r) {
			r = this.index(r), this.at(r).parent = void 0, this.nodes.splice(r, 1);
			var n = void 0;
			for (var i in this.indexes) n = this.indexes[i], n >= r && (this.indexes[i] = n - 1);
			return this;
		}, e.prototype.removeAll = function() {
			for (var i = this.nodes, r = Array.isArray(i), n = 0, i = r ? i : i[Symbol.iterator]();;) {
				var o;
				if (r) {
					if (n >= i.length) break;
					o = i[n++];
				} else {
					if (n = i.next(), n.done) break;
					o = n.value;
				}
				var u = o;
				u.parent = void 0;
			}
			return this.nodes = [], this;
		}, e.prototype.empty = function() {
			return this.removeAll();
		}, e.prototype.insertAfter = function(r, n) {
			var i = this.index(r);
			this.nodes.splice(i + 1, 0, n);
			var o = void 0;
			for (var u in this.indexes) o = this.indexes[u], i <= o && (this.indexes[u] = o + this.nodes.length);
			return this;
		}, e.prototype.insertBefore = function(r, n) {
			var i = this.index(r);
			this.nodes.splice(i, 0, n);
			var o = void 0;
			for (var u in this.indexes) o = this.indexes[u], i <= o && (this.indexes[u] = o + this.nodes.length);
			return this;
		}, e.prototype.each = function(r) {
			this.lastEach || (this.lastEach = 0), this.indexes || (this.indexes = {}), this.lastEach++;
			var n = this.lastEach;
			if (this.indexes[n] = 0, !!this.length) {
				for (var i = void 0, o = void 0; this.indexes[n] < this.length && (i = this.indexes[n], o = r(this.at(i), i), o !== !1);) this.indexes[n] += 1;
				if (delete this.indexes[n], o === !1) return !1;
			}
		}, e.prototype.walk = function(r) {
			return this.each(function(n, i) {
				var o = r(n, i);
				if (o !== !1 && n.length && (o = n.walk(r)), o === !1) return !1;
			});
		}, e.prototype.walkAttributes = function(r) {
			var n = this;
			return this.walk(function(i) {
				if (i.type === re.ATTRIBUTE) return r.call(n, i);
			});
		}, e.prototype.walkClasses = function(r) {
			var n = this;
			return this.walk(function(i) {
				if (i.type === re.CLASS) return r.call(n, i);
			});
		}, e.prototype.walkCombinators = function(r) {
			var n = this;
			return this.walk(function(i) {
				if (i.type === re.COMBINATOR) return r.call(n, i);
			});
		}, e.prototype.walkComments = function(r) {
			var n = this;
			return this.walk(function(i) {
				if (i.type === re.COMMENT) return r.call(n, i);
			});
		}, e.prototype.walkIds = function(r) {
			var n = this;
			return this.walk(function(i) {
				if (i.type === re.ID) return r.call(n, i);
			});
		}, e.prototype.walkNesting = function(r) {
			var n = this;
			return this.walk(function(i) {
				if (i.type === re.NESTING) return r.call(n, i);
			});
		}, e.prototype.walkPseudos = function(r) {
			var n = this;
			return this.walk(function(i) {
				if (i.type === re.PSEUDO) return r.call(n, i);
			});
		}, e.prototype.walkTags = function(r) {
			var n = this;
			return this.walk(function(i) {
				if (i.type === re.TAG) return r.call(n, i);
			});
		}, e.prototype.walkUniversals = function(r) {
			var n = this;
			return this.walk(function(i) {
				if (i.type === re.UNIVERSAL) return r.call(n, i);
			});
		}, e.prototype.split = function(r) {
			var n = this, i = [];
			return this.reduce(function(o, u, a) {
				var l = r.call(n, u);
				return i.push(u), l ? (o.push(i), i = []) : a === n.length - 1 && o.push(i), o;
			}, []);
		}, e.prototype.map = function(r) {
			return this.nodes.map(r);
		}, e.prototype.reduce = function(r, n) {
			return this.nodes.reduce(r, n);
		}, e.prototype.every = function(r) {
			return this.nodes.every(r);
		}, e.prototype.some = function(r) {
			return this.nodes.some(r);
		}, e.prototype.filter = function(r) {
			return this.nodes.filter(r);
		}, e.prototype.sort = function(r) {
			return this.nodes.sort(r);
		}, e.prototype.toString = function() {
			return this.map(String).join("");
		}, Bp(e, [
			{
				key: "first",
				get: function() {
					return this.at(0);
				}
			},
			{
				key: "last",
				get: function() {
					return this.at(this.length - 1);
				}
			},
			{
				key: "length",
				get: function() {
					return this.nodes.length;
				}
			}
		]), e;
	})(Fp.default);
	Ca.exports = cr.default;
});
var Pa = w((pr, Na) => {
	"use strict";
	pr.__esModule = !0;
	var Kp = Xp(fr()), Qp = B();
	function Xp(t) {
		return t && t.__esModule ? t : { default: t };
	}
	function Jp(t, e) {
		if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function");
	}
	function Zp(t, e) {
		if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
		return e && (typeof e == "object" || typeof e == "function") ? e : t;
	}
	function eh(t, e) {
		if (typeof e != "function" && e !== null) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
		t.prototype = Object.create(e && e.prototype, { constructor: {
			value: t,
			enumerable: !1,
			writable: !0,
			configurable: !0
		} }), e && (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e);
	}
	pr.default = (function(t) {
		eh(e, t);
		function e(s) {
			Jp(this, e);
			var r = Zp(this, t.call(this, s));
			return r.type = Qp.ROOT, r;
		}
		return e.prototype.toString = function() {
			var r = this.reduce(function(n, i) {
				var o = String(i);
				return o ? n + o + "," : "";
			}, "").slice(0, -1);
			return this.trailingComma ? r + "," : r;
		}, e;
	})(Kp.default);
	Na.exports = pr.default;
});
var Ia = w((hr, Ra) => {
	"use strict";
	hr.__esModule = !0;
	var sh = ih(fr()), nh = B();
	function ih(t) {
		return t && t.__esModule ? t : { default: t };
	}
	function oh(t, e) {
		if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function");
	}
	function ah(t, e) {
		if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
		return e && (typeof e == "object" || typeof e == "function") ? e : t;
	}
	function uh(t, e) {
		if (typeof e != "function" && e !== null) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
		t.prototype = Object.create(e && e.prototype, { constructor: {
			value: t,
			enumerable: !1,
			writable: !0,
			configurable: !0
		} }), e && (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e);
	}
	hr.default = (function(t) {
		uh(e, t);
		function e(s) {
			oh(this, e);
			var r = ah(this, t.call(this, s));
			return r.type = nh.SELECTOR, r;
		}
		return e;
	})(sh.default);
	Ra.exports = hr.default;
});
var Ye = w((dr, qa) => {
	"use strict";
	dr.__esModule = !0;
	var ch = (function() {
		function t(e, s) {
			for (var r = 0; r < s.length; r++) {
				var n = s[r];
				n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n && (n.writable = !0), Object.defineProperty(e, n.key, n);
			}
		}
		return function(e, s, r) {
			return s && t(e.prototype, s), r && t(e, r), e;
		};
	})(), ph = hh(ke());
	function hh(t) {
		return t && t.__esModule ? t : { default: t };
	}
	function dh(t, e) {
		if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function");
	}
	function mh(t, e) {
		if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
		return e && (typeof e == "object" || typeof e == "function") ? e : t;
	}
	function yh(t, e) {
		if (typeof e != "function" && e !== null) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
		t.prototype = Object.create(e && e.prototype, { constructor: {
			value: t,
			enumerable: !1,
			writable: !0,
			configurable: !0
		} }), e && (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e);
	}
	dr.default = (function(t) {
		yh(e, t);
		function e() {
			return dh(this, e), mh(this, t.apply(this, arguments));
		}
		return e.prototype.toString = function() {
			return [
				this.spaces.before,
				this.ns,
				String(this.value),
				this.spaces.after
			].join("");
		}, ch(e, [{
			key: "ns",
			get: function() {
				var r = this.namespace;
				return r ? (typeof r == "string" ? r : "") + "|" : "";
			}
		}]), e;
	})(ph.default);
	qa.exports = dr.default;
});
var Da = w((mr, La) => {
	"use strict";
	mr.__esModule = !0;
	var vh = _h(Ye()), xh = B();
	function _h(t) {
		return t && t.__esModule ? t : { default: t };
	}
	function bh(t, e) {
		if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function");
	}
	function Eh(t, e) {
		if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
		return e && (typeof e == "object" || typeof e == "function") ? e : t;
	}
	function Sh(t, e) {
		if (typeof e != "function" && e !== null) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
		t.prototype = Object.create(e && e.prototype, { constructor: {
			value: t,
			enumerable: !1,
			writable: !0,
			configurable: !0
		} }), e && (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e);
	}
	mr.default = (function(t) {
		Sh(e, t);
		function e(s) {
			bh(this, e);
			var r = Eh(this, t.call(this, s));
			return r.type = xh.CLASS, r;
		}
		return e.prototype.toString = function() {
			return [
				this.spaces.before,
				this.ns,
				"." + this.value,
				this.spaces.after
			].join("");
		}, e;
	})(vh.default);
	La.exports = mr.default;
});
var Ba = w((yr, Ma) => {
	"use strict";
	yr.__esModule = !0;
	var Ah = Ch(ke()), Oh = B();
	function Ch(t) {
		return t && t.__esModule ? t : { default: t };
	}
	function Nh(t, e) {
		if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function");
	}
	function Ph(t, e) {
		if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
		return e && (typeof e == "object" || typeof e == "function") ? e : t;
	}
	function Rh(t, e) {
		if (typeof e != "function" && e !== null) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
		t.prototype = Object.create(e && e.prototype, { constructor: {
			value: t,
			enumerable: !1,
			writable: !0,
			configurable: !0
		} }), e && (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e);
	}
	yr.default = (function(t) {
		Rh(e, t);
		function e(s) {
			Nh(this, e);
			var r = Ph(this, t.call(this, s));
			return r.type = Oh.COMMENT, r;
		}
		return e;
	})(Ah.default);
	Ma.exports = yr.default;
});
var Fa = w((gr, Ua) => {
	"use strict";
	gr.__esModule = !0;
	var Lh = Mh(Ye()), Dh = B();
	function Mh(t) {
		return t && t.__esModule ? t : { default: t };
	}
	function Bh(t, e) {
		if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function");
	}
	function Uh(t, e) {
		if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
		return e && (typeof e == "object" || typeof e == "function") ? e : t;
	}
	function Fh(t, e) {
		if (typeof e != "function" && e !== null) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
		t.prototype = Object.create(e && e.prototype, { constructor: {
			value: t,
			enumerable: !1,
			writable: !0,
			configurable: !0
		} }), e && (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e);
	}
	gr.default = (function(t) {
		Fh(e, t);
		function e(s) {
			Bh(this, e);
			var r = Uh(this, t.call(this, s));
			return r.type = Dh.ID, r;
		}
		return e.prototype.toString = function() {
			return [
				this.spaces.before,
				this.ns,
				"#" + this.value,
				this.spaces.after
			].join("");
		}, e;
	})(Lh.default);
	Ua.exports = gr.default;
});
var Wa = w((wr, $a) => {
	"use strict";
	wr.__esModule = !0;
	var Gh = Vh(Ye()), Yh = B();
	function Vh(t) {
		return t && t.__esModule ? t : { default: t };
	}
	function zh(t, e) {
		if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function");
	}
	function jh(t, e) {
		if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
		return e && (typeof e == "object" || typeof e == "function") ? e : t;
	}
	function Hh(t, e) {
		if (typeof e != "function" && e !== null) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
		t.prototype = Object.create(e && e.prototype, { constructor: {
			value: t,
			enumerable: !1,
			writable: !0,
			configurable: !0
		} }), e && (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e);
	}
	wr.default = (function(t) {
		Hh(e, t);
		function e(s) {
			zh(this, e);
			var r = jh(this, t.call(this, s));
			return r.type = Yh.TAG, r;
		}
		return e;
	})(Gh.default);
	$a.exports = wr.default;
});
var Ya = w((vr, Ga) => {
	"use strict";
	vr.__esModule = !0;
	var Xh = Zh(ke()), Jh = B();
	function Zh(t) {
		return t && t.__esModule ? t : { default: t };
	}
	function ed(t, e) {
		if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function");
	}
	function td(t, e) {
		if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
		return e && (typeof e == "object" || typeof e == "function") ? e : t;
	}
	function rd(t, e) {
		if (typeof e != "function" && e !== null) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
		t.prototype = Object.create(e && e.prototype, { constructor: {
			value: t,
			enumerable: !1,
			writable: !0,
			configurable: !0
		} }), e && (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e);
	}
	vr.default = (function(t) {
		rd(e, t);
		function e(s) {
			ed(this, e);
			var r = td(this, t.call(this, s));
			return r.type = Jh.STRING, r;
		}
		return e;
	})(Xh.default);
	Ga.exports = vr.default;
});
var za = w((xr, Va) => {
	"use strict";
	xr.__esModule = !0;
	var id = ad(fr()), od = B();
	function ad(t) {
		return t && t.__esModule ? t : { default: t };
	}
	function ud(t, e) {
		if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function");
	}
	function ld(t, e) {
		if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
		return e && (typeof e == "object" || typeof e == "function") ? e : t;
	}
	function cd(t, e) {
		if (typeof e != "function" && e !== null) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
		t.prototype = Object.create(e && e.prototype, { constructor: {
			value: t,
			enumerable: !1,
			writable: !0,
			configurable: !0
		} }), e && (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e);
	}
	xr.default = (function(t) {
		cd(e, t);
		function e(s) {
			ud(this, e);
			var r = ld(this, t.call(this, s));
			return r.type = od.PSEUDO, r;
		}
		return e.prototype.toString = function() {
			var r = this.length ? "(" + this.map(String).join(",") + ")" : "";
			return [
				this.spaces.before,
				String(this.value),
				r,
				this.spaces.after
			].join("");
		}, e;
	})(id.default);
	Va.exports = xr.default;
});
var Ha = w((_r, ja) => {
	"use strict";
	_r.__esModule = !0;
	var hd = md(Ye()), dd = B();
	function md(t) {
		return t && t.__esModule ? t : { default: t };
	}
	function yd(t, e) {
		if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function");
	}
	function gd(t, e) {
		if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
		return e && (typeof e == "object" || typeof e == "function") ? e : t;
	}
	function wd(t, e) {
		if (typeof e != "function" && e !== null) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
		t.prototype = Object.create(e && e.prototype, { constructor: {
			value: t,
			enumerable: !1,
			writable: !0,
			configurable: !0
		} }), e && (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e);
	}
	_r.default = (function(t) {
		wd(e, t);
		function e(s) {
			yd(this, e);
			var r = gd(this, t.call(this, s));
			return r.type = dd.ATTRIBUTE, r.raws = {}, r;
		}
		return e.prototype.toString = function() {
			var r = [
				this.spaces.before,
				"[",
				this.ns,
				this.attribute
			];
			return this.operator && r.push(this.operator), this.value && r.push(this.value), this.raws.insensitive ? r.push(this.raws.insensitive) : this.insensitive && r.push(" i"), r.push("]"), r.concat(this.spaces.after).join("");
		}, e;
	})(hd.default);
	ja.exports = _r.default;
});
var Qa = w((br, Ka) => {
	"use strict";
	br.__esModule = !0;
	var _d = Ed(Ye()), bd = B();
	function Ed(t) {
		return t && t.__esModule ? t : { default: t };
	}
	function Sd(t, e) {
		if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function");
	}
	function kd(t, e) {
		if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
		return e && (typeof e == "object" || typeof e == "function") ? e : t;
	}
	function Td(t, e) {
		if (typeof e != "function" && e !== null) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
		t.prototype = Object.create(e && e.prototype, { constructor: {
			value: t,
			enumerable: !1,
			writable: !0,
			configurable: !0
		} }), e && (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e);
	}
	br.default = (function(t) {
		Td(e, t);
		function e(s) {
			Sd(this, e);
			var r = kd(this, t.call(this, s));
			return r.type = bd.UNIVERSAL, r.value = "*", r;
		}
		return e;
	})(_d.default);
	Ka.exports = br.default;
});
var Ja = w((Er, Xa) => {
	"use strict";
	Er.__esModule = !0;
	var Cd = Pd(ke()), Nd = B();
	function Pd(t) {
		return t && t.__esModule ? t : { default: t };
	}
	function Rd(t, e) {
		if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function");
	}
	function Id(t, e) {
		if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
		return e && (typeof e == "object" || typeof e == "function") ? e : t;
	}
	function qd(t, e) {
		if (typeof e != "function" && e !== null) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
		t.prototype = Object.create(e && e.prototype, { constructor: {
			value: t,
			enumerable: !1,
			writable: !0,
			configurable: !0
		} }), e && (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e);
	}
	Er.default = (function(t) {
		qd(e, t);
		function e(s) {
			Rd(this, e);
			var r = Id(this, t.call(this, s));
			return r.type = Nd.COMBINATOR, r;
		}
		return e;
	})(Cd.default);
	Xa.exports = Er.default;
});
var eu = w((Sr, Za) => {
	"use strict";
	Sr.__esModule = !0;
	var Md = Ud(ke()), Bd = B();
	function Ud(t) {
		return t && t.__esModule ? t : { default: t };
	}
	function Fd(t, e) {
		if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function");
	}
	function $d(t, e) {
		if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
		return e && (typeof e == "object" || typeof e == "function") ? e : t;
	}
	function Wd(t, e) {
		if (typeof e != "function" && e !== null) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
		t.prototype = Object.create(e && e.prototype, { constructor: {
			value: t,
			enumerable: !1,
			writable: !0,
			configurable: !0
		} }), e && (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e);
	}
	Sr.default = (function(t) {
		Wd(e, t);
		function e(s) {
			Fd(this, e);
			var r = $d(this, t.call(this, s));
			return r.type = Bd.NESTING, r.value = "&", r;
		}
		return e;
	})(Md.default);
	Za.exports = Sr.default;
});
var ru = w((kr, tu) => {
	"use strict";
	kr.__esModule = !0;
	kr.default = Yd;
	function Yd(t) {
		return t.sort(function(e, s) {
			return e - s;
		});
	}
	tu.exports = kr.default;
});
var fu = w((Or, cu) => {
	"use strict";
	Or.__esModule = !0;
	Or.default = tm;
	var su = 39, Vd = 34, Ws = 92, nu = 47, _t = 10, Gs = 32, Ys = 12, Vs = 9, zs = 13, iu = 43, ou = 62, au = 126, uu = 124, zd = 44, jd = 40, Hd = 41, Kd = 91, Qd = 93, Xd = 59, lu = 42, Jd = 58, Zd = 38, em = 64, Tr = /[ \n\t\r\{\(\)'"\\;/]/g, Ar = /[ \n\t\r\(\)\*:;@!&'"\+\|~>,\[\]\\]|\/(?=\*)/g;
	function tm(t) {
		for (var e = [], s = t.css.valueOf(), r = void 0, n = void 0, i = void 0, o = void 0, u = void 0, a = void 0, l = void 0, f = void 0, h = void 0, c = void 0, g = void 0, b = s.length, d = -1, p = 1, m = 0, y = function(O, q) {
			if (t.safe) s += q, n = s.length - 1;
			else throw t.error("Unclosed " + O, p, m - d, m);
		}; m < b;) {
			switch (r = s.charCodeAt(m), r === _t && (d = m, p += 1), r) {
				case _t:
				case Gs:
				case Vs:
				case zs:
				case Ys:
					n = m;
					do
						n += 1, r = s.charCodeAt(n), r === _t && (d = n, p += 1);
					while (r === Gs || r === _t || r === Vs || r === zs || r === Ys);
					e.push([
						"space",
						s.slice(m, n),
						p,
						m - d,
						m
					]), m = n - 1;
					break;
				case iu:
				case ou:
				case au:
				case uu:
					n = m;
					do
						n += 1, r = s.charCodeAt(n);
					while (r === iu || r === ou || r === au || r === uu);
					e.push([
						"combinator",
						s.slice(m, n),
						p,
						m - d,
						m
					]), m = n - 1;
					break;
				case lu:
					e.push([
						"*",
						"*",
						p,
						m - d,
						m
					]);
					break;
				case Zd:
					e.push([
						"&",
						"&",
						p,
						m - d,
						m
					]);
					break;
				case zd:
					e.push([
						",",
						",",
						p,
						m - d,
						m
					]);
					break;
				case Kd:
					e.push([
						"[",
						"[",
						p,
						m - d,
						m
					]);
					break;
				case Qd:
					e.push([
						"]",
						"]",
						p,
						m - d,
						m
					]);
					break;
				case Jd:
					e.push([
						":",
						":",
						p,
						m - d,
						m
					]);
					break;
				case Xd:
					e.push([
						";",
						";",
						p,
						m - d,
						m
					]);
					break;
				case jd:
					e.push([
						"(",
						"(",
						p,
						m - d,
						m
					]);
					break;
				case Hd:
					e.push([
						")",
						")",
						p,
						m - d,
						m
					]);
					break;
				case su:
				case Vd:
					i = r === su ? "'" : "\"", n = m;
					do
						for (c = !1, n = s.indexOf(i, n + 1), n === -1 && y("quote", i), g = n; s.charCodeAt(g - 1) === Ws;) g -= 1, c = !c;
					while (c);
					e.push([
						"string",
						s.slice(m, n + 1),
						p,
						m - d,
						p,
						n - d,
						m
					]), m = n;
					break;
				case em:
					Tr.lastIndex = m + 1, Tr.test(s), Tr.lastIndex === 0 ? n = s.length - 1 : n = Tr.lastIndex - 2, e.push([
						"at-word",
						s.slice(m, n + 1),
						p,
						m - d,
						p,
						n - d,
						m
					]), m = n;
					break;
				case Ws:
					for (n = m, l = !0; s.charCodeAt(n + 1) === Ws;) n += 1, l = !l;
					r = s.charCodeAt(n + 1), l && r !== nu && r !== Gs && r !== _t && r !== Vs && r !== zs && r !== Ys && (n += 1), e.push([
						"word",
						s.slice(m, n + 1),
						p,
						m - d,
						p,
						n - d,
						m
					]), m = n;
					break;
				default:
					r === nu && s.charCodeAt(m + 1) === lu ? (n = s.indexOf("*/", m + 2) + 1, n === 0 && y("comment", "*/"), a = s.slice(m, n + 1), o = a.split(`
`), u = o.length - 1, u > 0 ? (f = p + u, h = n - o[u].length) : (f = p, h = d), e.push([
						"comment",
						a,
						p,
						m - d,
						f,
						n - h,
						m
					]), d = h, p = f, m = n) : (Ar.lastIndex = m + 1, Ar.test(s), Ar.lastIndex === 0 ? n = s.length - 1 : n = Ar.lastIndex - 2, e.push([
						"word",
						s.slice(m, n + 1),
						p,
						m - d,
						p,
						n - d,
						m
					]), m = n);
					break;
			}
			m++;
		}
		return e;
	}
	cu.exports = Or.default;
});
var du = w((Cr, hu) => {
	"use strict";
	Cr.__esModule = !0;
	var rm = (function() {
		function t(e, s) {
			for (var r = 0; r < s.length; r++) {
				var n = s[r];
				n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n && (n.writable = !0), Object.defineProperty(e, n.key, n);
			}
		}
		return function(e, s, r) {
			return s && t(e.prototype, s), r && t(e, r), e;
		};
	})(), nm = I(Us()), js = I(Fs()), am = I($s()), lm = I(Pa()), Hs = I(Ia()), pm = I(Da()), dm = I(Ba()), ym = I(Fa()), wm = I(Wa()), xm = I(Ya()), bm = I(za()), Sm = I(Ha()), Tm = I(Qa()), Om = I(Ja()), Nm = I(eu()), Rm = I(ru()), pu = I(fu()), Lm = Dm(B());
	function Dm(t) {
		if (t && t.__esModule) return t;
		var e = {};
		if (t != null) for (var s in t) Object.prototype.hasOwnProperty.call(t, s) && (e[s] = t[s]);
		return e.default = t, e;
	}
	function I(t) {
		return t && t.__esModule ? t : { default: t };
	}
	function Mm(t, e) {
		if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function");
	}
	Cr.default = (function() {
		function t(e) {
			Mm(this, t), this.input = e, this.lossy = e.options.lossless === !1, this.position = 0, this.root = new lm.default();
			var s = new Hs.default();
			return this.root.append(s), this.current = s, this.lossy ? this.tokens = (0, pu.default)({
				safe: e.safe,
				css: e.css.trim()
			}) : this.tokens = (0, pu.default)(e), this.loop();
		}
		return t.prototype.attribute = function() {
			var s = "", r = void 0, n = this.currToken;
			for (this.position++; this.position < this.tokens.length && this.currToken[0] !== "]";) s += this.tokens[this.position][1], this.position++;
			this.position === this.tokens.length && !~s.indexOf("]") && this.error("Expected a closing square bracket.");
			var i = s.split(/((?:[*~^$|]?=))([^]*)/), o = i[0].split(/(\|)/g), u = {
				operator: i[1],
				value: i[2],
				source: {
					start: {
						line: n[2],
						column: n[3]
					},
					end: {
						line: this.currToken[2],
						column: this.currToken[3]
					}
				},
				sourceIndex: n[4]
			};
			if (o.length > 1 ? (o[0] === "" && (o[0] = !0), u.attribute = this.parseValue(o[2]), u.namespace = this.parseNamespace(o[0])) : u.attribute = this.parseValue(i[0]), r = new Sm.default(u), i[2]) {
				var a = i[2].split(/(\s+i\s*?)$/), l = a[0].trim();
				r.value = this.lossy ? l : a[0], a[1] && (r.insensitive = !0, this.lossy || (r.raws.insensitive = a[1])), r.quoted = l[0] === "'" || l[0] === "\"", r.raws.unquoted = r.quoted ? l.slice(1, -1) : l;
			}
			this.newNode(r), this.position++;
		}, t.prototype.combinator = function() {
			if (this.currToken[1] === "|") return this.namespace();
			for (var s = new Om.default({
				value: "",
				source: {
					start: {
						line: this.currToken[2],
						column: this.currToken[3]
					},
					end: {
						line: this.currToken[2],
						column: this.currToken[3]
					}
				},
				sourceIndex: this.currToken[4]
			}); this.position < this.tokens.length && this.currToken && (this.currToken[0] === "space" || this.currToken[0] === "combinator");) this.nextToken && this.nextToken[0] === "combinator" ? (s.spaces.before = this.parseSpace(this.currToken[1]), s.source.start.line = this.nextToken[2], s.source.start.column = this.nextToken[3], s.source.end.column = this.nextToken[3], s.source.end.line = this.nextToken[2], s.sourceIndex = this.nextToken[4]) : this.prevToken && this.prevToken[0] === "combinator" ? s.spaces.after = this.parseSpace(this.currToken[1]) : this.currToken[0] === "combinator" ? s.value = this.currToken[1] : this.currToken[0] === "space" && (s.value = this.parseSpace(this.currToken[1], " ")), this.position++;
			return this.newNode(s);
		}, t.prototype.comma = function() {
			if (this.position === this.tokens.length - 1) {
				this.root.trailingComma = !0, this.position++;
				return;
			}
			var s = new Hs.default();
			this.current.parent.append(s), this.current = s, this.position++;
		}, t.prototype.comment = function() {
			var s = new dm.default({
				value: this.currToken[1],
				source: {
					start: {
						line: this.currToken[2],
						column: this.currToken[3]
					},
					end: {
						line: this.currToken[4],
						column: this.currToken[5]
					}
				},
				sourceIndex: this.currToken[6]
			});
			this.newNode(s), this.position++;
		}, t.prototype.error = function(s) {
			throw new this.input.error(s);
		}, t.prototype.missingBackslash = function() {
			return this.error("Expected a backslash preceding the semicolon.");
		}, t.prototype.missingParenthesis = function() {
			return this.error("Expected opening parenthesis.");
		}, t.prototype.missingSquareBracket = function() {
			return this.error("Expected opening square bracket.");
		}, t.prototype.namespace = function() {
			var s = this.prevToken && this.prevToken[1] || !0;
			if (this.nextToken[0] === "word") return this.position++, this.word(s);
			if (this.nextToken[0] === "*") return this.position++, this.universal(s);
		}, t.prototype.nesting = function() {
			this.newNode(new Nm.default({
				value: this.currToken[1],
				source: {
					start: {
						line: this.currToken[2],
						column: this.currToken[3]
					},
					end: {
						line: this.currToken[2],
						column: this.currToken[3]
					}
				},
				sourceIndex: this.currToken[4]
			})), this.position++;
		}, t.prototype.parentheses = function() {
			var s = this.current.last;
			if (s && s.type === Lm.PSEUDO) {
				var r = new Hs.default(), n = this.current;
				s.append(r), this.current = r;
				var i = 1;
				for (this.position++; this.position < this.tokens.length && i;) this.currToken[0] === "(" && i++, this.currToken[0] === ")" && i--, i ? this.parse() : (r.parent.source.end.line = this.currToken[2], r.parent.source.end.column = this.currToken[3], this.position++);
				i && this.error("Expected closing parenthesis."), this.current = n;
			} else {
				var o = 1;
				for (this.position++, s.value += "("; this.position < this.tokens.length && o;) this.currToken[0] === "(" && o++, this.currToken[0] === ")" && o--, s.value += this.parseParenthesisToken(this.currToken), this.position++;
				o && this.error("Expected closing parenthesis.");
			}
		}, t.prototype.pseudo = function() {
			for (var s = this, r = "", n = this.currToken; this.currToken && this.currToken[0] === ":";) r += this.currToken[1], this.position++;
			if (!this.currToken) return this.error("Expected pseudo-class or pseudo-element");
			if (this.currToken[0] === "word") {
				var i = void 0;
				this.splitWord(!1, function(o, u) {
					r += o, i = new bm.default({
						value: r,
						source: {
							start: {
								line: n[2],
								column: n[3]
							},
							end: {
								line: s.currToken[4],
								column: s.currToken[5]
							}
						},
						sourceIndex: n[4]
					}), s.newNode(i), u > 1 && s.nextToken && s.nextToken[0] === "(" && s.error("Misplaced parenthesis.");
				});
			} else this.error("Unexpected \"" + this.currToken[0] + "\" found.");
		}, t.prototype.space = function() {
			var s = this.currToken;
			this.position === 0 || this.prevToken[0] === "," || this.prevToken[0] === "(" ? (this.spaces = this.parseSpace(s[1]), this.position++) : this.position === this.tokens.length - 1 || this.nextToken[0] === "," || this.nextToken[0] === ")" ? (this.current.last.spaces.after = this.parseSpace(s[1]), this.position++) : this.combinator();
		}, t.prototype.string = function() {
			var s = this.currToken;
			this.newNode(new xm.default({
				value: this.currToken[1],
				source: {
					start: {
						line: s[2],
						column: s[3]
					},
					end: {
						line: s[4],
						column: s[5]
					}
				},
				sourceIndex: s[6]
			})), this.position++;
		}, t.prototype.universal = function(s) {
			var r = this.nextToken;
			if (r && r[1] === "|") return this.position++, this.namespace();
			this.newNode(new Tm.default({
				value: this.currToken[1],
				source: {
					start: {
						line: this.currToken[2],
						column: this.currToken[3]
					},
					end: {
						line: this.currToken[2],
						column: this.currToken[3]
					}
				},
				sourceIndex: this.currToken[4]
			}), s), this.position++;
		}, t.prototype.splitWord = function(s, r) {
			for (var n = this, i = this.nextToken, o = this.currToken[1]; i && i[0] === "word";) {
				this.position++;
				var u = this.currToken[1];
				if (o += u, u.lastIndexOf("\\") === u.length - 1) {
					var a = this.nextToken;
					a && a[0] === "space" && (o += this.parseSpace(a[1], " "), this.position++);
				}
				i = this.nextToken;
			}
			var l = (0, js.default)(o, "."), f = (0, js.default)(o, "#"), h = (0, js.default)(o, "#{");
			h.length && (f = f.filter(function(g) {
				return !~h.indexOf(g);
			}));
			var c = (0, Rm.default)((0, am.default)((0, nm.default)([
				[0],
				l,
				f
			])));
			c.forEach(function(g, b) {
				var d = c[b + 1] || o.length, p = o.slice(g, d);
				if (b === 0 && r) return r.call(n, p, c.length);
				var m = void 0;
				~l.indexOf(g) ? m = new pm.default({
					value: p.slice(1),
					source: {
						start: {
							line: n.currToken[2],
							column: n.currToken[3] + g
						},
						end: {
							line: n.currToken[4],
							column: n.currToken[3] + (d - 1)
						}
					},
					sourceIndex: n.currToken[6] + c[b]
				}) : ~f.indexOf(g) ? m = new ym.default({
					value: p.slice(1),
					source: {
						start: {
							line: n.currToken[2],
							column: n.currToken[3] + g
						},
						end: {
							line: n.currToken[4],
							column: n.currToken[3] + (d - 1)
						}
					},
					sourceIndex: n.currToken[6] + c[b]
				}) : m = new wm.default({
					value: p,
					source: {
						start: {
							line: n.currToken[2],
							column: n.currToken[3] + g
						},
						end: {
							line: n.currToken[4],
							column: n.currToken[3] + (d - 1)
						}
					},
					sourceIndex: n.currToken[6] + c[b]
				}), n.newNode(m, s);
			}), this.position++;
		}, t.prototype.word = function(s) {
			var r = this.nextToken;
			return r && r[1] === "|" ? (this.position++, this.namespace()) : this.splitWord(s);
		}, t.prototype.loop = function() {
			for (; this.position < this.tokens.length;) this.parse(!0);
			return this.root;
		}, t.prototype.parse = function(s) {
			switch (this.currToken[0]) {
				case "space":
					this.space();
					break;
				case "comment":
					this.comment();
					break;
				case "(":
					this.parentheses();
					break;
				case ")":
					s && this.missingParenthesis();
					break;
				case "[":
					this.attribute();
					break;
				case "]":
					this.missingSquareBracket();
					break;
				case "at-word":
				case "word":
					this.word();
					break;
				case ":":
					this.pseudo();
					break;
				case ";":
					this.missingBackslash();
					break;
				case ",":
					this.comma();
					break;
				case "*":
					this.universal();
					break;
				case "&":
					this.nesting();
					break;
				case "combinator":
					this.combinator();
					break;
				case "string":
					this.string();
					break;
			}
		}, t.prototype.parseNamespace = function(s) {
			if (this.lossy && typeof s == "string") {
				var r = s.trim();
				return r.length ? r : !0;
			}
			return s;
		}, t.prototype.parseSpace = function(s, r) {
			return this.lossy ? r || "" : s;
		}, t.prototype.parseValue = function(s) {
			return this.lossy && s && typeof s == "string" ? s.trim() : s;
		}, t.prototype.parseParenthesisToken = function(s) {
			return this.lossy ? s[0] === "space" ? this.parseSpace(s[1], " ") : this.parseValue(s[1]) : s[1];
		}, t.prototype.newNode = function(s, r) {
			return r && (s.namespace = this.parseNamespace(r)), this.spaces && (s.spaces.before = this.spaces, this.spaces = ""), this.current.append(s);
		}, rm(t, [
			{
				key: "currToken",
				get: function() {
					return this.tokens[this.position];
				}
			},
			{
				key: "nextToken",
				get: function() {
					return this.tokens[this.position + 1];
				}
			},
			{
				key: "prevToken",
				get: function() {
					return this.tokens[this.position - 1];
				}
			}
		]), t;
	})();
	hu.exports = Cr.default;
});
var yu = w((Nr, mu) => {
	"use strict";
	Nr.__esModule = !0;
	var Um = (function() {
		function t(e, s) {
			for (var r = 0; r < s.length; r++) {
				var n = s[r];
				n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n && (n.writable = !0), Object.defineProperty(e, n.key, n);
			}
		}
		return function(e, s, r) {
			return s && t(e.prototype, s), r && t(e, r), e;
		};
	})(), $m = Wm(du());
	function Wm(t) {
		return t && t.__esModule ? t : { default: t };
	}
	function Gm(t, e) {
		if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function");
	}
	Nr.default = (function() {
		function t(e) {
			return Gm(this, t), this.func = e || function() {}, this;
		}
		return t.prototype.process = function(s) {
			var r = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, n = new $m.default({
				css: s,
				error: function(o) {
					throw new Error(o);
				},
				options: r
			});
			return this.res = n, this.func(n), this;
		}, Um(t, [{
			key: "result",
			get: function() {
				return String(this.res);
			}
		}]), t;
	})();
	mu.exports = Nr.default;
});
var j = w((L_, wu) => {
	"use strict";
	var Ks = function(t, e) {
		let s = new t.constructor();
		for (let r in t) {
			if (!t.hasOwnProperty(r)) continue;
			let n = t[r], i = typeof n;
			r === "parent" && i === "object" ? e && (s[r] = e) : r === "source" ? s[r] = n : n instanceof Array ? s[r] = n.map((o) => Ks(o, s)) : r !== "before" && r !== "after" && r !== "between" && r !== "semicolon" && (i === "object" && n !== null && (n = Ks(n)), s[r] = n);
		}
		return s;
	};
	wu.exports = class {
		constructor(e) {
			e = e || {}, this.raws = {
				before: "",
				after: ""
			};
			for (let s in e) this[s] = e[s];
		}
		remove() {
			return this.parent && this.parent.removeChild(this), this.parent = void 0, this;
		}
		toString() {
			return [
				this.raws.before,
				String(this.value),
				this.raws.after
			].join("");
		}
		clone(e) {
			e = e || {};
			let s = Ks(this);
			for (let r in e) s[r] = e[r];
			return s;
		}
		cloneBefore(e) {
			e = e || {};
			let s = this.clone(e);
			return this.parent.insertBefore(this, s), s;
		}
		cloneAfter(e) {
			e = e || {};
			let s = this.clone(e);
			return this.parent.insertAfter(this, s), s;
		}
		replaceWith() {
			let e = Array.prototype.slice.call(arguments);
			if (this.parent) {
				for (let s of e) this.parent.insertBefore(this, s);
				this.remove();
			}
			return this;
		}
		moveTo(e) {
			return this.cleanRaws(this.root() === e.root()), this.remove(), e.append(this), this;
		}
		moveBefore(e) {
			return this.cleanRaws(this.root() === e.root()), this.remove(), e.parent.insertBefore(e, this), this;
		}
		moveAfter(e) {
			return this.cleanRaws(this.root() === e.root()), this.remove(), e.parent.insertAfter(e, this), this;
		}
		next() {
			let e = this.parent.index(this);
			return this.parent.nodes[e + 1];
		}
		prev() {
			let e = this.parent.index(this);
			return this.parent.nodes[e - 1];
		}
		toJSON() {
			let e = {};
			for (let s in this) {
				if (!this.hasOwnProperty(s) || s === "parent") continue;
				let r = this[s];
				r instanceof Array ? e[s] = r.map((n) => typeof n == "object" && n.toJSON ? n.toJSON() : n) : typeof r == "object" && r.toJSON ? e[s] = r.toJSON() : e[s] = r;
			}
			return e;
		}
		root() {
			let e = this;
			for (; e.parent;) e = e.parent;
			return e;
		}
		cleanRaws(e) {
			delete this.raws.before, delete this.raws.after, e || delete this.raws.between;
		}
		positionInside(e) {
			let s = this.toString(), r = this.source.start.column, n = this.source.start.line;
			for (let i = 0; i < e; i++) s[i] === `
` ? (r = 1, n += 1) : r += 1;
			return {
				line: n,
				column: r
			};
		}
		positionBy(e) {
			let s = this.source.start;
			if (Object(e).index) s = this.positionInside(e.index);
			else if (Object(e).word) {
				let r = this.toString().indexOf(e.word);
				r !== -1 && (s = this.positionInside(r));
			}
			return s;
		}
	};
});
var F = w((D_, vu) => {
	"use strict";
	var zm = j(), Ve = class extends zm {
		constructor(e) {
			super(e), this.nodes || (this.nodes = []);
		}
		push(e) {
			return e.parent = this, this.nodes.push(e), this;
		}
		each(e) {
			this.lastEach || (this.lastEach = 0), this.indexes || (this.indexes = {}), this.lastEach += 1;
			let s = this.lastEach, r, n;
			if (this.indexes[s] = 0, !!this.nodes) {
				for (; this.indexes[s] < this.nodes.length && (r = this.indexes[s], n = e(this.nodes[r], r), n !== !1);) this.indexes[s] += 1;
				return delete this.indexes[s], n;
			}
		}
		walk(e) {
			return this.each((s, r) => {
				let n = e(s, r);
				return n !== !1 && s.walk && (n = s.walk(e)), n;
			});
		}
		walkType(e, s) {
			if (!e || !s) throw new Error("Parameters {type} and {callback} are required.");
			let r = typeof e == "function";
			return this.walk((n, i) => {
				if (r && n instanceof e || !r && n.type === e) return s.call(this, n, i);
			});
		}
		append(e) {
			return e.parent = this, this.nodes.push(e), this;
		}
		prepend(e) {
			return e.parent = this, this.nodes.unshift(e), this;
		}
		cleanRaws(e) {
			if (super.cleanRaws(e), this.nodes) for (let s of this.nodes) s.cleanRaws(e);
		}
		insertAfter(e, s) {
			let r = this.index(e), n;
			this.nodes.splice(r + 1, 0, s);
			for (let i in this.indexes) n = this.indexes[i], r <= n && (this.indexes[i] = n + this.nodes.length);
			return this;
		}
		insertBefore(e, s) {
			let r = this.index(e), n;
			this.nodes.splice(r, 0, s);
			for (let i in this.indexes) n = this.indexes[i], r <= n && (this.indexes[i] = n + this.nodes.length);
			return this;
		}
		removeChild(e) {
			e = this.index(e), this.nodes[e].parent = void 0, this.nodes.splice(e, 1);
			let s;
			for (let r in this.indexes) s = this.indexes[r], s >= e && (this.indexes[r] = s - 1);
			return this;
		}
		removeAll() {
			for (let e of this.nodes) e.parent = void 0;
			return this.nodes = [], this;
		}
		every(e) {
			return this.nodes.every(e);
		}
		some(e) {
			return this.nodes.some(e);
		}
		index(e) {
			return typeof e == "number" ? e : this.nodes.indexOf(e);
		}
		get first() {
			if (this.nodes) return this.nodes[0];
		}
		get last() {
			if (this.nodes) return this.nodes[this.nodes.length - 1];
		}
		toString() {
			let e = this.nodes.map(String).join("");
			return this.value && (e = this.value + e), this.raws.before && (e = this.raws.before + e), this.raws.after && (e += this.raws.after), e;
		}
	};
	Ve.registerWalker = (t) => {
		let e = "walk" + t.name;
		e.lastIndexOf("s") !== e.length - 1 && (e += "s"), !Ve.prototype[e] && (Ve.prototype[e] = function(s) {
			return this.walkType(t, s);
		});
	};
	vu.exports = Ve;
});
var _u = w((B_, xu) => {
	"use strict";
	var jm = F();
	xu.exports = class extends jm {
		constructor(e) {
			super(e), this.type = "root";
		}
	};
});
var Eu = w((F_, bu) => {
	"use strict";
	var Hm = F();
	bu.exports = class extends Hm {
		constructor(e) {
			super(e), this.type = "value", this.unbalanced = 0;
		}
	};
});
var Tu = w(($_, ku) => {
	"use strict";
	var Su = F(), Pr = class extends Su {
		constructor(e) {
			super(e), this.type = "atword";
		}
		toString() {
			this.quoted && this.raws.quote;
			return [
				this.raws.before,
				"@",
				String.prototype.toString.call(this.value),
				this.raws.after
			].join("");
		}
	};
	Su.registerWalker(Pr);
	ku.exports = Pr;
});
var Ou = w((W_, Au) => {
	"use strict";
	var Km = F(), Qm = j(), Rr = class extends Qm {
		constructor(e) {
			super(e), this.type = "colon";
		}
	};
	Km.registerWalker(Rr);
	Au.exports = Rr;
});
var Nu = w((G_, Cu) => {
	"use strict";
	var Xm = F(), Jm = j(), Ir = class extends Jm {
		constructor(e) {
			super(e), this.type = "comma";
		}
	};
	Xm.registerWalker(Ir);
	Cu.exports = Ir;
});
var Ru = w((Y_, Pu) => {
	"use strict";
	var Zm = F(), ey = j(), qr = class extends ey {
		constructor(e) {
			super(e), this.type = "comment", this.inline = Object(e).inline || !1;
		}
		toString() {
			return [
				this.raws.before,
				this.inline ? "//" : "/*",
				String(this.value),
				this.inline ? "" : "*/",
				this.raws.after
			].join("");
		}
	};
	Zm.registerWalker(qr);
	Pu.exports = qr;
});
var Lu = w((V_, qu) => {
	"use strict";
	var Iu = F(), Lr = class extends Iu {
		constructor(e) {
			super(e), this.type = "func", this.unbalanced = -1;
		}
	};
	Iu.registerWalker(Lr);
	qu.exports = Lr;
});
var Mu = w((z_, Du) => {
	"use strict";
	var ty = F(), ry = j(), Dr = class extends ry {
		constructor(e) {
			super(e), this.type = "number", this.unit = Object(e).unit || "";
		}
		toString() {
			return [
				this.raws.before,
				String(this.value),
				this.unit,
				this.raws.after
			].join("");
		}
	};
	ty.registerWalker(Dr);
	Du.exports = Dr;
});
var Uu = w((j_, Bu) => {
	"use strict";
	var sy = F(), ny = j(), Mr = class extends ny {
		constructor(e) {
			super(e), this.type = "operator";
		}
	};
	sy.registerWalker(Mr);
	Bu.exports = Mr;
});
var $u = w((H_, Fu) => {
	"use strict";
	var iy = F(), oy = j(), Br = class extends oy {
		constructor(e) {
			super(e), this.type = "paren", this.parenType = "";
		}
	};
	iy.registerWalker(Br);
	Fu.exports = Br;
});
var Gu = w((K_, Wu) => {
	"use strict";
	var ay = F(), uy = j(), Ur = class extends uy {
		constructor(e) {
			super(e), this.type = "string";
		}
		toString() {
			let e = this.quoted ? this.raws.quote : "";
			return [
				this.raws.before,
				e,
				this.value + "",
				e,
				this.raws.after
			].join("");
		}
	};
	ay.registerWalker(Ur);
	Wu.exports = Ur;
});
var Vu = w((Q_, Yu) => {
	"use strict";
	var ly = F(), cy = j(), Fr = class extends cy {
		constructor(e) {
			super(e), this.type = "word";
		}
	};
	ly.registerWalker(Fr);
	Yu.exports = Fr;
});
var ju = w((X_, zu) => {
	"use strict";
	var fy = F(), py = j(), $r = class extends py {
		constructor(e) {
			super(e), this.type = "unicode-range";
		}
	};
	fy.registerWalker($r);
	zu.exports = $r;
});
var Ku = w((J_, Hu) => {
	"use strict";
	var Qs = class extends Error {
		constructor(e) {
			super(e), this.name = this.constructor.name, this.message = e || "An error ocurred while tokzenizing.", typeof Error.captureStackTrace == "function" ? Error.captureStackTrace(this, this.constructor) : this.stack = new Error(e).stack;
		}
	};
	Hu.exports = Qs;
});
var Ju = w((Z_, Xu) => {
	"use strict";
	var Wr = /[ \n\t\r\{\(\)'"\\;,/]/g, hy = /[ \n\t\r\(\)\{\}\*:;@!&'"\+\|~>,\[\]\\]|\/(?=\*)/g, ze = /[ \n\t\r\(\)\{\}\*:;@!&'"\-\+\|~>,\[\]\\]|\//g, dy = /^[a-z0-9]/i, my = /^[a-f0-9?\-]/i, Qu = Ku();
	Xu.exports = function(e, s) {
		s = s || {};
		let r = [], n = e.valueOf(), i = n.length, o = -1, u = 1, a = 0, l = 0, f = null, h, c, g, b, d, p, y, v, O, q, H;
		function ne(A) {
			throw new Qu(`Unclosed ${A} at line: ${u}, column: ${a - o}, token: ${a}`);
		}
		for (; a < i;) {
			switch (h = n.charCodeAt(a), h === 10 && (o = a, u += 1), h) {
				case 10:
				case 32:
				case 9:
				case 13:
				case 12:
					c = a;
					do
						c += 1, h = n.charCodeAt(c), h === 10 && (o = c, u += 1);
					while (h === 32 || h === 10 || h === 9 || h === 13 || h === 12);
					r.push([
						"space",
						n.slice(a, c),
						u,
						a - o,
						u,
						c - o,
						a
					]), a = c - 1;
					break;
				case 58:
					c = a + 1, r.push([
						"colon",
						n.slice(a, c),
						u,
						a - o,
						u,
						c - o,
						a
					]), a = c - 1;
					break;
				case 44:
					c = a + 1, r.push([
						"comma",
						n.slice(a, c),
						u,
						a - o,
						u,
						c - o,
						a
					]), a = c - 1;
					break;
				case 123:
					r.push([
						"{",
						"{",
						u,
						a - o,
						u,
						c - o,
						a
					]);
					break;
				case 125:
					r.push([
						"}",
						"}",
						u,
						a - o,
						u,
						c - o,
						a
					]);
					break;
				case 40:
					l++, f = !f && l === 1 && r.length > 0 && r[r.length - 1][0] === "word" && r[r.length - 1][1] === "url", r.push([
						"(",
						"(",
						u,
						a - o,
						u,
						c - o,
						a
					]);
					break;
				case 41:
					l--, f = f && l > 0, r.push([
						")",
						")",
						u,
						a - o,
						u,
						c - o,
						a
					]);
					break;
				case 39:
				case 34:
					g = h === 39 ? "'" : "\"", c = a;
					do
						for (O = !1, c = n.indexOf(g, c + 1), c === -1 && ne("quote", g), q = c; n.charCodeAt(q - 1) === 92;) q -= 1, O = !O;
					while (O);
					r.push([
						"string",
						n.slice(a, c + 1),
						u,
						a - o,
						u,
						c - o,
						a
					]), a = c;
					break;
				case 64:
					Wr.lastIndex = a + 1, Wr.test(n), Wr.lastIndex === 0 ? c = n.length - 1 : c = Wr.lastIndex - 2, r.push([
						"atword",
						n.slice(a, c + 1),
						u,
						a - o,
						u,
						c - o,
						a
					]), a = c;
					break;
				case 92:
					c = a, h = n.charCodeAt(c + 1), r.push([
						"word",
						n.slice(a, c + 1),
						u,
						a - o,
						u,
						c - o,
						a
					]), a = c;
					break;
				case 43:
				case 45:
				case 42:
					c = a + 1, H = n.slice(a + 1, c + 1);
					n.slice(a - 1, a);
					if (h === 45 && H.charCodeAt(0) === 45) {
						c++, r.push([
							"word",
							n.slice(a, c),
							u,
							a - o,
							u,
							c - o,
							a
						]), a = c - 1;
						break;
					}
					r.push([
						"operator",
						n.slice(a, c),
						u,
						a - o,
						u,
						c - o,
						a
					]), a = c - 1;
					break;
				default:
					if (h === 47 && (n.charCodeAt(a + 1) === 42 || s.loose && !f && n.charCodeAt(a + 1) === 47)) {
						if (n.charCodeAt(a + 1) === 42) c = n.indexOf("*/", a + 2) + 1, c === 0 && ne("comment", "*/");
						else {
							let N = n.indexOf(`
`, a + 2);
							c = N !== -1 ? N - 1 : i;
						}
						p = n.slice(a, c + 1), b = p.split(`
`), d = b.length - 1, d > 0 ? (y = u + d, v = c - b[d].length) : (y = u, v = o), r.push([
							"comment",
							p,
							u,
							a - o,
							y,
							c - v,
							a
						]), o = v, u = y, a = c;
					} else if (h === 35 && !dy.test(n.slice(a + 1, a + 2))) c = a + 1, r.push([
						"#",
						n.slice(a, c),
						u,
						a - o,
						u,
						c - o,
						a
					]), a = c - 1;
					else if ((h === 117 || h === 85) && n.charCodeAt(a + 1) === 43) {
						c = a + 2;
						do
							c += 1, h = n.charCodeAt(c);
						while (c < i && my.test(n.slice(c, c + 1)));
						r.push([
							"unicoderange",
							n.slice(a, c),
							u,
							a - o,
							u,
							c - o,
							a
						]), a = c - 1;
					} else if (h === 47) c = a + 1, r.push([
						"operator",
						n.slice(a, c),
						u,
						a - o,
						u,
						c - o,
						a
					]), a = c - 1;
					else {
						let k = hy;
						if (h >= 48 && h <= 57 && (k = ze), k.lastIndex = a + 1, k.test(n), k.lastIndex === 0 ? c = n.length - 1 : c = k.lastIndex - 2, k === ze || h === 46) {
							let N = n.charCodeAt(c), tn = n.charCodeAt(c + 1), rn = n.charCodeAt(c + 2);
							(N === 101 || N === 69) && (tn === 45 || tn === 43) && rn >= 48 && rn <= 57 && (ze.lastIndex = c + 2, ze.test(n), ze.lastIndex === 0 ? c = n.length - 1 : c = ze.lastIndex - 2);
						}
						r.push([
							"word",
							n.slice(a, c + 1),
							u,
							a - o,
							u,
							c - o,
							a
						]), a = c;
					}
					break;
			}
			a++;
		}
		return r;
	};
});
var el = w((eb, Zu) => {
	"use strict";
	var Xs = class extends Error {
		constructor(e) {
			super(e), this.name = this.constructor.name, this.message = e || "An error ocurred while parsing.", typeof Error.captureStackTrace == "function" ? Error.captureStackTrace(this, this.constructor) : this.stack = new Error(e).stack;
		}
	};
	Zu.exports = Xs;
});
var nl = w((rb, sl) => {
	"use strict";
	var yy = _u(), gy = Eu(), wy = Tu(), vy = Ou(), xy = Nu(), _y = Ru(), by = Lu(), Ey = Mu(), Sy = Uu(), tl = $u(), ky = Gu(), rl = Vu(), Ty = ju(), Ay = Ju(), Oy = Us(), Cy = Fs(), Ny = $s(), Py = el();
	function Ry(t) {
		return t.sort((e, s) => e - s);
	}
	sl.exports = class {
		constructor(e, s) {
			this.cache = [], this.input = e, this.options = Object.assign({}, { loose: !1 }, s), this.position = 0, this.unbalanced = 0, this.root = new yy();
			let n = new gy();
			this.root.append(n), this.current = n, this.tokens = Ay(e, this.options);
		}
		parse() {
			return this.loop();
		}
		colon() {
			let e = this.currToken;
			this.newNode(new vy({
				value: e[1],
				source: {
					start: {
						line: e[2],
						column: e[3]
					},
					end: {
						line: e[4],
						column: e[5]
					}
				},
				sourceIndex: e[6]
			})), this.position++;
		}
		comma() {
			let e = this.currToken;
			this.newNode(new xy({
				value: e[1],
				source: {
					start: {
						line: e[2],
						column: e[3]
					},
					end: {
						line: e[4],
						column: e[5]
					}
				},
				sourceIndex: e[6]
			})), this.position++;
		}
		comment() {
			let e = !1, s = this.currToken[1].replace(/\/\*|\*\//g, ""), r;
			this.options.loose && s.startsWith("//") && (s = s.substring(2), e = !0), r = new _y({
				value: s,
				inline: e,
				source: {
					start: {
						line: this.currToken[2],
						column: this.currToken[3]
					},
					end: {
						line: this.currToken[4],
						column: this.currToken[5]
					}
				},
				sourceIndex: this.currToken[6]
			}), this.newNode(r), this.position++;
		}
		error(e, s) {
			throw new Py(e + ` at line: ${s[2]}, column ${s[3]}`);
		}
		loop() {
			for (; this.position < this.tokens.length;) this.parseTokens();
			return !this.current.last && this.spaces ? this.current.raws.before += this.spaces : this.spaces && (this.current.last.raws.after += this.spaces), this.spaces = "", this.root;
		}
		operator() {
			let e = this.currToken[1], s;
			if (e === "+" || e === "-") {
				if (this.options.loose || this.position > 0 && (this.current.type === "func" && this.current.value === "calc" ? this.prevToken[0] !== "space" && this.prevToken[0] !== "(" ? this.error("Syntax Error", this.currToken) : this.nextToken[0] !== "space" && this.nextToken[0] !== "word" ? this.error("Syntax Error", this.currToken) : this.nextToken[0] === "word" && this.current.last.type !== "operator" && this.current.last.value !== "(" && this.error("Syntax Error", this.currToken) : (this.nextToken[0] === "space" || this.nextToken[0] === "operator" || this.prevToken[0] === "operator") && this.error("Syntax Error", this.currToken)), this.options.loose) {
					if ((!this.current.nodes.length || this.current.last && this.current.last.type === "operator") && this.nextToken[0] === "word") return this.word();
				} else if (this.nextToken[0] === "word") return this.word();
			}
			return s = new Sy({
				value: this.currToken[1],
				source: {
					start: {
						line: this.currToken[2],
						column: this.currToken[3]
					},
					end: {
						line: this.currToken[2],
						column: this.currToken[3]
					}
				},
				sourceIndex: this.currToken[4]
			}), this.position++, this.newNode(s);
		}
		parseTokens() {
			switch (this.currToken[0]) {
				case "space":
					this.space();
					break;
				case "colon":
					this.colon();
					break;
				case "comma":
					this.comma();
					break;
				case "comment":
					this.comment();
					break;
				case "(":
					this.parenOpen();
					break;
				case ")":
					this.parenClose();
					break;
				case "atword":
				case "word":
					this.word();
					break;
				case "operator":
					this.operator();
					break;
				case "string":
					this.string();
					break;
				case "unicoderange":
					this.unicodeRange();
					break;
				default:
					this.word();
					break;
			}
		}
		parenOpen() {
			let e = 1, s = this.position + 1, r = this.currToken, n;
			for (; s < this.tokens.length && e;) {
				let i = this.tokens[s];
				i[0] === "(" && e++, i[0] === ")" && e--, s++;
			}
			if (e && this.error("Expected closing parenthesis", r), n = this.current.last, n && n.type === "func" && n.unbalanced < 0 && (n.unbalanced = 0, this.current = n), this.current.unbalanced++, this.newNode(new tl({
				value: r[1],
				source: {
					start: {
						line: r[2],
						column: r[3]
					},
					end: {
						line: r[4],
						column: r[5]
					}
				},
				sourceIndex: r[6]
			})), this.position++, this.current.type === "func" && this.current.unbalanced && this.current.value === "url" && this.currToken[0] !== "string" && this.currToken[0] !== ")" && !this.options.loose) {
				let i = this.nextToken, o = this.currToken[1], u = {
					line: this.currToken[2],
					column: this.currToken[3]
				};
				for (; i && i[0] !== ")" && this.current.unbalanced;) this.position++, o += this.currToken[1], i = this.nextToken;
				this.position !== this.tokens.length - 1 && (this.position++, this.newNode(new rl({
					value: o,
					source: {
						start: u,
						end: {
							line: this.currToken[4],
							column: this.currToken[5]
						}
					},
					sourceIndex: this.currToken[6]
				})));
			}
		}
		parenClose() {
			let e = this.currToken;
			this.newNode(new tl({
				value: e[1],
				source: {
					start: {
						line: e[2],
						column: e[3]
					},
					end: {
						line: e[4],
						column: e[5]
					}
				},
				sourceIndex: e[6]
			})), this.position++, !(this.position >= this.tokens.length - 1 && !this.current.unbalanced) && (this.current.unbalanced--, this.current.unbalanced < 0 && this.error("Expected opening parenthesis", e), !this.current.unbalanced && this.cache.length && (this.current = this.cache.pop()));
		}
		space() {
			let e = this.currToken;
			this.position === this.tokens.length - 1 || this.nextToken[0] === "," || this.nextToken[0] === ")" ? (this.current.last.raws.after += e[1], this.position++) : (this.spaces = e[1], this.position++);
		}
		unicodeRange() {
			let e = this.currToken;
			this.newNode(new Ty({
				value: e[1],
				source: {
					start: {
						line: e[2],
						column: e[3]
					},
					end: {
						line: e[4],
						column: e[5]
					}
				},
				sourceIndex: e[6]
			})), this.position++;
		}
		splitWord() {
			let e = this.nextToken, s = this.currToken[1], r = /^[\+\-]?((\d+(\.\d*)?)|(\.\d+))([eE][\+\-]?\d+)?/, n = /^(?!\#([a-z0-9]+))[\#\{\}]/gi, i, o;
			if (!n.test(s)) for (; e && e[0] === "word";) {
				this.position++;
				let u = this.currToken[1];
				s += u, e = this.nextToken;
			}
			i = Cy(s, "@"), o = Ry(Ny(Oy([[0], i]))), o.forEach((u, a) => {
				let l = o[a + 1] || s.length, f = s.slice(u, l), h;
				if (~i.indexOf(u)) h = new wy({
					value: f.slice(1),
					source: {
						start: {
							line: this.currToken[2],
							column: this.currToken[3] + u
						},
						end: {
							line: this.currToken[4],
							column: this.currToken[3] + (l - 1)
						}
					},
					sourceIndex: this.currToken[6] + o[a]
				});
				else if (r.test(this.currToken[1])) {
					let c = f.replace(r, "");
					h = new Ey({
						value: f.replace(c, ""),
						source: {
							start: {
								line: this.currToken[2],
								column: this.currToken[3] + u
							},
							end: {
								line: this.currToken[4],
								column: this.currToken[3] + (l - 1)
							}
						},
						sourceIndex: this.currToken[6] + o[a],
						unit: c
					});
				} else h = new (e && e[0] === "(" ? by : rl)({
					value: f,
					source: {
						start: {
							line: this.currToken[2],
							column: this.currToken[3] + u
						},
						end: {
							line: this.currToken[4],
							column: this.currToken[3] + (l - 1)
						}
					},
					sourceIndex: this.currToken[6] + o[a]
				}), h.type === "word" ? (h.isHex = /^#(.+)/.test(f), h.isColor = /^#([0-9a-f]{3}|[0-9a-f]{4}|[0-9a-f]{6}|[0-9a-f]{8})$/i.test(f)) : this.cache.push(this.current);
				this.newNode(h);
			}), this.position++;
		}
		string() {
			let e = this.currToken, s = this.currToken[1], r = /^(\"|\')/, n = r.test(s), i = "", o;
			n && (i = s.match(r)[0], s = s.slice(1, s.length - 1)), o = new ky({
				value: s,
				source: {
					start: {
						line: e[2],
						column: e[3]
					},
					end: {
						line: e[4],
						column: e[5]
					}
				},
				sourceIndex: e[6],
				quoted: n
			}), o.raws.quote = i, this.newNode(o), this.position++;
		}
		word() {
			return this.splitWord();
		}
		newNode(e) {
			return this.spaces && (e.raws.before += this.spaces, this.spaces = ""), this.current.append(e);
		}
		get currToken() {
			return this.tokens[this.position];
		}
		get nextToken() {
			return this.tokens[this.position + 1];
		}
		get prevToken() {
			return this.tokens[this.position - 1];
		}
	};
});
var _l = {};
sn(_l, {
	languages: () => Si,
	options: () => Ti,
	parsers: () => en,
	printers: () => Hy
});
var bt = (t, e) => (s, r, ...n) => s | 1 && r == null ? void 0 : (e.call(r) ?? r[t]).apply(r, n);
var Ol = String.prototype.replaceAll ?? function(t, e) {
	return t.global ? this.replace(t, e) : this.split(t).join(e);
}, E = bt("replaceAll", function() {
	if (typeof this == "string") return Ol;
});
function Nl(t) {
	return this[t < 0 ? this.length + t : t];
}
var G = bt("at", function() {
	if (Array.isArray(this) || typeof this == "string") return Nl;
});
var Rl = () => {}, K = Rl;
var je = "string", He = "array", Et = "cursor", ie = "indent", Ae = "align", St = "trim", oe = "group", ae = "fill", me = "if-break", kt = "indent-if-break", Oe = "line-suffix", Tt = "line-suffix-boundary", X = "line", At = "label", Ce = "break-parent", Ot = new Set([
	Et,
	ie,
	Ae,
	St,
	oe,
	ae,
	me,
	kt,
	Oe,
	Tt,
	X,
	At,
	Ce
]);
function Il(t) {
	if (typeof t == "string") return je;
	if (Array.isArray(t)) return He;
	if (!t) return;
	let { type: e } = t;
	if (Ot.has(e)) return e;
}
var ue = Il;
var ql = (t) => new Intl.ListFormat("en-US", { type: "disjunction" }).format(t);
function Ll(t) {
	let e = t === null ? "null" : typeof t;
	if (e !== "string" && e !== "object") return `Unexpected doc '${e}', 
Expected it to be 'string' or 'object'.`;
	if (ue(t)) throw new Error("doc is valid.");
	let s = Object.prototype.toString.call(t);
	if (s !== "[object Object]") return `Unexpected doc '${s}'.`;
	let r = ql([...Ot].map((n) => `'${n}'`));
	return `Unexpected doc.type '${t.type}'.
Expected it to be ${r}.`;
}
var zr = class extends Error {
	name = "InvalidDocError";
	constructor(e) {
		super(Ll(e)), this.doc = e;
	}
}, nn = zr;
function Dl(t, e) {
	if (typeof t == "string") return e(t);
	let s = /* @__PURE__ */ new Map();
	return r(t);
	function r(i) {
		if (s.has(i)) return s.get(i);
		let o = n(i);
		return s.set(i, o), o;
	}
	function n(i) {
		switch (ue(i)) {
			case He: return e(i.map(r));
			case ae: return e({
				...i,
				parts: i.parts.map(r)
			});
			case me: return e({
				...i,
				breakContents: r(i.breakContents),
				flatContents: r(i.flatContents)
			});
			case oe: {
				let { expandedStates: o, contents: u } = i;
				return o ? (o = o.map(r), u = o[0]) : u = r(u), e({
					...i,
					contents: u,
					expandedStates: o
				});
			}
			case Ae:
			case ie:
			case kt:
			case At:
			case Oe: return e({
				...i,
				contents: r(i.contents)
			});
			case je:
			case Et:
			case St:
			case Tt:
			case X:
			case Ce: return e(i);
			default: throw new nn(i);
		}
	}
}
function Ml(t) {
	return t.type === X && !t.hard ? t.soft ? "" : " " : t.type === me ? t.flatContents : t;
}
function on(t) {
	return Dl(t, Ml);
}
var $ = K, ye = K, an = K, un = K;
function L(t) {
	return $(t), {
		type: ie,
		contents: t
	};
}
function Bl(t, e) {
	return un(t), $(e), {
		type: Ae,
		contents: e,
		n: t
	};
}
function le(t) {
	return Bl(-1, t);
}
var Ne = { type: Ce };
function Pe(t) {
	return an(t), {
		type: ae,
		parts: t
	};
}
function D(t, e = {}) {
	return $(t), ye(e.expandedStates, !0), {
		type: oe,
		id: e.id,
		contents: t,
		break: !!e.shouldBreak,
		expandedStates: e.expandedStates
	};
}
function Ct(t, e = "", s = {}) {
	return $(t), e !== "" && $(e), {
		type: me,
		breakContents: t,
		flatContents: e,
		groupId: s.groupId
	};
}
function Y(t, e) {
	$(t), ye(e);
	let s = [];
	for (let r = 0; r < e.length; r++) r !== 0 && s.push(t), s.push(e[r]);
	return s;
}
var C = { type: X }, M = {
	type: X,
	soft: !0
}, T = [{
	type: X,
	hard: !0
}, Ne];
function ln(t) {
	return $(t), {
		type: Oe,
		contents: t
	};
}
function $l(t) {
	return Array.isArray(t) && t.length > 0;
}
var ce = $l;
var cn = Object.freeze({
	character: "'",
	codePoint: 39
}), fn = Object.freeze({
	character: "\"",
	codePoint: 34
}), Wl = Object.freeze({
	preferred: cn,
	alternate: fn
}), Gl = Object.freeze({
	preferred: fn,
	alternate: cn
});
function Yl(t, e) {
	let { preferred: s, alternate: r } = e === !0 || e === "'" ? Wl : Gl, { length: n } = t, i = 0, o = 0;
	for (let u = 0; u < n; u++) {
		let a = t.charCodeAt(u);
		a === s.codePoint ? i++ : a === r.codePoint && o++;
	}
	return (i > o ? r : s).character;
}
var pn = Yl;
var Vl = /\\(["'\\])|(["'])/gu;
function zl(t, e) {
	let s = e === "\"" ? "'" : "\"";
	return e + E(0, t, Vl, (n, i, o) => i ? i === s ? s : n : o === e ? "\\" + o : o) + e;
}
var hn = zl;
function jl(t, e) {
	K(/^(?<quote>["']).*\k<quote>$/su.test(t));
	let s = t.slice(1, -1), r = e.parser === "json" || e.parser === "jsonc" || e.parser === "json5" && e.quoteProps === "preserve" && !e.singleQuote ? "\"" : e.__isInHtmlAttribute ? "'" : pn(s, e.singleQuote);
	return t.charAt(0) === r ? t : hn(s, r);
}
var Nt = jl;
var jr = class extends Error {
	name = "UnexpectedNodeError";
	constructor(e, s, r = "type") {
		super(`Unexpected ${s} node ${r}: ${JSON.stringify(e[r])}.`), this.node = e;
	}
}, dn = jr;
var Pt = Symbol.for("PRETTIER_IS_FRONT_MATTER");
function Hl(t) {
	return !!t?.[Pt];
}
var Re = Hl;
var Ke = 3;
function Kl(t) {
	let e = t.slice(0, Ke);
	if (e !== "---" && e !== "+++") return;
	let s = t.indexOf(`
`, Ke);
	if (s === -1) return;
	let r = t.slice(Ke, s).trim(), n = t.indexOf(`
${e}`, s), i = r;
	if (i || (i = e === "+++" ? "toml" : "yaml"), n === -1 && e === "---" && i === "yaml" && (n = t.indexOf(`
...`, s)), n === -1) return;
	let o = n + 1 + Ke, u = t.charAt(o + 1);
	if (!/\s?/u.test(u)) return;
	let a = t.slice(0, o), l;
	return {
		language: i,
		explicitLanguage: r || null,
		value: t.slice(s + 1, n),
		startDelimiter: e,
		endDelimiter: a.slice(-Ke),
		raw: a,
		start: {
			line: 1,
			column: 0,
			index: 0
		},
		end: {
			index: a.length,
			get line() {
				return l ?? (l = a.split(`
`)), l.length;
			},
			get column() {
				return l ?? (l = a.split(`
`)), G(0, l, -1).length;
			}
		},
		[Pt]: !0
	};
}
function Ql(t) {
	let e = Kl(t);
	return e ? {
		frontMatter: e,
		get content() {
			let { raw: s } = e;
			return E(0, s, /[^\n]/gu, " ") + t.slice(s.length);
		}
	} : { content: t };
}
var ge = Ql;
var Xl = new Set([
	"raw",
	"raws",
	"sourceIndex",
	"source",
	"before",
	"after",
	"trailingComma",
	"spaces"
]);
function mn(t, e, s) {
	if (t.type === "css-comment" && s.type === "css-root" && s.nodes.length > 0 && ((s.nodes[0] === t || Re(s.nodes[0]) && s.nodes[1] === t) && (delete e.text, /^\*\s*@(?:format|prettier)\s*$/u.test(t.text)) || s.type === "css-root" && G(0, s.nodes, -1) === t)) return null;
	if (t.type === "value-root" && delete e.text, (t.type === "media-query" || t.type === "media-query-list" || t.type === "media-feature-expression") && delete e.value, t.type === "css-rule" && delete e.params, (t.type === "media-feature" || t.type === "media-keyword" || t.type === "media-type" || t.type === "media-unknown" || t.type === "media-url" || t.type === "media-value" || t.type === "selector-attribute" || t.type === "selector-string" || t.type === "selector-class" || t.type === "selector-combinator" || t.type === "value-string") && t.value && (e.value = Jl(t.value)), t.type === "selector-combinator" && (e.value = E(0, e.value, /\s+/gu, " ")), t.type === "media-feature" && (e.value = E(0, e.value, " ", "")), (t.type === "value-word" && (t.isColor && t.isHex || [
		"initial",
		"inherit",
		"unset",
		"revert"
	].includes(t.value.toLowerCase())) || t.type === "media-feature" || t.type === "selector-root-invalid" || t.type === "selector-pseudo") && (e.value = e.value.toLowerCase()), t.type === "css-decl" && (e.prop = t.prop.toLowerCase()), (t.type === "css-atrule" || t.type === "css-import") && (e.name = t.name.toLowerCase()), t.type === "value-number" && (e.unit = t.unit.toLowerCase()), t.type === "value-unknown" && (e.value = E(0, e.value, /;$/gu, "")), t.type === "selector-attribute" && (e.attribute = t.attribute.trim(), t.namespace && typeof t.namespace == "string" && (e.namespace = t.namespace.trim() || !0), t.value)) {
		let { value: r } = e;
		/\s[a-zA-Z]$/u.test(r) && (e.__prettier_attribute_selector_flag = G(0, r, -1), r = r.slice(0, -1)), r = r.trim(), r = r.replace(/^(?<quote>["'])(?<value>.*?)\k<quote>$/u, "$<value>"), e.value = r, delete e.quoted;
	}
	if ((t.type === "media-value" || t.type === "media-type" || t.type === "value-number" || t.type === "selector-root-invalid" || t.type === "selector-class" || t.type === "selector-combinator" || t.type === "selector-tag") && t.value && (e.value = E(0, e.value, /([\d+.e-]+)([a-z]*)/giu, (r, n, i) => {
		let o = Number(n);
		return Number.isNaN(o) ? r : o + i.toLowerCase();
	})), t.type === "selector-tag") {
		let r = e.value.toLowerCase();
		["from", "to"].includes(r) && (e.value = r);
	}
	if (t.type === "css-atrule" && t.name.toLowerCase() === "supports" && delete e.value, t.type === "selector-unknown" && delete e.value, t.type === "value-comma_group") {
		let r = t.groups.findIndex((n) => n.type === "value-number" && n.unit === "...");
		r !== -1 && (e.groups[r].unit = "", e.groups.splice(r + 1, 0, {
			type: "value-word",
			value: "...",
			isColor: !1,
			isHex: !1
		}));
	}
	if (t.type === "value-comma_group" && t.groups.some((r) => r.type === "value-atword" && (r.value.endsWith("[") || r.value.endsWith("]")) || r.type === "value-word" && (r.value.startsWith("]") || r.value.startsWith("[")))) return {
		type: "value-atword",
		value: t.groups.map((r) => r.value).join(""),
		group: {
			open: null,
			close: null,
			groups: [],
			type: "value-paren_group"
		}
	};
}
mn.ignoredProperties = Xl;
function Jl(t) {
	return E(0, E(0, t, "'", "\""), /\\([^\da-f])/giu, "$1");
}
var yn = mn;
function gn() {}
gn.getVisitorKeys = (t) => t.type === "css-root" ? ["frontMatter"] : [];
var wn = gn;
var Qe = null;
function Xe(t) {
	if (Qe !== null && typeof Qe.property) {
		let e = Qe;
		return Qe = Xe.prototype = null, e;
	}
	return Qe = Xe.prototype = t ?? Object.create(null), new Xe();
}
var Zl = 10;
for (let t = 0; t <= Zl; t++) Xe();
function Hr(t) {
	return Xe(t);
}
function ec(t, e = "type") {
	Hr(t);
	function s(r) {
		let n = r[e], i = t[n];
		if (!Array.isArray(i)) throw Object.assign(/* @__PURE__ */ new Error(`Missing visitor keys for '${n}'.`), { node: r });
		return i;
	}
	return s;
}
var vn = ec;
var _ = [
	[],
	["nodes"],
	["group"]
];
var _n = vn({
	"css-root": ["frontMatter", "nodes"],
	"css-comment": _[0],
	"css-rule": ["selector", "nodes"],
	"css-decl": [
		"value",
		"selector",
		"nodes"
	],
	"css-atrule": [
		"selector",
		"params",
		"value",
		"nodes"
	],
	"media-query-list": _[1],
	"media-query": _[1],
	"media-type": _[0],
	"media-feature-expression": _[1],
	"media-feature": _[0],
	"media-colon": _[0],
	"media-value": _[0],
	"media-keyword": _[0],
	"media-url": _[0],
	"media-unknown": _[0],
	"selector-root": _[1],
	"selector-selector": _[1],
	"selector-comment": _[0],
	"selector-string": _[0],
	"selector-tag": _[0],
	"selector-id": _[0],
	"selector-class": _[0],
	"selector-attribute": _[0],
	"selector-combinator": _[1],
	"selector-universal": _[0],
	"selector-pseudo": _[1],
	"selector-nesting": _[0],
	"selector-unknown": _[0],
	"value-value": _[2],
	"value-root": _[2],
	"value-comment": _[0],
	"value-comma_group": ["groups"],
	"value-paren_group": [
		"open",
		"groups",
		"close"
	],
	"value-func": _[2],
	"value-paren": _[0],
	"value-number": _[0],
	"value-operator": _[0],
	"value-word": _[0],
	"value-colon": _[0],
	"value-comma": _[0],
	"value-string": _[0],
	"value-atword": _[0],
	"value-unicode-range": _[0],
	"value-unknown": _[0]
});
function rc(t, e) {
	let s = 0;
	for (let r = 0; r < t.line - 1; ++r) s = e.indexOf(`
`, s) + 1;
	return s + t.column;
}
var Kr = rc;
function Rt(t) {
	return (e, s, r) => {
		let n = !!r?.backwards;
		if (s === !1) return !1;
		let { length: i } = e, o = s;
		for (; o >= 0 && o < i;) {
			let u = e.charAt(o);
			if (t instanceof RegExp) {
				if (!t.test(u)) return o;
			} else if (!t.includes(u)) return o;
			n ? o-- : o++;
		}
		return o === -1 || o === i ? o : !1;
	};
}
Rt(/\s/u);
var It = Rt(" 	"), bn = Rt(",; 	"), qt = Rt(/[^\n\r]/u);
function En(t, e) {
	let { value: s } = t;
	return s === "-" || s === "--" || s.charAt(0) !== "-" ? e : e - (s.charAt(1) === "-" ? 2 : 1);
}
function Sn(t, e) {
	if (typeof t.source?.start?.offset == "number") return t.source.start.offset;
	if (typeof t.sourceIndex == "number") return t.type === "value-word" ? En(t, t.sourceIndex) : t.sourceIndex;
	if (t.source?.start) return Kr(t.source.start, e);
	throw Object.assign(/* @__PURE__ */ new Error("Can not locate node."), { node: t });
}
function Qr(t, e) {
	if (t.type === "css-comment" && t.inline) return qt(e, t.source.startOffset);
	if (typeof t.source?.end?.offset == "number") return t.source.end.offset;
	if (t.source) {
		if (t.source.end) {
			let s = Kr(t.source.end, e);
			return t.type === "value-word" ? En(t, s) : s;
		}
		if (ce(t.nodes)) return Qr(G(0, t.nodes, -1), e);
	}
	return null;
}
function Xr(t, e) {
	t.source && (t.source.startOffset = Sn(t, e), t.source.endOffset = Qr(t, e));
	for (let s in t) {
		let r = t[s];
		s === "source" || !r || typeof r != "object" || (r.type === "value-root" || r.type === "value-unknown" ? kn(r, sc(t), r.text || r.value) : Xr(r, e));
	}
}
function kn(t, e, s) {
	t.source && (t.source.startOffset = Sn(t, s) + e, t.source.endOffset = Qr(t, s) + e);
	for (let r in t) {
		let n = t[r];
		r === "source" || !n || typeof n != "object" || kn(n, e, s);
	}
}
function sc(t) {
	let e = t.source.startOffset;
	return typeof t.prop == "string" && (e += t.prop.length), t.type === "css-atrule" && typeof t.name == "string" && (e += 1 + t.name.length + t.raws.afterName.match(/^\s*:?\s*/u)[0].length), t.type !== "css-atrule" && typeof t.raws?.between == "string" && (e += t.raws.between.length), e;
}
function Tn(t) {
	let e = "initial", s = "initial", r, n = !1, i = [];
	for (let o = 0; o < t.length; o++) {
		let u = t[o];
		switch (e) {
			case "initial":
				if (u === "'") {
					e = "single-quotes";
					continue;
				}
				if (u === "\"") {
					e = "double-quotes";
					continue;
				}
				if ((u === "u" || u === "U") && t.slice(o, o + 4).toLowerCase() === "url(") {
					e = "url", o += 3;
					continue;
				}
				if (u === "*" && t[o - 1] === "/") {
					e = "comment-block";
					continue;
				}
				if (u === "/" && t[o - 1] === "/") {
					e = "comment-inline", r = o - 1;
					continue;
				}
				continue;
			case "single-quotes":
				if (u === "'" && t[o - 1] !== "\\" && (e = s, s = "initial"), u === `
` || u === "\r") return t;
				continue;
			case "double-quotes":
				if (u === "\"" && t[o - 1] !== "\\" && (e = s, s = "initial"), u === `
` || u === "\r") return t;
				continue;
			case "url":
				if (u === ")" && (e = "initial"), u === `
` || u === "\r") return t;
				if (u === "'") {
					e = "single-quotes", s = "url";
					continue;
				}
				if (u === "\"") {
					e = "double-quotes", s = "url";
					continue;
				}
				continue;
			case "comment-block":
				u === "/" && t[o - 1] === "*" && (e = "initial");
				continue;
			case "comment-inline":
				(u === "\"" || u === "'" || u === "*") && (n = !0), (u === `
` || u === "\r") && (n && i.push([r, o]), e = "initial", n = !1);
				continue;
		}
	}
	for (let [o, u] of i) t = t.slice(0, o) + E(0, t.slice(o, u), /["'*]/gu, " ") + t.slice(u);
	return t;
}
var P = (t) => t.source?.startOffset, R = (t) => t.source?.endOffset;
var nc = /\*\/$/, ic = /^\/\*\*?/, Nn = /^\s*(\/\*\*?(.|\r?\n)*?\*\/)/, oc = /(^|\s+)\/\/([^\n\r]*)/g, An = /^(\r?\n)+/, ac = /(?:^|\r?\n) *(@[^\n\r]*?) *\r?\n *(?![^\n\r@]*\/\/[^]*)([^\s@][^\n\r@]+?) *\r?\n/g, On = /(?:^|\r?\n) *@(\S+) *([^\n\r]*)/g, uc = /(\r?\n|^) *\* ?/g, Pn = [];
function Rn(t) {
	let e = t.match(Nn);
	return e ? e[0].trimStart() : "";
}
function In(t) {
	let s = t.match(Nn)?.[0];
	return s == null ? t : t.slice(s.length);
}
function qn(t) {
	t = E(0, t.replace(ic, "").replace(nc, ""), uc, "$1");
	let s = "";
	for (; s !== t;) s = t, t = E(0, t, ac, `
$1 $2
`);
	t = t.replace(An, "").trimEnd();
	let r = Object.create(null), n = E(0, t, On, "").replace(An, "").trimEnd(), i;
	for (; i = On.exec(t);) {
		let o = E(0, i[2], oc, "");
		if (typeof r[i[1]] == "string" || Array.isArray(r[i[1]])) {
			let u = r[i[1]];
			r[i[1]] = [
				...Pn,
				...Array.isArray(u) ? u : [u],
				o
			];
		} else r[i[1]] = o;
	}
	return {
		comments: n,
		pragmas: r
	};
}
function Ln({ comments: t = "", pragmas: e = {} }) {
	let o = Object.keys(e), u = o.flatMap((l) => Cn(l, e[l])).map((l) => ` * ${l}
`).join("");
	if (!t) {
		if (o.length === 0) return "";
		if (o.length === 1 && !Array.isArray(e[o[0]])) {
			let l = e[o[0]];
			return `/** ${Cn(o[0], l)[0]} */`;
		}
	}
	let a = t.split(`
`).map((l) => ` * ${l}`).join(`
`) + `
`;
	return `/**
` + (t ? a : "") + (t && o.length > 0 ? ` *
` : "") + u + " */";
}
function Cn(t, e) {
	return [...Pn, ...Array.isArray(e) ? e : [e]].map((s) => `@${t} ${s}`.trim());
}
var Dn = ["noformat", "noprettier"], Mn = ["format", "prettier"], Bn = "format";
function lc(t) {
	if (!t.startsWith("#!")) return "";
	let e = t.indexOf(`
`);
	return e === -1 ? t : t.slice(0, e);
}
var Un = lc;
function Jr(t) {
	let e = Un(t);
	e && (t = t.slice(e.length + 1));
	let { pragmas: r, comments: n } = qn(Rn(t));
	return {
		shebang: e,
		text: t,
		pragmas: r,
		comments: n
	};
}
function Fn(t) {
	let { pragmas: e } = Jr(t);
	return Mn.some((s) => Object.prototype.hasOwnProperty.call(e, s));
}
function $n(t) {
	let { pragmas: e } = Jr(t);
	return Dn.some((s) => Object.prototype.hasOwnProperty.call(e, s));
}
function Wn(t) {
	let { shebang: e, text: s, pragmas: r, comments: n } = Jr(t), i = In(s), o = Ln({
		pragmas: {
			[Bn]: "",
			...r
		},
		comments: n.trimStart()
	});
	return (e ? `${e}
` : "") + o + (i.startsWith(`
`) ? `
` : `

`) + i;
}
var Gn = (t) => Fn(ge(t).content), Yn = (t) => $n(ge(t).content), Vn = (t) => {
	let { frontMatter: e, content: s } = ge(t);
	return (e ? e.raw + `

` : "") + Wn(s);
};
var cc = new Set([
	"red",
	"green",
	"blue",
	"alpha",
	"a",
	"rgb",
	"hue",
	"h",
	"saturation",
	"s",
	"lightness",
	"l",
	"whiteness",
	"w",
	"blackness",
	"b",
	"tint",
	"shade",
	"blend",
	"blenda",
	"contrast",
	"hsl",
	"hsla",
	"hwb",
	"hwba"
]);
function zn(t) {
	return t.findAncestor((e) => e.type === "css-decl")?.prop?.toLowerCase();
}
var fc = new Set([
	"initial",
	"inherit",
	"unset",
	"revert"
]);
function jn(t) {
	return fc.has(t.toLowerCase());
}
function Hn(t, e) {
	return t.findAncestor((r) => r.type === "css-atrule")?.name?.toLowerCase().endsWith("keyframes") && ["from", "to"].includes(e.toLowerCase());
}
function Ie(t) {
	return t.includes("$") || t.includes("@") || t.includes("#") || t.startsWith("%") || t.startsWith("--") || t.startsWith(":--") || t.includes("(") && t.includes(")") ? t : t.toLowerCase();
}
function qe(t, e) {
	return t.findAncestor((r) => r.type === "value-func")?.value?.toLowerCase() === e;
}
function Kn(t) {
	return t.hasAncestor((e) => {
		if (e.type !== "css-rule") return !1;
		let s = e.raws?.selector;
		return s && (s.startsWith(":import") || s.startsWith(":export"));
	});
}
function we(t, e) {
	let s = Array.isArray(e) ? e : [e], r = t.findAncestor((n) => n.type === "css-atrule");
	return r && s.includes(r.name.toLowerCase());
}
function Qn(t) {
	let { node: e } = t;
	return e.groups[0]?.value === "url" && e.groups.length === 2 && t.findAncestor((s) => s.type === "css-atrule")?.name === "import";
}
function Xn(t) {
	return t.type === "value-func" && t.value.toLowerCase() === "url";
}
function Jn(t) {
	return t.type === "value-func" && t.value.toLowerCase() === "var";
}
function Zn(t) {
	let { selector: e } = t;
	return e ? typeof e == "string" && /^@.+:.*$/u.test(e) || e.value && /^@.+:.*$/u.test(e.value) : !1;
}
function ei(t) {
	return t.type === "value-word" && [
		"from",
		"through",
		"end"
	].includes(t.value);
}
function ti(t) {
	return t.type === "value-word" && [
		"and",
		"or",
		"not"
	].includes(t.value);
}
function ri(t) {
	return t.type === "value-word" && t.value === "in";
}
function Lt(t) {
	return t.type === "value-operator" && t.value === "*";
}
function ve(t) {
	return t?.type === "value-operator" && t.value === "/";
}
function J(t) {
	return t.type === "value-operator" && t.value === "+";
}
function xe(t) {
	return t.type === "value-operator" && t.value === "-";
}
function pc(t) {
	return t.type === "value-operator" && t.value === "%";
}
function Dt(t) {
	return Lt(t) || ve(t) || J(t) || xe(t) || pc(t);
}
function si(t) {
	return t.type === "value-word" && ["==", "!="].includes(t.value);
}
function ni(t) {
	return t.type === "value-word" && [
		"<",
		">",
		"<=",
		">="
	].includes(t.value);
}
function Je(t, e) {
	return e.parser === "scss" && t.type === "css-atrule" && [
		"if",
		"else",
		"for",
		"each",
		"while"
	].includes(t.name);
}
function es(t) {
	return t.raws?.params && /^\(\s*\)$/u.test(t.raws.params);
}
function Mt(t) {
	return t.name.startsWith("prettier-placeholder");
}
function ii(t) {
	return t.prop.startsWith("@prettier-placeholder");
}
function oi(t, e) {
	return t.value === "$$" && t.type === "value-func" && e?.type === "value-word" && !e.raws.before;
}
function ai(t) {
	return t.value?.type === "value-root" && t.value.group?.type === "value-value" && t.prop.toLowerCase() === "composes";
}
function ui(t) {
	return t.value?.group?.group?.type === "value-paren_group" && t.value.group.group.open !== null && t.value.group.group.close !== null;
}
function Z(t) {
	return t?.raws?.before === "";
}
function Bt(t) {
	return t.type === "value-comma_group" && t.groups?.[1]?.type === "value-colon";
}
function Zr(t) {
	return t.type === "value-paren_group" && t.groups?.[0] && Bt(t.groups[0]);
}
function ts(t, e) {
	if (e.parser !== "scss") return !1;
	let { node: s } = t;
	if (s.groups.length === 0) return !1;
	let r = t.grandparent;
	return !Zr(s) && !(r && Zr(r)) ? !1 : !!(t.findAncestor((i) => i.type === "css-decl")?.prop?.startsWith("$") || Zr(r) || r.type === "value-func");
}
function Ze(t) {
	return t.type === "value-comment" && t.inline;
}
function Ut(t) {
	return t.type === "value-word" && t.value === "#";
}
function rs(t) {
	return t.type === "value-word" && t.value === "{";
}
function Ft(t) {
	return t.type === "value-word" && t.value === "}";
}
function et(t) {
	return ["value-word", "value-atword"].includes(t.type);
}
function $t(t) {
	return t?.type === "value-colon";
}
function li(t, e) {
	if (!Bt(e)) return !1;
	let { groups: s } = e, r = s.indexOf(t);
	return r === -1 ? !1 : $t(s[r + 1]);
}
function ci(t) {
	return t.value && [
		"not",
		"and",
		"or"
	].includes(t.value.toLowerCase());
}
function fi(t) {
	return t.type !== "value-func" ? !1 : cc.has(t.value.toLowerCase());
}
function Le(t) {
	return /\/\//u.test(t.split(/[\n\r]/u).pop());
}
function tt(t) {
	return t?.type === "value-atword" && t.value.startsWith("prettier-placeholder-");
}
function pi(t, e) {
	if (t.open?.value !== "(" || t.close?.value !== ")" || t.groups.some((s) => s.type !== "value-comma_group")) return !1;
	if (e.type === "value-comma_group") {
		let s = e.groups.indexOf(t) - 1, r = e.groups[s];
		if (r?.type === "value-word" && r.value === "with") return !0;
	}
	return !1;
}
function rt(t) {
	return t.type === "value-paren_group" && t.open?.value === "(" && t.close?.value === ")";
}
function hc(t, e, s) {
	let { node: r } = t, n = t.parent, i = t.grandparent, o = zn(t), u = o && n.type === "value-value" && (o === "grid" || o.startsWith("grid-template")), a = t.findAncestor((p) => p.type === "css-atrule"), l = a && Je(a, e), f = r.groups.some((p) => Ze(p)), h = t.map(s, "groups"), c = [""], g = qe(t, "url"), b = !1, d = !1;
	for (let p = 0; p < r.groups.length; ++p) {
		let m = r.groups[p - 1], y = r.groups[p], v = r.groups[p + 1], O = r.groups[p + 2];
		if (Ze(y) && !v) {
			c.push([c.pop(), ln([" ", h[p]])]);
			continue;
		}
		if (c.push([c.pop(), h[p]]), g) {
			(v && J(v) || J(y)) && c.push([c.pop(), " "]);
			continue;
		}
		if (we(t, "forward") && y.type === "value-word" && y.value && m !== void 0 && m.type === "value-word" && m.value === "as" && v.type === "value-operator" && v.value === "*" || we(t, "utility") && y.type === "value-word" && v && v.type === "value-operator" && v.value === "*" || !v || y.type === "value-word" && tt(v) && R(y) === P(v)) continue;
		if (y.type === "value-string" && y.quoted) {
			let k = y.value.lastIndexOf("#{"), N = y.value.lastIndexOf("}");
			k !== -1 && N !== -1 ? b = k > N : k !== -1 ? b = !0 : N !== -1 && (b = !1);
		}
		if (b || $t(y) || $t(v) || y.type === "value-atword" && (y.value === "" || y.value.endsWith("[")) || v.type === "value-word" && v.value.startsWith("]") || y.value === "~" || e.parser === "less" && (v?.type === "value-word" && v.value === "[" || y.type === "value-word" && y.value === "[" && (v?.type === "value-atword" || v?.type === "value-word") || y.type === "value-word" && y.value === "][" && v?.type === "value-word") || y.type !== "value-string" && y.value && y.value.includes("\\") && v && v.type !== "value-comment" || m?.value && m.value.indexOf("\\") === m.value.length - 1 && y.type === "value-operator" && y.value === "/" || y.value === "\\" || oi(y, v) || Ut(y) || rs(y) || Ft(v) || rs(v) && Z(v) || Ft(y) && Z(v) || y.value === "--" && Ut(v)) continue;
		let q = Dt(y), H = Dt(v);
		if ((q && Ut(v) || H && Ft(y)) && Z(v) || !m && ve(y) || qe(t, "calc") && (J(y) || J(v) || xe(y) || xe(v)) && Z(v)) continue;
		let ne = (J(y) || xe(y)) && p === 0 && (v.type === "value-number" || v.isHex) && i && fi(i) && !Z(v);
		if (e.parser === "scss" && q && y.value === "-" && v.type === "value-func" && R(y) !== P(v)) {
			c.push([c.pop(), " "]);
			continue;
		}
		let W = O?.type === "value-func" || O && et(O) || y.type === "value-func" || et(y), A = v.type === "value-func" || et(v) || m?.type === "value-func" || m && et(m);
		if (!(!(Lt(v) || Lt(y)) && !qe(t, "calc") && !ne && (ve(v) && !W || ve(y) && !A || J(v) && !W || J(y) && !A || xe(v) || xe(y)) && (Z(v) || q && (!m || m && Dt(m)))) && !((e.parser === "scss" || e.parser === "less") && q && y.value === "-" && rt(v) && R(y) === P(v.open) && v.open.value === "(")) {
			if (Ze(y)) {
				if (n.type === "value-paren_group") {
					c.push(le(T), "");
					continue;
				}
				c.push(T, "");
				continue;
			}
			if (l && (si(v) || ni(v) || ti(v) || ri(y) || ei(y))) {
				c.push([c.pop(), " "]);
				continue;
			}
			if (a && a.name.toLowerCase() === "namespace") {
				c.push([c.pop(), " "]);
				continue;
			}
			if (u) {
				y.source && v.source && y.source.start.line !== v.source.start.line ? (c.push(T, ""), d = !0) : c.push([c.pop(), " "]);
				continue;
			}
			if (!(o && (o === "font" || o.startsWith("--")) && (ve(v) && Z(v) && hi(y) || ve(y) && Z(y) && hi(m)))) {
				if (H) {
					c.push([c.pop(), " "]);
					continue;
				}
				if (v?.value !== "..." && !(tt(y) && tt(v) && R(y) === P(v))) {
					if (tt(y) && rt(v) && R(y) === P(v.open)) {
						c.push(M, "");
						continue;
					}
					if (y.value === "with" && rt(v)) {
						c = [[Pe(c), " "]];
						continue;
					}
					if (!(y.value?.endsWith("#") && v.value === "{" && rt(v.group)) && !(Ze(v) && !O)) {
						if (!a && y.type === "value-comment" && !y.inline && r.groups.slice(0, p).every((k) => k.type === "value-comment")) {
							c.push(le(C), "");
							continue;
						}
						c.push(C, "");
					}
				}
			}
		}
	}
	return f && c.push([c.pop(), Ne]), d && c.unshift("", T), l ? D(L(c)) : Qn(t) ? D(Pe(c)) : D(L(Pe(c)));
}
function hi(t) {
	if (t?.type === "value-number") return !0;
	if (t?.type !== "value-func") return !1;
	let e = t.value.toLowerCase();
	return e === "var" || e === "calc" || e === "min" || e === "max" || e === "clamp" || e.startsWith("--");
}
var di = hc;
function dc(t) {
	return t.length === 1 ? t : t.toLowerCase().replace(/^([+-]?[\d.]+e)(?:\+|(-))?0*(?=\d)/u, "$1$2").replace(/^([+-]?[\d.]+)e[+-]?0+$/u, "$1").replace(/^([+-])?\./u, "$10.").replace(/(\.\d+?)0+(?=e|$)/u, "$1").replace(/\.(?=e|$)/u, "");
}
var mi = dc;
var Wt = new Map([
	["em", "em"],
	["rem", "rem"],
	["ex", "ex"],
	["rex", "rex"],
	["cap", "cap"],
	["rcap", "rcap"],
	["ch", "ch"],
	["rch", "rch"],
	["ic", "ic"],
	["ric", "ric"],
	["lh", "lh"],
	["rlh", "rlh"],
	["vw", "vw"],
	["svw", "svw"],
	["lvw", "lvw"],
	["dvw", "dvw"],
	["vh", "vh"],
	["svh", "svh"],
	["lvh", "lvh"],
	["dvh", "dvh"],
	["vi", "vi"],
	["svi", "svi"],
	["lvi", "lvi"],
	["dvi", "dvi"],
	["vb", "vb"],
	["svb", "svb"],
	["lvb", "lvb"],
	["dvb", "dvb"],
	["vmin", "vmin"],
	["svmin", "svmin"],
	["lvmin", "lvmin"],
	["dvmin", "dvmin"],
	["vmax", "vmax"],
	["svmax", "svmax"],
	["lvmax", "lvmax"],
	["dvmax", "dvmax"],
	["cm", "cm"],
	["mm", "mm"],
	["q", "Q"],
	["in", "in"],
	["pt", "pt"],
	["pc", "pc"],
	["px", "px"],
	["deg", "deg"],
	["grad", "grad"],
	["rad", "rad"],
	["turn", "turn"],
	["s", "s"],
	["ms", "ms"],
	["hz", "Hz"],
	["khz", "kHz"],
	["dpi", "dpi"],
	["dpcm", "dpcm"],
	["dppx", "dppx"],
	["x", "x"],
	["cqw", "cqw"],
	["cqh", "cqh"],
	["cqi", "cqi"],
	["cqb", "cqb"],
	["cqmin", "cqmin"],
	["cqmax", "cqmax"],
	["fr", "fr"]
]);
function ss(t) {
	let e = t.toLowerCase();
	return Wt.has(e) ? Wt.get(e) : t;
}
var yi = /(["'])(?:(?!\1)[^\\]|\\.)*\1/gsu, wc = new RegExp(yi.source + `|(${/[$@]?[_a-z\u0080-\uFFFF][\w\u0080-\uFFFF-]*/giu.source})?(${/(?:\d*\.\d+|\d+\.?)(?:e[+-]?\d+)?/giu.source})(${/[a-z]+/giu.source})?`, "giu");
function V(t, e) {
	return E(0, t, yi, (s) => Nt(s, e));
}
function gi(t, e) {
	let s = e.singleQuote ? "'" : "\"", r = "", n = t.match(/^(?<value>.+?)\s+(?<flag>[a-zA-Z])$/u);
	return n && ({value: t, flag: r} = n.groups), (t.includes("\"") || t.includes("'") ? t : s + t + s) + (r ? ` ${r}` : "");
}
function _e(t) {
	return E(0, t, wc, (e, s, r, n, i) => !r && n && (i ?? (i = ""), i = i.toLowerCase(), !i || i === "n" || Wt.has(i)) ? ns(n) + (i ? ss(i) : "") : e);
}
function ns(t) {
	return mi(t).replace(/\.0(?=$|e)/u, "");
}
function wi(t) {
	return t.trailingComma === "es5" || t.trailingComma === "all";
}
var vi = (t) => t === `
` || t === "\r" || t === "\u2028" || t === "\u2029";
function vc(t, e, s) {
	let r = !!s?.backwards;
	if (e === !1) return !1;
	let n = t.charAt(e);
	if (r) {
		if (t.charAt(e - 1) === "\r" && n === `
`) return e - 2;
		if (vi(n)) return e - 1;
	} else {
		if (n === "\r" && t.charAt(e + 1) === `
`) return e + 2;
		if (vi(n)) return e + 1;
	}
	return e;
}
var Gt = vc;
function xc(t, e, s = {}) {
	let r = It(t, s.backwards ? e - 1 : e, s);
	return r !== Gt(t, r, s);
}
var Yt = xc;
function _c(t, e) {
	if (e === !1) return !1;
	if (t.charAt(e) === "/" && t.charAt(e + 1) === "*") {
		for (let s = e + 2; s < t.length; ++s) if (t.charAt(s) === "*" && t.charAt(s + 1) === "/") return s + 2;
	}
	return e;
}
var xi = _c;
function bc(t, e) {
	return e === !1 ? !1 : t.charAt(e) === "/" && t.charAt(e + 1) === "/" ? qt(t, e) : e;
}
var _i = bc;
function Ec(t, e) {
	let s = null, r = e;
	for (; r !== s;) s = r, r = bn(t, r), r = xi(t, r), r = It(t, r);
	return r = _i(t, r), r = Gt(t, r), r !== !1 && Yt(t, r);
}
var Vt = Ec;
function Sc({ node: t, parent: e }, s) {
	return !!(t.source && s.originalText.slice(P(t), P(e.close)).trimEnd().endsWith(","));
}
function kc(t, e) {
	return Jn(t.grandparent) && Sc(t, e) ? "," : t.node.type !== "value-comment" && !(t.node.type === "value-comma_group" && t.node.groups.every((s) => s.type === "value-comment")) && wi(e) && t.callParent(() => ts(t, e)) ? Ct(",") : "";
}
function bi(t, e, s) {
	let { node: r, parent: n } = t, i = t.map(({ node: g }) => typeof g == "string" ? g : s(), "groups");
	if (n && Xn(n) && (r.groups.length === 1 || r.groups.length > 0 && r.groups[0].type === "value-comma_group" && r.groups[0].groups.length > 0 && r.groups[0].groups[0].type === "value-word" && r.groups[0].groups[0].value.startsWith("data:"))) return [
		r.open ? s("open") : "",
		Y(",", i),
		r.close ? s("close") : ""
	];
	if (!r.open) {
		let g = is(t);
		ye(i);
		let b = Ac(Y(",", i), 2), d = Y(g ? T : C, b);
		return L(g ? [T, d] : D([Tc(t) ? M : "", Pe(d)]));
	}
	let o = t.map(({ node: g, isLast: b, index: d }) => {
		let p = i[d];
		Bt(g) && g.type === "value-comma_group" && g.groups && g.groups[0].type !== "value-paren_group" && g.groups[2]?.type === "value-paren_group" && ue(p) === oe && ue(p.contents) === ie && ue(p.contents.contents) === ae && (p = D(le(p)));
		let m = [p, b ? kc(t, e) : ","];
		if (!b && g.type === "value-comma_group" && ce(g.groups)) {
			let y = G(0, g.groups, -1);
			!y.source && y.close && (y = y.close), y.source && Vt(e.originalText, R(y)) && m.push(T);
		}
		return m;
	}, "groups"), u = li(r, n), a = pi(r, n), l = ts(t, e), f = a || l && !u, h = a || u, c = D([
		r.open ? s("open") : "",
		L([M, Y(C, o)]),
		M,
		r.close ? s("close") : ""
	], { shouldBreak: f });
	return h ? le(c) : c;
}
function is(t) {
	return t.match((e) => e.type === "value-paren_group" && !e.open && e.groups.some((s) => s.type === "value-comma_group"), (e, s) => s === "group" && e.type === "value-value", (e, s) => s === "group" && e.type === "value-root", (e, s) => s === "value" && (e.type === "css-decl" && !e.prop.startsWith("--") || e.type === "css-atrule" && e.variable));
}
function Tc(t) {
	return t.match((e) => e.type === "value-paren_group" && !e.open, (e, s) => s === "group" && e.type === "value-value", (e, s) => s === "group" && e.type === "value-root", (e, s) => s === "value" && e.type === "css-decl");
}
function Ac(t, e) {
	let s = [];
	for (let r = 0; r < t.length; r += e) s.push(t.slice(r, r + e));
	return s;
}
function Oc(t, e, s) {
	let r = [];
	return t.each(() => {
		let { node: n, previous: i } = t;
		if (i?.type === "css-comment" && i.text.trim() === "prettier-ignore" ? r.push(e.originalText.slice(P(n), R(n))) : r.push(s()), t.isLast) return;
		let { next: o } = t;
		o.type === "css-comment" && !Yt(e.originalText, P(o), { backwards: !0 }) && !Re(n) || o.type === "css-atrule" && o.name === "else" && n.type !== "css-comment" ? r.push(" ") : (r.push(e.__isHTMLStyleAttribute ? C : T), Vt(e.originalText, R(n)) && !Re(n) && r.push(T));
	}, "nodes"), r;
}
var De = Oc;
function Cc(t, e, s) {
	let { node: r } = t;
	switch (r.type) {
		case "css-root": {
			let n = De(t, e, s), i = r.raws.after.trim();
			return i.startsWith(";") && (i = i.slice(1).trim()), [
				r.frontMatter ? [
					s("frontMatter"),
					T,
					r.nodes.length > 0 ? T : ""
				] : "",
				n,
				i ? ` ${i}` : "",
				r.nodes.length > 0 ? T : ""
			];
		}
		case "css-comment": {
			let n = r.inline || r.raws.inline, i = e.originalText.slice(P(r), R(r));
			return n ? i.trimEnd() : i;
		}
		case "css-rule": return [
			s("selector"),
			r.important ? " !important" : "",
			r.nodes ? [
				r.selector?.type === "selector-unknown" && Le(r.selector.value) ? C : r.selector ? " " : "",
				"{",
				r.nodes.length > 0 ? L([T, De(t, e, s)]) : "",
				T,
				"}",
				Zn(r) ? ";" : ""
			] : ";"
		];
		case "css-decl": {
			let n = t.parent, { between: i } = r.raws, o = i.trim(), u = o === ":", a = typeof r.value == "string" && /^ *$/u.test(r.value), l = typeof r.value == "string" ? r.value : s("value");
			return l = ai(r) ? on(l) : l, !u && Le(o) && !t.call(() => is(t), "value", "group", "group") && (l = L([T, le(l)])), [
				E(0, r.raws.before, /[\s;]/gu, ""),
				n.type === "css-atrule" && n.variable || Kn(t) ? r.prop : Ie(r.prop),
				o.startsWith("//") ? " " : "",
				o,
				r.extend || a ? "" : " ",
				e.parser === "less" && r.extend && r.selector ? [
					"extend(",
					s("selector"),
					")"
				] : "",
				l,
				r.raws.important ? r.raws.important.replace(/\s*!\s*important/iu, " !important") : r.important ? " !important" : "",
				r.raws.scssDefault ? r.raws.scssDefault.replace(/\s*!default/iu, " !default") : r.scssDefault ? " !default" : "",
				r.raws.scssGlobal ? r.raws.scssGlobal.replace(/\s*!global/iu, " !global") : r.scssGlobal ? " !global" : "",
				r.nodes ? [
					" {",
					L([M, De(t, e, s)]),
					M,
					"}"
				] : ii(r) && !n.raws.semicolon && e.originalText[R(r) - 1] !== ";" ? "" : e.__isHTMLStyleAttribute && t.isLast ? Ct(";") : ";"
			];
		}
		case "css-atrule": {
			let n = t.parent, i = Mt(r) && !n.raws.semicolon && e.originalText[R(r) - 1] !== ";";
			if (e.parser === "less") {
				if (r.mixin) return [
					s("selector"),
					r.important ? " !important" : "",
					i ? "" : ";"
				];
				if (r.function) return [
					r.name,
					typeof r.params == "string" ? r.params : s("params"),
					i ? "" : ";"
				];
				if (r.variable) return [
					"@",
					r.name,
					": ",
					r.value ? s("value") : "",
					r.raws.between.trim() ? r.raws.between.trim() + " " : "",
					r.nodes ? [
						"{",
						L([r.nodes.length > 0 ? M : "", De(t, e, s)]),
						M,
						"}"
					] : "",
					i ? "" : ";"
				];
			}
			let o = r.name === "import" && r.params?.type === "value-unknown" && r.params.value.endsWith(";");
			return [
				"@",
				es(r) || r.name.endsWith(":") || Mt(r) ? r.name : Ie(r.name),
				r.params ? [es(r) ? "" : Mt(r) ? r.raws.afterName === "" ? "" : r.name.endsWith(":") ? " " : /^\s*\n\s*\n/u.test(r.raws.afterName) ? [T, T] : /^\s*\n/u.test(r.raws.afterName) ? T : " " : " ", typeof r.params == "string" ? r.params : s("params")] : "",
				r.selector ? L([" ", s("selector")]) : "",
				r.value ? D([
					" ",
					s("value"),
					Je(r, e) ? ui(r) ? " " : C : ""
				]) : r.name === "else" ? " " : "",
				r.nodes ? [
					Je(r, e) ? "" : r.selector && !r.selector.nodes && typeof r.selector.value == "string" && Le(r.selector.value) || !r.selector && typeof r.params == "string" && Le(r.params) ? C : " ",
					"{",
					L([r.nodes.length > 0 ? M : "", De(t, e, s)]),
					M,
					"}"
				] : i || o ? "" : ";"
			];
		}
		case "media-query-list": {
			let n = [];
			return t.each(({ node: i }) => {
				i.type === "media-query" && i.value === "" || n.push(s());
			}, "nodes"), D(L(Y(C, n)));
		}
		case "media-query": return [Y(" ", t.map(s, "nodes")), t.isLast ? "" : ","];
		case "media-type": return _e(V(r.value, e));
		case "media-feature-expression": return r.nodes ? [
			"(",
			...t.map(s, "nodes"),
			")"
		] : r.value;
		case "media-feature": return Ie(V(E(0, r.value, / +/gu, " "), e));
		case "media-colon": return [r.value, " "];
		case "media-value": return _e(V(r.value, e));
		case "media-keyword": return V(r.value, e);
		case "media-url": return V(E(0, E(0, r.value, /^url\(\s+/giu, "url("), /\s+\)$/gu, ")"), e);
		case "media-unknown": return r.value;
		case "selector-root": return D([we(t, "custom-selector") ? [t.findAncestor((n) => n.type === "css-atrule").customSelector, C] : "", Y([",", we(t, [
			"extend",
			"custom-selector",
			"nest"
		]) ? C : T], t.map(s, "nodes"))]);
		case "selector-selector": return D((r.nodes.length > 2 ? L : (i) => i)(t.map(s, "nodes")));
		case "selector-comment": return r.value;
		case "selector-string": return V(r.value, e);
		case "selector-tag": return [r.namespace ? [r.namespace === !0 ? "" : r.namespace.trim(), "|"] : "", t.previous?.type === "selector-nesting" ? r.value : _e(Hn(t, r.value) ? r.value.toLowerCase() : r.value)];
		case "selector-id": return ["#", r.value];
		case "selector-class": return [".", _e(V(r.value, e))];
		case "selector-attribute": return [
			"[",
			r.namespace ? [r.namespace === !0 ? "" : r.namespace.trim(), "|"] : "",
			r.attribute.trim(),
			r.operator ?? "",
			r.value ? gi(V(r.value.trim(), e), e) : "",
			r.insensitive ? " i" : "",
			"]"
		];
		case "selector-combinator":
			if (r.value === "+" || r.value === ">" || r.value === "~" || r.value === ">>>") {
				let o = t.parent;
				return [
					o.type === "selector-selector" && o.nodes[0] === r ? "" : C,
					r.value,
					t.isLast ? "" : " "
				];
			}
			return [r.value.trim().startsWith("(") ? C : "", _e(V(r.value.trim(), e)) || C];
		case "selector-universal": return [r.namespace ? [r.namespace === !0 ? "" : r.namespace.trim(), "|"] : "", r.value];
		case "selector-pseudo": return [Ie(r.value), ce(r.nodes) ? D([
			"(",
			L([M, Y([",", C], t.map(s, "nodes"))]),
			M,
			")"
		]) : ""];
		case "selector-nesting": return r.value;
		case "selector-unknown": {
			if (t.findAncestor((u) => u.type === "css-rule")?.isSCSSNesterProperty) return _e(V(Ie(r.value), e));
			let i = t.parent;
			if (i.raws?.selector) {
				let u = P(i), a = u + i.raws.selector.length;
				return e.originalText.slice(u, a).trim();
			}
			let o = t.grandparent;
			if (i.type === "value-paren_group" && o?.type === "value-func" && o.value === "selector") {
				let u = R(i.open) + 1, a = P(i.close), l = e.originalText.slice(u, a).trim();
				return Le(l) ? [Ne, l] : l;
			}
			return r.value;
		}
		case "value-value":
		case "value-root": return s("group");
		case "value-comment": return e.originalText.slice(P(r), R(r));
		case "value-comma_group": return di(t, e, s);
		case "value-paren_group": return bi(t, e, s);
		case "value-func": return [
			r.value,
			we(t, "supports") && ci(r) ? " " : "",
			s("group")
		];
		case "value-paren": return r.value;
		case "value-number": return [ns(r.value), ss(r.unit)];
		case "value-operator": return r.value;
		case "value-word": return r.isColor && r.isHex || jn(r.value) ? r.value.toLowerCase() : r.value;
		case "value-colon": {
			let { previous: n } = t;
			return D([r.value, typeof n?.value == "string" && n.value.endsWith("\\") || qe(t, "url") ? "" : C]);
		}
		case "value-string": return Nt(r.raws.quote + r.value + r.raws.quote, e);
		case "value-atword": return ["@", r.value];
		case "value-unicode-range": return r.value;
		case "value-unknown": return r.value;
		default: throw new dn(r, "PostCSS");
	}
}
var Ei = {
	features: { experimental_frontMatterSupport: {
		massageAstNode: !0,
		embed: !0,
		print: !0
	} },
	print: Cc,
	embed: wn,
	insertPragma: Vn,
	massageAstNode: yn,
	getVisitorKeys: _n
};
var Si = [
	{
		name: "CSS",
		type: "markup",
		aceMode: "css",
		extensions: [".css", ".wxss"],
		tmScope: "source.css",
		codemirrorMode: "css",
		codemirrorMimeType: "text/css",
		parsers: ["css"],
		vscodeLanguageIds: ["css"],
		linguistLanguageId: 50
	},
	{
		name: "PostCSS",
		type: "markup",
		aceMode: "text",
		extensions: [".pcss", ".postcss"],
		tmScope: "source.postcss",
		group: "CSS",
		parsers: ["css"],
		vscodeLanguageIds: ["postcss"],
		linguistLanguageId: 262764437
	},
	{
		name: "Less",
		type: "markup",
		aceMode: "less",
		extensions: [".less"],
		tmScope: "source.css.less",
		aliases: ["less-css"],
		codemirrorMode: "css",
		codemirrorMimeType: "text/x-less",
		parsers: ["less"],
		vscodeLanguageIds: ["less"],
		linguistLanguageId: 198
	},
	{
		name: "SCSS",
		type: "markup",
		aceMode: "scss",
		extensions: [".scss"],
		tmScope: "source.css.scss",
		codemirrorMode: "css",
		codemirrorMimeType: "text/x-scss",
		parsers: ["scss"],
		vscodeLanguageIds: ["scss"],
		linguistLanguageId: 329
	}
];
var Ti = { singleQuote: {
	bracketSpacing: {
		category: "Common",
		type: "boolean",
		default: !0,
		description: "Print spaces between brackets.",
		oppositeDescription: "Do not print spaces between brackets."
	},
	objectWrap: {
		category: "Common",
		type: "choice",
		default: "preserve",
		description: "How to wrap object literals.",
		choices: [{
			value: "preserve",
			description: "Keep as multi-line, if there is a newline between the opening brace and first property."
		}, {
			value: "collapse",
			description: "Fit to a single line when possible."
		}]
	},
	singleQuote: {
		category: "Common",
		type: "boolean",
		default: !1,
		description: "Use single quotes instead of double quotes."
	},
	proseWrap: {
		category: "Common",
		type: "choice",
		default: "preserve",
		description: "How to wrap prose.",
		choices: [
			{
				value: "always",
				description: "Wrap prose if it exceeds the print width."
			},
			{
				value: "never",
				description: "Do not wrap prose."
			},
			{
				value: "preserve",
				description: "Wrap prose as-is."
			}
		]
	},
	bracketSameLine: {
		category: "Common",
		type: "boolean",
		default: !1,
		description: "Put > of opening tags on the last line instead of on a new line."
	},
	singleAttributePerLine: {
		category: "Common",
		type: "boolean",
		default: !1,
		description: "Enforce single attribute per line in HTML, Vue and JSX."
	}
}.singleQuote };
var en = {};
sn(en, {
	css: () => Vy,
	less: () => zy,
	scss: () => jy
});
var dl = Te(ht(), 1), ml = Te(qo(), 1), yl = Te(da(), 1);
function gp(t, e) {
	let s = /* @__PURE__ */ new SyntaxError(t + " (" + e.loc.start.line + ":" + e.loc.start.column + ")");
	return Object.assign(s, e);
}
var ma = gp;
function wp(t) {
	return t !== null && typeof t == "object";
}
var Se = wp;
var ba = Te(_a(), 1);
function te(t, e, s) {
	if (Se(t)) {
		delete t.parent;
		for (let r in t) te(t[r], e, s), r === "type" && typeof t[r] == "string" && !t[r].startsWith(e) && (!s || !s.test(t[r])) && (t[r] = e + t[r]);
	}
	return t;
}
function Bs(t) {
	if (Se(t)) {
		delete t.parent;
		for (let e in t) Bs(t[e]);
		!Array.isArray(t) && t.value && !t.type && (t.type = "unknown");
	}
	return t;
}
var Np = ba.default.default;
function Pp(t) {
	let e;
	try {
		e = Np(t);
	} catch {
		return {
			type: "selector-unknown",
			value: t
		};
	}
	return te(Bs(e), "media-");
}
var Ea = Pp;
var gu = Te(yu(), 1);
function Vm(t) {
	if (/\/[/*]/u.test(E(0, t, /"[^"]+"|'[^']+'/gu, ""))) return {
		type: "selector-unknown",
		value: t.trim()
	};
	let e;
	try {
		new gu.default((s) => {
			e = s;
		}).process(t);
	} catch {
		return {
			type: "selector-unknown",
			value: t
		};
	}
	return te(e, "selector-");
}
var se = Vm;
var cl = Te(nl(), 1);
var Iy = (t) => {
	for (; t.parent;) t = t.parent;
	return t;
}, Gr = Iy;
function qy(t) {
	return Gr(t).text.slice(t.group.open.sourceIndex + 1, t.group.close.sourceIndex).trim();
}
var il = qy;
function Ly(t) {
	if (ce(t)) {
		for (let e = t.length - 1; e > 0; e--) if (t[e].type === "word" && t[e].value === "{" && t[e - 1].type === "word" && t[e - 1].value.endsWith("#")) return !0;
	}
	return !1;
}
var ol = Ly;
function Dy(t) {
	return t.some((e) => e.type === "string" || e.type === "func" && !e.value.endsWith("\\"));
}
var al = Dy;
function My(t, e) {
	return !!(e.parser === "scss" && t?.type === "word" && t.value.startsWith("$"));
}
var ul = My;
var ll = (t) => t.type === "paren" && t.value === ")";
function By(t, e) {
	let { nodes: s } = t, r = {
		open: null,
		close: null,
		groups: [],
		type: "paren_group"
	}, n = [r], i = r, o = {
		groups: [],
		type: "comma_group"
	}, u = [o];
	for (let a = 0; a < s.length; ++a) {
		let l = s[a];
		if (e.parser === "scss" && l.type === "number" && l.unit === ".." && l.value.endsWith(".") && (l.value = l.value.slice(0, -1), l.unit = "..."), l.type === "func" && l.value === "selector" && (l.group.groups = [se(Gr(t).text.slice(l.group.open.sourceIndex + 1, l.group.close.sourceIndex))]), l.type === "func" && l.value === "url") {
			let f = l.group?.groups ?? [], h = [];
			for (let c = 0; c < f.length; c++) {
				let g = f[c];
				g.type === "comma_group" ? h = [...h, ...g.groups] : h.push(g);
			}
			(ol(h) || !al(h) && !ul(h[0], e)) && (l.group.groups = [il(l)]);
		}
		if (l.type === "paren" && l.value === "(") r = {
			open: l,
			close: null,
			groups: [],
			type: "paren_group"
		}, n.push(r), o = {
			groups: [],
			type: "comma_group"
		}, u.push(o);
		else if (ll(l)) {
			if (o.groups.length > 0 && r.groups.push(o), r.close = l, u.length === 1) throw new Error("Unbalanced parenthesis");
			u.pop(), o = G(0, u, -1), o.groups.push(r), n.pop(), r = G(0, n, -1);
		} else if (l.type === "comma") {
			if (a === s.length - 3 && s[a + 1].type === "comment" && ll(s[a + 2])) continue;
			r.groups.push(o), o = {
				groups: [],
				type: "comma_group"
			}, u[u.length - 1] = o;
		} else o.groups.push(l);
	}
	return o.groups.length > 0 && r.groups.push(o), i;
}
function Yr(t) {
	return t.type === "paren_group" && !t.open && !t.close && t.groups.length === 1 || t.type === "comma_group" && t.groups.length === 1 ? Yr(t.groups[0]) : t.type === "paren_group" || t.type === "comma_group" ? {
		...t,
		groups: t.groups.map(Yr)
	} : t;
}
function fl(t, e) {
	if (Se(t)) for (let s in t) s !== "parent" && (fl(t[s], e), s === "nodes" && (t.group = Yr(By(t, e)), delete t[s]));
	return t;
}
function Uy(t, e) {
	if (e.parser === "less" && t.startsWith("~`")) return {
		type: "value-unknown",
		value: t
	};
	let s = null;
	try {
		s = new cl.default(t, { loose: !0 }).parse();
	} catch {
		return {
			type: "value-unknown",
			value: t
		};
	}
	s.text = t;
	return te(fl(s, e), "value-", /^selector-/u);
}
var de = Uy;
var Fy = new Set([
	"import",
	"use",
	"forward"
]);
function $y(t) {
	return Fy.has(t);
}
var pl = $y;
function Wy(t, e) {
	return e.parser !== "scss" || !t.selector ? !1 : t.selector.replace(/\/\*.*?\*\//u, "").replace(/\/\/.*\n/u, "").trim().endsWith(":");
}
var hl = Wy;
var Gy = /(\s*)(!default).*$/u, Yy = /(\s*)(!global).*$/u;
function gl(t, e) {
	if (Se(t)) {
		delete t.parent;
		for (let i in t) gl(t[i], e);
		if (!t.type) return t;
		if (t.raws ?? (t.raws = {}), t.type === "css-decl" && typeof t.prop == "string" && t.prop.startsWith("--") && typeof t.value == "string" && t.value.startsWith("{")) {
			let i;
			if (t.value.trimEnd().endsWith("}")) {
				let o = e.originalText.slice(0, t.source.start.offset), u = "a".repeat(t.prop.length) + e.originalText.slice(t.source.start.offset + t.prop.length, t.source.end.offset), a = E(0, o, /[^\n]/gu, " ") + u, l;
				e.parser === "scss" ? l = xl : e.parser === "less" ? l = vl : l = wl;
				let f;
				try {
					f = l(a, { ...e });
				} catch {}
				f?.nodes?.length === 1 && f.nodes[0].type === "css-rule" && (i = f.nodes[0].nodes);
			}
			return i ? t.value = {
				type: "css-rule",
				nodes: i
			} : t.value = {
				type: "value-unknown",
				value: t.raws.value.raw
			}, t;
		}
		let s = "";
		typeof t.selector == "string" && (s = t.raws.selector ? t.raws.selector.scss ?? t.raws.selector.raw : t.selector, t.raws.between && t.raws.between.trim().length > 0 && (s += t.raws.between), t.raws.selector = s);
		let r = "";
		typeof t.value == "string" && (r = t.raws.value ? t.raws.value.scss ?? t.raws.value.raw : t.value, t.raws.value = r.trim());
		let n = "";
		if (typeof t.params == "string" && (n = t.raws.params ? t.raws.params.scss ?? t.raws.params.raw : t.params, t.raws.afterName && t.raws.afterName.trim().length > 0 && (n = t.raws.afterName + n), t.raws.between && t.raws.between.trim().length > 0 && (n = n + t.raws.between), n = n.trim(), t.raws.params = n), s.trim().length > 0) return s.startsWith("@") && s.endsWith(":") ? t : t.mixin ? (t.selector = de(s, e), t) : (hl(t, e) && (t.isSCSSNesterProperty = !0), t.selector = se(s), t);
		if (r.trim().length > 0) {
			let i = r.match(Gy);
			i && (r = r.slice(0, i.index), t.scssDefault = !0, i[0].trim() !== "!default" && (t.raws.scssDefault = i[0]));
			let o = r.match(Yy);
			if (o && (r = r.slice(0, o.index), t.scssGlobal = !0, o[0].trim() !== "!global" && (t.raws.scssGlobal = o[0])), r.startsWith("progid:")) return {
				type: "value-unknown",
				value: r
			};
			t.value = de(r, e);
		}
		if (e.parser === "less" && t.type === "css-decl" && r.startsWith("extend(") && (t.extend || (t.extend = t.raws.between === ":"), t.extend && !t.selector && (delete t.value, t.selector = se(r.slice(7, -1)))), t.type === "css-atrule") {
			if (e.parser === "less") {
				if (t.mixin) return t.selector = se(t.raws.identifier + t.name + t.raws.afterName + t.raws.params), delete t.params, t;
				if (t.function) return t;
			}
			if (e.parser === "css" && t.name === "custom-selector") {
				let i = t.params.match(/:--\S+\s+/u)[0].trim();
				return t.customSelector = i, t.selector = se(t.params.slice(i.length).trim()), delete t.params, t;
			}
			if (e.parser === "less") {
				if (t.name.includes(":")) {
					t.variable = !0;
					let i = t.name.split(":");
					t.name = i[0];
					let o = i.slice(1).join(":");
					t.params && (o += t.params), t.value = de(o, e);
				}
				if (![
					"page",
					"nest",
					"keyframes"
				].includes(t.name) && t.params?.[0] === ":") {
					t.variable = !0;
					let i = t.params.slice(1);
					i && (t.value = de(i, e)), t.raws.afterName += ":";
				}
				if (t.variable) return delete t.params, t.value || delete t.value, t;
			}
		}
		if (t.type === "css-atrule" && n.length > 0) {
			let { name: i } = t, o = t.name.toLowerCase();
			return i === "warn" || i === "error" ? (t.params = {
				type: "media-unknown",
				value: n
			}, t) : i === "extend" || i === "nest" ? (t.selector = se(n), delete t.params, t) : i === "at-root" ? (/^\(\s*(?:without|with)\s*:.+\)$/su.test(n) ? t.params = de(n, e) : (t.selector = se(n), delete t.params), t) : pl(o) ? (t.import = !0, delete t.filename, t.params = de(n, e), t) : [
				"namespace",
				"supports",
				"if",
				"else",
				"for",
				"each",
				"while",
				"debug",
				"mixin",
				"include",
				"function",
				"return",
				"define-mixin",
				"add-mixin"
			].includes(i) ? (n = n.replace(/(\$\S+?)(\s+)?\.{3}/u, "$1...$2"), n = n.replace(/^(?!if)([^"'\s(]+)(\s+)\(/u, "$1($2"), t.value = de(n, e), delete t.params, t) : ["media", "custom-media"].includes(o) ? n.includes("#{") ? {
				type: "media-unknown",
				value: n
			} : (t.params = Ea(n), t) : (t.params = n, t);
		}
	}
	return t;
}
function Js(t, e, s) {
	let { frontMatter: r, content: n } = ge(e), i;
	try {
		i = t(n, { map: !1 });
	} catch (o) {
		let { name: u, reason: a, line: l, column: f } = o;
		throw typeof l != "number" ? o : ma(`${u}: ${a}`, {
			loc: { start: {
				line: l,
				column: f
			} },
			cause: o
		});
	}
	return s.originalText = e, i = gl(te(i, "css-"), s), Xr(i, e), r && (i.frontMatter = {
		...r,
		type: "front-matter",
		source: {
			startOffset: r.start.index,
			endOffset: r.end.index
		}
	}), i;
}
function wl(t, e = {}) {
	return Js(dl.default.default, t, e);
}
function vl(t, e = {}) {
	return Js((s) => ml.default.parse(Tn(s)), t, e);
}
function xl(t, e = {}) {
	return Js(yl.default, t, e);
}
var Zs = {
	astFormat: "postcss",
	hasPragma: Gn,
	hasIgnorePragma: Yn,
	locStart: P,
	locEnd: R
}, Vy = {
	...Zs,
	parse: wl
}, zy = {
	...Zs,
	parse: vl
}, jy = {
	...Zs,
	parse: xl
};
var Hy = { postcss: Ei };
//#endregion
export { _l as default, Si as languages, Ti as options, en as parsers, Hy as printers, postcss_exports as t };
