import * as ae from "vue";
import U from "vue";
import * as Ne from "@vue/composition-api";
import { t as me } from "@opentiny/vue-locale";
function ge(t, e) {
  var r = Object.keys(t);
  if (Object.getOwnPropertySymbols) {
    var n = Object.getOwnPropertySymbols(t);
    e && (n = n.filter(function(o) {
      return Object.getOwnPropertyDescriptor(t, o).enumerable;
    })), r.push.apply(r, n);
  }
  return r;
}
function _(t) {
  for (var e = 1; e < arguments.length; e++) {
    var r = arguments[e] != null ? arguments[e] : {};
    e % 2 ? ge(Object(r), !0).forEach(function(n) {
      Q(t, n, r[n]);
    }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(t, Object.getOwnPropertyDescriptors(r)) : ge(Object(r)).forEach(function(n) {
      Object.defineProperty(t, n, Object.getOwnPropertyDescriptor(r, n));
    });
  }
  return t;
}
function _e(t, e) {
  if (typeof t != "object" || !t)
    return t;
  var r = t[Symbol.toPrimitive];
  if (r !== void 0) {
    var n = r.call(t, e || "default");
    if (typeof n != "object")
      return n;
    throw new TypeError("@@toPrimitive must return a primitive value.");
  }
  return (e === "string" ? String : Number)(t);
}
function Fe(t) {
  var e = _e(t, "string");
  return typeof e == "symbol" ? e : String(e);
}
function z(t) {
  "@babel/helpers - typeof";
  return z = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(e) {
    return typeof e;
  } : function(e) {
    return e && typeof Symbol == "function" && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e;
  }, z(t);
}
function Q(t, e, r) {
  return e = Fe(e), e in t ? Object.defineProperty(t, e, {
    value: r,
    enumerable: !0,
    configurable: !0,
    writable: !0
  }) : t[e] = r, t;
}
function Be(t) {
  return De(t) || Ue(t) || Le(t) || We();
}
function De(t) {
  if (Array.isArray(t))
    return se(t);
}
function Ue(t) {
  if (typeof Symbol < "u" && t[Symbol.iterator] != null || t["@@iterator"] != null)
    return Array.from(t);
}
function Le(t, e) {
  if (t) {
    if (typeof t == "string")
      return se(t, e);
    var r = Object.prototype.toString.call(t).slice(8, -1);
    if (r === "Object" && t.constructor && (r = t.constructor.name), r === "Map" || r === "Set")
      return Array.from(t);
    if (r === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))
      return se(t, e);
  }
}
function se(t, e) {
  (e == null || e > t.length) && (e = t.length);
  for (var r = 0, n = new Array(e); r < e; r++)
    n[r] = t[r];
  return n;
}
function We() {
  throw new TypeError(`Invalid attempt to spread non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
}
var we = function() {
  var e = {}, r = function(i, a) {
    var s = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : !1;
    if (i && typeof i == "string" && typeof a == "function") {
      var l = e[i] || [];
      e[i] = l, l.push(a), a.once = s;
    }
  }, n = {
    emit: function(i) {
      var a = arguments, s = e[i];
      s && (s.forEach(function(l) {
        return l.apply(null, [].slice.call(a, 1));
      }), e[i] = s.filter(function(l) {
        return !l.once;
      }));
    },
    on: r,
    once: function(i, a) {
      r(i, a, !0);
    },
    off: function(i, a) {
      if (i && typeof i == "string") {
        var s = e[i];
        typeof a == "function" ? e[i] = s.filter(function(l) {
          return l !== a;
        }) : delete e[i];
      } else
        e = {};
    }
  };
  return n;
}, Ke = function(e) {
  var r = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, n = {};
  for (var o in e)
    o.indexOf("_") !== 0 && (n[o] = e[o]);
  for (var i in r)
    n[i] = r[i];
  return n;
}, He = function(e, r) {
  if (!(!e || !r)) {
    var n = [];
    typeof e == "string" ? n.push(e) : Array.isArray(e) && (n = e);
    var o = [];
    typeof r == "string" ? o.push(r) : Array.isArray(r) && (o = r);
    var i = [];
    return o.forEach(function(a) {
      return n.forEach(function(s) {
        return i.push("".concat(a, ":").concat(s, "-").concat(a));
      });
    }), n.concat(i).join(" ");
  }
}, qe = function() {
  var e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}, r = arguments.length > 1 ? arguments[1] : void 0;
  if (z(r) === "object") {
    var n = Array.isArray(r) ? r : Object.keys(r).filter(function(i) {
      return r[i];
    }), o = "";
    return n.forEach(function(i) {
      e[i] && (o += "".concat(e[i], " "));
    }), o;
  } else
    return e[r] || "";
}, Ye = 0, Qe = function(e) {
  return function(r) {
    for (var n = e.parent ? Array.from(e.parent.childNodes) : [], o = 0; o < n.length; o++)
      if (n[o].textContent === r)
        return !0;
  };
}, Ze = function(e) {
  var r = e.hasComment, n = e.startComment, o = e.state, i = e.endComment;
  return function(a) {
    var s = document.createDocumentFragment();
    if (a)
      !r(n) && s.appendChild(document.createComment(n)), o.nodes.forEach(function(v) {
        return s.appendChild(v);
      }), !r(i) && s.appendChild(document.createComment(i));
    else {
      var l = o.parent ? Array.from(o.parent.childNodes) : [], u, d;
      u = d = 0;
      for (var c = 0; c < l.length; c++) {
        var f = l[c];
        if (f.nodeType === 8 && (f.textContent === n && (u = c), f.textContent === i)) {
          d = c;
          break;
        }
      }
      d > u && l.slice(u + 1, d).forEach(function(v) {
        return s.appendChild(v);
      });
    }
    return s;
  };
}, Je = function(e) {
  var r = e.instance, n = e.getFragment, o = e.state, i = e.startComment, a = e.endComment;
  return function() {
    r.$el.appendChild(n());
    var s = [], l = o.parent ? Array.from(o.parent.childNodes) : [];
    l.forEach(function(c, f) {
      c.nodeType === 8 && (c.textContent === i || c.textContent === a) && s.push(f);
    });
    var u = Math.min.apply(Math, s), d = Math.max.apply(Math, s);
    l.slice(u, d + 1).reverse().forEach(function(c) {
      return o.parent && o.parent.removeChild(c);
    }), o.parent = null;
  };
}, Xe = function(e) {
  var r = e.state, n = e.props, o = e.disable, i = e.getFragment;
  return function() {
    if (r.waiting = !1, r.parent = document.querySelector(n.to), !r.parent) {
      o(), r.waiting = !0;
      return;
    }
    n.where === "before" ? r.parent.prepend(i(!0)) : r.parent.appendChild(i(!0));
  };
}, er = function(e) {
  return function() {
    e.observer && (e.observer.disconnect(), e.observer = null);
  };
}, rr = function(e) {
  var r = e.state, n = e.disable, o = e.props, i = e.move;
  return function(a) {
    for (var s = !1, l = 0; l < a.length; l++) {
      var u = a[l], d = Array.from(u.addedNodes).filter(function(c) {
        return !r.nodes.includes(c);
      });
      Array.from(u.removedNodes).includes(r.parent) ? (n(), r.waiting = !o.disabled) : r.waiting && d.length > 0 && (s = !0);
    }
    s && i();
  };
}, tr = function(e) {
  var r = e.state, n = e.onMutations;
  return function() {
    r.observer || (r.observer = new MutationObserver(function(o) {
      return n(o);
    }), r.observer.observe(document.body, {
      attributes: !1,
      characterData: !1,
      childList: !0,
      subtree: !0
    }));
  };
}, nr = function(e) {
  var r = e.state, n = e.instance, o = e.props, i = e.bootObserver, a = e.maybeMove;
  return function() {
    r.nodes = Array.from(n.$el.childNodes), !o.disabled && i(), a();
  };
}, or = function(e) {
  var r = e.disable, n = e.teardownObserver, o = e.bootObserver, i = e.move;
  return function(a) {
    if (a) {
      r(), n();
      return;
    }
    o(), i();
  };
};
const ir = function(t) {
  var e = t.reactive, r = t.watch, n = t.getCurrentInstance, o = t.onUpdated, i = t.onMounted, a = t.onBeforeUnmount, s = t.h, l = t.defineComponent;
  return l({
    name: "Vue2Teleport",
    props: {
      to: {
        type: String,
        required: !0
      },
      where: {
        type: String,
        default: "after"
      },
      disabled: Boolean
    },
    setup: function(d) {
      var c, f = e({
        nodes: [],
        waiting: !1,
        observer: null,
        parent: null,
        id: ++Ye
      }), v = (c = n()) === null || c === void 0 ? void 0 : c.proxy, h = "[".concat(f.id, "]vue2-teleporter-start"), b = "[".concat(f.id, "]vue2-teleporter-end"), m = Qe(f), w = Ze({
        hasComment: m,
        startComment: h,
        state: f,
        endComment: b
      }), p = Je({
        instance: v,
        getFragment: w,
        state: f,
        startComment: h,
        endComment: b
      }), $ = Xe({
        state: f,
        props: d,
        disable: p,
        getFragment: w
      }), C = function() {
        return !d.disabled && $();
      }, A = er(f), M = rr({
        state: f,
        disable: p,
        props: d,
        move: $
      }), S = tr({
        state: f,
        onMutations: M
      }), T = nr({
        state: f,
        instance: v,
        props: d,
        bootObserver: S,
        maybeMove: C
      }), E = or({
        disable: p,
        teardownObserver: A,
        bootObserver: S,
        move: $
      });
      return r(function() {
        return d.to;
      }, C), r(function() {
        return d.where;
      }, C), r(function() {
        return d.disabled;
      }, E), o(T), i(T), a(function() {
        p(), A();
      }), function() {
        return s("div", {
          class: "vue2-teleporter",
          style: {
            "visibility:hidden;display:none;": !d.disabled
          }
        }, (typeof (v == null ? void 0 : v.$slots.default) == "function" ? v.$slots.default() : v.$slots.default) || null);
      };
    }
  });
};
var oe, Ce = !!(!((oe = U.version) === null || oe === void 0) && oe.includes("2.7")), k = Ce ? ae : Ne, xt = ir(k);
!k.default.__composition_api_installed__ && !Ce && U.use(k.default);
var $e = function(e) {
  var r = e.loader, n = e.loadingComponent, o = e.errorComponent, i = e.delay, a = e.timeout;
  return function() {
    return {
      component: r(),
      loading: n,
      error: o,
      delay: i,
      timeout: a
    };
  };
}, ar = function(e) {
  return e;
}, Ae = function(e) {
  var r = e.view, n = r === void 0 ? null : r, o = e.component, i = o === void 0 ? null : o, a = e.props, s = e.context, l = s.attrs, u = s.listeners, d = s.slots, c = e.extend, f = c === void 0 ? {} : c;
  return function() {
    return k.h(n && n.value || i, Object.assign(Q(Q(Q({
      props: a,
      attrs: l
    }, f.isSvg ? "nativeOn" : "on", u), "ref", "modeTemplate"), "scopedSlots", _({}, d)), f));
  };
}, de = function() {
  var e;
  return (e = k.getCurrentInstance()) === null || e === void 0 ? void 0 : e.proxy.$root;
}, sr = function() {
  var e, r, n, o, i = k.getCurrentInstance(), a = i == null || (e = i.vnode) === null || e === void 0 || (r = e.componentOptions) === null || r === void 0 || (n = r.Ctor) === null || n === void 0 || (o = n.extendOptions) === null || o === void 0 ? void 0 : o.name;
  if (!a) {
    var s, l, u, d, c;
    a = i == null || (s = i.parent) === null || s === void 0 || (l = s.vnode) === null || l === void 0 || (u = l.componentOptions) === null || u === void 0 || (d = u.Ctor) === null || d === void 0 || (c = d.extendOptions) === null || c === void 0 ? void 0 : c.name;
  }
  return a || "";
}, lr = function() {
  return U;
}, ur = function() {
  return U.prototype;
}, Oe = function() {
  var e, r = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : (e = k.getCurrentInstance()) === null || e === void 0 ? void 0 : e.proxy;
  return {
    route: r == null ? void 0 : r.$route,
    router: r == null ? void 0 : r.$router
  };
}, cr = function(e) {
  var r = function(o, i, a, s) {
    o.$children.forEach(function(l) {
      var u = l.$options.componentName;
      u === i ? l.$emit(a, s) : r(l, i, a, s);
    });
  };
  return {
    dispatch: function(o, i, a) {
      for (var s, l = e.$parent || e.$root, u = l.$options.componentName; l && (!u || u !== o); )
        l = l.$parent, l && (u = l.$options.componentName);
      l && (s = l).$emit.apply(s, Be([i].concat(a)));
    },
    broadcast: function(o, i, a) {
      r(e, o, i, a);
    }
  };
}, dr = function(e) {
  return function(r) {
    var n = e.$parent, o = 0, i = function(s) {
      return {
        level: o,
        vm: Z({}, s),
        el: s.$el,
        options: s.$options
      };
    };
    if (typeof r != "function")
      return n ? i(n) : {};
    for (o++; n && !r(i(n)); )
      n = n.$parent, o++;
  };
}, fr = function(e) {
  return function(r) {
    if (typeof r != "function")
      return Me(e.$children);
    var n = 1, o = function i(a) {
      var s = n++;
      a.some(function(l) {
        return r({
          level: s,
          vm: Z({}, l),
          el: l.$el,
          options: l.$options,
          isLevel1: s === 1
        });
      }) || a.forEach(function(l) {
        return i(l.$children);
      });
    };
    o(e.$children);
  };
}, Me = function(e) {
  var r = [];
  return r.refs = {}, e.forEach(function(n) {
    var o = Z({}, n);
    r.push(o), n.$vnode.data.ref && (r.refs[n.$vnode.data.ref] = o);
  }), r;
}, Se = function(e, r, n) {
  var o = function(s) {
    if (typeof n == "function" && n(s))
      return 1;
    Object.defineProperty(e, s, {
      configurable: !0,
      enumerable: !0,
      get: function() {
        return r[s];
      },
      set: function(u) {
        return r[s] = u;
      }
    });
  };
  for (var i in r)
    o(i);
  return e;
}, ke = function(e) {
  return e.indexOf("$") === 0 || e.indexOf("_") === 0 || e === "constructor";
}, Z = function t(e, r) {
  var n = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : void 0;
  return n || Se(e, r, ke), Object.defineProperties(e, {
    $attrs: {
      get: function() {
        return r.$attrs;
      }
    },
    $children: {
      get: function() {
        return Me(r.$children);
      }
    },
    $constants: {
      get: function() {
        return r._constants;
      }
    },
    $emit: {
      get: function() {
        return r.$emit.bind(r);
      }
    },
    $el: {
      get: function() {
        return r.$el;
      }
    },
    $listeners: {
      get: function() {
        return r.$listeners;
      }
    },
    $mode: {
      get: function() {
        return r._tiny_mode;
      }
    },
    $nextTick: {
      get: function() {
        return k.nextTick;
      }
    },
    $off: {
      get: function() {
        return r.$off.bind(r);
      }
    },
    $on: {
      get: function() {
        return r.$on.bind(r);
      }
    },
    $once: {
      get: function() {
        return r.$once.bind(r);
      }
    },
    $options: {
      get: function() {
        return {
          componentName: r.$options.componentName
        };
      }
    },
    $parent: {
      get: function() {
        return r.$parent && t({}, r.$parent);
      }
    },
    $refs: {
      get: function() {
        return r.$refs;
      }
    },
    $renderless: {
      get: function() {
        return r.tiny_renderless;
      }
    },
    $scopedSlots: {
      get: function() {
        return r.$scopedSlots;
      }
    },
    $set: {
      get: function() {
        return r.$set;
      }
    },
    $slots: {
      get: function() {
        return r.$scopedSlots;
      }
    },
    $template: {
      get: function() {
        return r.tiny_template;
      }
    }
  }), e;
}, pr = function(e, r) {
  Object.keys(e.$refs).forEach(function(n) {
    r[n] = e.$refs[n];
  });
}, vr = function(e, r) {
  var n, o = (n = k.getCurrentInstance()) === null || n === void 0 ? void 0 : n.proxy, i = o == null ? void 0 : o.$root, a = Oe(o), s = a.route, l = a.router, u = i == null ? void 0 : i.$i18n, d = cr(o), c = d.dispatch, f = d.broadcast, v = dr(o), h = fr(o), b = Z({}, o, e), m = e.emit, w = {}, p = o.$parent ? Z({}, o.$parent) : null, $ = function(S) {
    var T = S.name, E = S.value;
    o.$parent[T] = E, p[T] = E;
  }, C = function(S) {
    Object.defineProperties(b, S), Object.defineProperties(o, S);
  }, A = function(S) {
    p && Object.defineProperties(p, S);
  };
  return k.onBeforeMount(function() {
    return Se(b, o, ke);
  }), ae && k.onMounted(function() {
    return pr(o, w);
  }), {
    framework: "vue2",
    vm: b,
    emit: m,
    emitter: we,
    route: s,
    router: l,
    dispatch: c,
    broadcast: f,
    parentHandler: v,
    childrenHandler: h,
    // 因为vue2.6版本context.refs是有值的，但是vue2.7版本是undefined所以这里需要做个兼容
    refs: ae ? w : e.refs,
    i18n: u,
    slots: e.slots,
    scopedSlots: e.slots,
    attrs: e.attrs,
    parent: p,
    nextTick: k.nextTick,
    constants: o == null ? void 0 : o._constants,
    mode: r,
    isPCMode: r === "pc",
    isMobileMode: r === "mobile",
    service: o == null ? void 0 : o.$service,
    getService: function() {
      return o == null ? void 0 : o.$getService(b);
    },
    setParentAttribute: $,
    defineInstanceProperties: C,
    defineParentInstanceProperties: A
  };
}, ie = function(e, r, n) {
  if (typeof e[r] < "u") {
    var o = e[r];
    e[n] = function(i, a, s) {
      a.instance = s.context, o(i, a, s);
    }, delete e[r];
  }
}, mr = function(e) {
  for (var r in e) {
    var n = e[r];
    ie(n, "beforeMount", "bind"), ie(n, "updated", "update"), ie(n, "unmounted", "unbind");
  }
  return e;
}, gr = function(e) {
  var r = e.props, n = e.data, o = e.name, i = e.attr, a = i === void 0 ? o : i;
  Object.defineProperty(r, a, {
    get: function() {
      return n[o];
    },
    set: function(l) {
      return n[o] = l;
    }
  });
}, br = function(e) {
  var r = {}, n = e.componentOptions && e.componentOptions.propsData || {};
  for (var o in n)
    gr({
      props: r,
      data: n,
      name: o
    });
  return e.props = r, e.type = {
    name: e.componentOptions && e.componentOptions.tag
  }, e;
}, hr = function(e) {
  return !e || !e.tag;
}, yr = k.h, xr = function(e) {
  return function(r) {
    var n = r.component, o = r.propsData, i = r.el, a = Object.assign(n, {
      provide: Q({}, e.configKey, e.configInstance)
    });
    return new (U.extend(a))({
      propsData: o,
      el: i
    }).$mount();
  };
}, wr = k.defineComponent;
const O = k;
var Ie = !0, wt = !1, Cr = function(e) {
  return ["isStatic", "isRootInsert", "isComment", "isCloned", "isOnce"].every(function(r) {
    return typeof e[r] < "u";
  });
}, Ct = U.component("KeepAlive"), Pe = function(e) {
  var r = [];
  return Object.keys(e).forEach(function(n) {
    return e[n] && r.push(n);
  }), r.join(" ");
}, $r = function(e) {
  var r = [];
  return e.forEach(function(n) {
    typeof n == "string" ? r.push(n) : z(n) === "object" && r.push(Pe(n));
  }), r.join(" ");
}, Ar = function(e) {
  if (!e || Array.isArray(e) && !e.length)
    return "";
  var r = [];
  return e.forEach(function(n) {
    n && (typeof n == "string" ? r.push(n) : Array.isArray(n) ? r.push($r(n)) : z(n) === "object" && r.push(Pe(n)));
  }), r.join(" ");
};
function Or() {
  for (var t = 0, e, r, n = ""; t < arguments.length; )
    (e = arguments[t++]) && (r = je(e)) && (n && (n += " "), n += r);
  return n;
}
function je(t) {
  if (typeof t == "string")
    return t;
  for (var e, r = "", n = 0; n < t.length; n++)
    t[n] && (e = je(t[n])) && (r && (r += " "), r += e);
  return r;
}
var fe = "-";
function Mr(t) {
  var e = kr(t), r = t.conflictingClassGroups, n = t.conflictingClassGroupModifiers, o = n === void 0 ? {} : n;
  function i(s) {
    var l = s.split(fe);
    return l[0] === "" && l.length !== 1 && l.shift(), Te(l, e) || Sr(s);
  }
  function a(s, l) {
    var u = r[s] || [];
    return l && o[s] ? [].concat(u, o[s]) : u;
  }
  return {
    getClassGroupId: i,
    getConflictingClassGroupIds: a
  };
}
function Te(t, e) {
  var r;
  if (t.length === 0)
    return e.classGroupId;
  var n = t[0], o = e.nextPart.get(n), i = o ? Te(t.slice(1), o) : void 0;
  if (i)
    return i;
  if (e.validators.length !== 0) {
    var a = t.join(fe);
    return (r = e.validators.find(function(s) {
      var l = s.validator;
      return l(a);
    })) === null || r === void 0 ? void 0 : r.classGroupId;
  }
}
var be = /^\[(.+)\]$/;
function Sr(t) {
  if (be.test(t)) {
    var e = be.exec(t)[1], r = e == null ? void 0 : e.substring(0, e.indexOf(":"));
    if (r)
      return "arbitrary.." + r;
  }
}
function kr(t) {
  var e = t.theme, r = t.prefix, n = {
    nextPart: /* @__PURE__ */ new Map(),
    validators: []
  }, o = Pr(Object.entries(t.classGroups), r);
  return o.forEach(function(i) {
    var a = i[0], s = i[1];
    le(s, n, a, e);
  }), n;
}
function le(t, e, r, n) {
  t.forEach(function(o) {
    if (typeof o == "string") {
      var i = o === "" ? e : he(e, o);
      i.classGroupId = r;
      return;
    }
    if (typeof o == "function") {
      if (Ir(o)) {
        le(o(n), e, r, n);
        return;
      }
      e.validators.push({
        validator: o,
        classGroupId: r
      });
      return;
    }
    Object.entries(o).forEach(function(a) {
      var s = a[0], l = a[1];
      le(l, he(e, s), r, n);
    });
  });
}
function he(t, e) {
  var r = t;
  return e.split(fe).forEach(function(n) {
    r.nextPart.has(n) || r.nextPart.set(n, {
      nextPart: /* @__PURE__ */ new Map(),
      validators: []
    }), r = r.nextPart.get(n);
  }), r;
}
function Ir(t) {
  return t.isThemeGetter;
}
function Pr(t, e) {
  return e ? t.map(function(r) {
    var n = r[0], o = r[1], i = o.map(function(a) {
      return typeof a == "string" ? e + a : z(a) === "object" ? Object.fromEntries(Object.entries(a).map(function(s) {
        var l = s[0], u = s[1];
        return [e + l, u];
      })) : a;
    });
    return [n, i];
  }) : t;
}
function jr(t) {
  if (t < 1)
    return {
      get: function() {
      },
      set: function() {
      }
    };
  var e = 0, r = /* @__PURE__ */ new Map(), n = /* @__PURE__ */ new Map();
  function o(i, a) {
    r.set(i, a), e++, e > t && (e = 0, n = r, r = /* @__PURE__ */ new Map());
  }
  return {
    get: function(a) {
      var s = r.get(a);
      if (s !== void 0)
        return s;
      if ((s = n.get(a)) !== void 0)
        return o(a, s), s;
    },
    set: function(a, s) {
      r.has(a) ? r.set(a, s) : o(a, s);
    }
  };
}
var Ee = "!";
function Tr(t) {
  var e = t.separator || ":", r = e.length === 1, n = e[0], o = e.length;
  return function(a) {
    for (var s = [], l = 0, u = 0, d, c = 0; c < a.length; c++) {
      var f = a[c];
      if (l === 0) {
        if (f === n && (r || a.slice(c, c + o) === e)) {
          s.push(a.slice(u, c)), u = c + o;
          continue;
        }
        if (f === "/") {
          d = c;
          continue;
        }
      }
      f === "[" ? l++ : f === "]" && l--;
    }
    var v = s.length === 0 ? a : a.substring(u), h = v.startsWith(Ee), b = h ? v.substring(1) : v, m = d && d > u ? d - u : void 0;
    return {
      modifiers: s,
      hasImportantModifier: h,
      baseClassName: b,
      maybePostfixModifierPosition: m
    };
  };
}
function Er(t) {
  if (t.length <= 1)
    return t;
  var e = [], r = [];
  return t.forEach(function(n) {
    var o = n[0] === "[";
    o ? (e.push.apply(e, r.sort().concat([n])), r = []) : r.push(n);
  }), e.push.apply(e, r.sort()), e;
}
function Gr(t) {
  return _({
    cache: jr(t.cacheSize),
    splitModifiers: Tr(t)
  }, Mr(t));
}
var Rr = /\s+/;
function zr(t, e) {
  var r = e.splitModifiers, n = e.getClassGroupId, o = e.getConflictingClassGroupIds, i = /* @__PURE__ */ new Set();
  return t.trim().split(Rr).map(function(a) {
    var s = r(a), l = s.modifiers, u = s.hasImportantModifier, d = s.baseClassName, c = s.maybePostfixModifierPosition, f = n(c ? d.substring(0, c) : d), v = !!c;
    if (!f) {
      if (!c)
        return {
          isTailwindClass: !1,
          originalClassName: a
        };
      if (f = n(d), !f)
        return {
          isTailwindClass: !1,
          originalClassName: a
        };
      v = !1;
    }
    var h = Er(l).join(":"), b = u ? h + Ee : h;
    return {
      isTailwindClass: !0,
      modifierId: b,
      classGroupId: f,
      originalClassName: a,
      hasPostfixModifier: v
    };
  }).reverse().filter(function(a) {
    if (!a.isTailwindClass)
      return !0;
    var s = a.modifierId, l = a.classGroupId, u = a.hasPostfixModifier, d = s + l;
    return i.has(d) ? !1 : (i.add(d), o(l, u).forEach(function(c) {
      return i.add(s + c);
    }), !0);
  }).reverse().map(function(a) {
    return a.originalClassName;
  }).join(" ");
}
function Vr() {
  for (var t = arguments.length, e = new Array(t), r = 0; r < t; r++)
    e[r] = arguments[r];
  var n, o, i, a = s;
  function s(u) {
    var d = e[0], c = e.slice(1), f = c.reduce(function(v, h) {
      return h(v);
    }, d());
    return n = Gr(f), o = n.cache.get, i = n.cache.set, a = l, l(u);
  }
  function l(u) {
    var d = o(u);
    if (d)
      return d;
    var c = zr(u, n);
    return i(u, c), c;
  }
  return function() {
    return a(Or.apply(null, arguments));
  };
}
function x(t) {
  var e = function(n) {
    return n[t] || [];
  };
  return e.isThemeGetter = !0, e;
}
var Ge = /^\[(?:([a-z-]+):)?(.+)\]$/i, Nr = /^\d+\/\d+$/, _r = /* @__PURE__ */ new Set(["px", "full", "screen"]), Fr = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/, Br = /\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/, Dr = /^-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/;
function j(t) {
  return B(t) || _r.has(t) || Nr.test(t) || ue(t);
}
function ue(t) {
  return D(t, "length", qr);
}
function Ur(t) {
  return D(t, "size", Re);
}
function Lr(t) {
  return D(t, "position", Re);
}
function Wr(t) {
  return D(t, "url", Yr);
}
function ee(t) {
  return D(t, "number", B);
}
function B(t) {
  return !Number.isNaN(Number(t));
}
function Kr(t) {
  return t.endsWith("%") && B(t.slice(0, -1));
}
function q(t) {
  return ye(t) || D(t, "number", ye);
}
function g(t) {
  return Ge.test(t);
}
function Y() {
  return !0;
}
function N(t) {
  return Fr.test(t);
}
function Hr(t) {
  return D(t, "", Qr);
}
function D(t, e, r) {
  var n = Ge.exec(t);
  return n ? n[1] ? n[1] === e : r(n[2]) : !1;
}
function qr(t) {
  return Br.test(t);
}
function Re() {
  return !1;
}
function Yr(t) {
  return t.startsWith("url(");
}
function ye(t) {
  return Number.isInteger(Number(t));
}
function Qr(t) {
  return Dr.test(t);
}
function Zr() {
  var t = x("colors"), e = x("spacing"), r = x("blur"), n = x("brightness"), o = x("borderColor"), i = x("borderRadius"), a = x("borderSpacing"), s = x("borderWidth"), l = x("contrast"), u = x("grayscale"), d = x("hueRotate"), c = x("invert"), f = x("gap"), v = x("gradientColorStops"), h = x("gradientColorStopPositions"), b = x("inset"), m = x("margin"), w = x("opacity"), p = x("padding"), $ = x("saturate"), C = x("scale"), A = x("sepia"), M = x("skew"), S = x("space"), T = x("translate"), E = function() {
    return ["auto", "contain", "none"];
  }, F = function() {
    return ["auto", "hidden", "clip", "visible", "scroll"];
  }, G = function() {
    return ["auto", g, e];
  }, y = function() {
    return [g, e];
  }, J = function() {
    return ["", j];
  }, I = function() {
    return ["auto", B, g];
  }, V = function() {
    return ["bottom", "center", "left", "left-bottom", "left-top", "right", "right-bottom", "right-top", "top"];
  }, R = function() {
    return ["solid", "dashed", "dotted", "double", "none"];
  }, L = function() {
    return ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity", "plus-lighter"];
  }, W = function() {
    return ["start", "end", "center", "between", "around", "evenly", "stretch"];
  }, K = function() {
    return ["", "0", g];
  }, ve = function() {
    return ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"];
  }, H = function() {
    return [B, ee];
  }, X = function() {
    return [B, g];
  };
  return {
    cacheSize: 500,
    theme: {
      colors: [Y],
      spacing: [j],
      blur: ["none", "", N, g],
      brightness: H(),
      borderColor: [t],
      borderRadius: ["none", "", "full", N, g],
      borderSpacing: y(),
      borderWidth: J(),
      contrast: H(),
      grayscale: K(),
      hueRotate: X(),
      invert: K(),
      gap: y(),
      gradientColorStops: [t],
      gradientColorStopPositions: [Kr, ue],
      inset: G(),
      margin: G(),
      opacity: H(),
      padding: y(),
      saturate: H(),
      scale: H(),
      sepia: K(),
      skew: X(),
      space: y(),
      translate: y()
    },
    classGroups: {
      // Layout
      /**
       * Aspect Ratio
       * @see https://tailwindcss.com/docs/aspect-ratio
       */
      aspect: [{
        aspect: ["auto", "square", "video", g]
      }],
      /**
       * Container
       * @see https://tailwindcss.com/docs/container
       */
      container: ["container"],
      /**
       * Columns
       * @see https://tailwindcss.com/docs/columns
       */
      columns: [{
        columns: [N]
      }],
      /**
       * Break After
       * @see https://tailwindcss.com/docs/break-after
       */
      "break-after": [{
        "break-after": ve()
      }],
      /**
       * Break Before
       * @see https://tailwindcss.com/docs/break-before
       */
      "break-before": [{
        "break-before": ve()
      }],
      /**
       * Break Inside
       * @see https://tailwindcss.com/docs/break-inside
       */
      "break-inside": [{
        "break-inside": ["auto", "avoid", "avoid-page", "avoid-column"]
      }],
      /**
       * Box Decoration Break
       * @see https://tailwindcss.com/docs/box-decoration-break
       */
      "box-decoration": [{
        "box-decoration": ["slice", "clone"]
      }],
      /**
       * Box Sizing
       * @see https://tailwindcss.com/docs/box-sizing
       */
      box: [{
        box: ["border", "content"]
      }],
      /**
       * Display
       * @see https://tailwindcss.com/docs/display
       */
      display: ["block", "inline-block", "inline", "flex", "inline-flex", "table", "inline-table", "table-caption", "table-cell", "table-column", "table-column-group", "table-footer-group", "table-header-group", "table-row-group", "table-row", "flow-root", "grid", "inline-grid", "contents", "list-item", "hidden"],
      /**
       * Floats
       * @see https://tailwindcss.com/docs/float
       */
      float: [{
        float: ["right", "left", "none"]
      }],
      /**
       * Clear
       * @see https://tailwindcss.com/docs/clear
       */
      clear: [{
        clear: ["left", "right", "both", "none"]
      }],
      /**
       * Isolation
       * @see https://tailwindcss.com/docs/isolation
       */
      isolation: ["isolate", "isolation-auto"],
      /**
       * Object Fit
       * @see https://tailwindcss.com/docs/object-fit
       */
      "object-fit": [{
        object: ["contain", "cover", "fill", "none", "scale-down"]
      }],
      /**
       * Object Position
       * @see https://tailwindcss.com/docs/object-position
       */
      "object-position": [{
        object: [].concat(V(), [g])
      }],
      /**
       * Overflow
       * @see https://tailwindcss.com/docs/overflow
       */
      overflow: [{
        overflow: F()
      }],
      /**
       * Overflow X
       * @see https://tailwindcss.com/docs/overflow
       */
      "overflow-x": [{
        "overflow-x": F()
      }],
      /**
       * Overflow Y
       * @see https://tailwindcss.com/docs/overflow
       */
      "overflow-y": [{
        "overflow-y": F()
      }],
      /**
       * Overscroll Behavior
       * @see https://tailwindcss.com/docs/overscroll-behavior
       */
      overscroll: [{
        overscroll: E()
      }],
      /**
       * Overscroll Behavior X
       * @see https://tailwindcss.com/docs/overscroll-behavior
       */
      "overscroll-x": [{
        "overscroll-x": E()
      }],
      /**
       * Overscroll Behavior Y
       * @see https://tailwindcss.com/docs/overscroll-behavior
       */
      "overscroll-y": [{
        "overscroll-y": E()
      }],
      /**
       * Position
       * @see https://tailwindcss.com/docs/position
       */
      position: ["static", "fixed", "absolute", "relative", "sticky"],
      /**
       * Top / Right / Bottom / Left
       * @see https://tailwindcss.com/docs/top-right-bottom-left
       */
      inset: [{
        inset: [b]
      }],
      /**
       * Right / Left
       * @see https://tailwindcss.com/docs/top-right-bottom-left
       */
      "inset-x": [{
        "inset-x": [b]
      }],
      /**
       * Top / Bottom
       * @see https://tailwindcss.com/docs/top-right-bottom-left
       */
      "inset-y": [{
        "inset-y": [b]
      }],
      /**
       * Start
       * @see https://tailwindcss.com/docs/top-right-bottom-left
       */
      start: [{
        start: [b]
      }],
      /**
       * End
       * @see https://tailwindcss.com/docs/top-right-bottom-left
       */
      end: [{
        end: [b]
      }],
      /**
       * Top
       * @see https://tailwindcss.com/docs/top-right-bottom-left
       */
      top: [{
        top: [b]
      }],
      /**
       * Right
       * @see https://tailwindcss.com/docs/top-right-bottom-left
       */
      right: [{
        right: [b]
      }],
      /**
       * Bottom
       * @see https://tailwindcss.com/docs/top-right-bottom-left
       */
      bottom: [{
        bottom: [b]
      }],
      /**
       * Left
       * @see https://tailwindcss.com/docs/top-right-bottom-left
       */
      left: [{
        left: [b]
      }],
      /**
       * Visibility
       * @see https://tailwindcss.com/docs/visibility
       */
      visibility: ["visible", "invisible", "collapse"],
      /**
       * Z-Index
       * @see https://tailwindcss.com/docs/z-index
       */
      z: [{
        z: ["auto", q]
      }],
      // Flexbox and Grid
      /**
       * Flex Basis
       * @see https://tailwindcss.com/docs/flex-basis
       */
      basis: [{
        basis: G()
      }],
      /**
       * Flex Direction
       * @see https://tailwindcss.com/docs/flex-direction
       */
      "flex-direction": [{
        flex: ["row", "row-reverse", "col", "col-reverse"]
      }],
      /**
       * Flex Wrap
       * @see https://tailwindcss.com/docs/flex-wrap
       */
      "flex-wrap": [{
        flex: ["wrap", "wrap-reverse", "nowrap"]
      }],
      /**
       * Flex
       * @see https://tailwindcss.com/docs/flex
       */
      flex: [{
        flex: ["1", "auto", "initial", "none", g]
      }],
      /**
       * Flex Grow
       * @see https://tailwindcss.com/docs/flex-grow
       */
      grow: [{
        grow: K()
      }],
      /**
       * Flex Shrink
       * @see https://tailwindcss.com/docs/flex-shrink
       */
      shrink: [{
        shrink: K()
      }],
      /**
       * Order
       * @see https://tailwindcss.com/docs/order
       */
      order: [{
        order: ["first", "last", "none", q]
      }],
      /**
       * Grid Template Columns
       * @see https://tailwindcss.com/docs/grid-template-columns
       */
      "grid-cols": [{
        "grid-cols": [Y]
      }],
      /**
       * Grid Column Start / End
       * @see https://tailwindcss.com/docs/grid-column
       */
      "col-start-end": [{
        col: ["auto", {
          span: ["full", q]
        }, g]
      }],
      /**
       * Grid Column Start
       * @see https://tailwindcss.com/docs/grid-column
       */
      "col-start": [{
        "col-start": I()
      }],
      /**
       * Grid Column End
       * @see https://tailwindcss.com/docs/grid-column
       */
      "col-end": [{
        "col-end": I()
      }],
      /**
       * Grid Template Rows
       * @see https://tailwindcss.com/docs/grid-template-rows
       */
      "grid-rows": [{
        "grid-rows": [Y]
      }],
      /**
       * Grid Row Start / End
       * @see https://tailwindcss.com/docs/grid-row
       */
      "row-start-end": [{
        row: ["auto", {
          span: [q]
        }, g]
      }],
      /**
       * Grid Row Start
       * @see https://tailwindcss.com/docs/grid-row
       */
      "row-start": [{
        "row-start": I()
      }],
      /**
       * Grid Row End
       * @see https://tailwindcss.com/docs/grid-row
       */
      "row-end": [{
        "row-end": I()
      }],
      /**
       * Grid Auto Flow
       * @see https://tailwindcss.com/docs/grid-auto-flow
       */
      "grid-flow": [{
        "grid-flow": ["row", "col", "dense", "row-dense", "col-dense"]
      }],
      /**
       * Grid Auto Columns
       * @see https://tailwindcss.com/docs/grid-auto-columns
       */
      "auto-cols": [{
        "auto-cols": ["auto", "min", "max", "fr", g]
      }],
      /**
       * Grid Auto Rows
       * @see https://tailwindcss.com/docs/grid-auto-rows
       */
      "auto-rows": [{
        "auto-rows": ["auto", "min", "max", "fr", g]
      }],
      /**
       * Gap
       * @see https://tailwindcss.com/docs/gap
       */
      gap: [{
        gap: [f]
      }],
      /**
       * Gap X
       * @see https://tailwindcss.com/docs/gap
       */
      "gap-x": [{
        "gap-x": [f]
      }],
      /**
       * Gap Y
       * @see https://tailwindcss.com/docs/gap
       */
      "gap-y": [{
        "gap-y": [f]
      }],
      /**
       * Justify Content
       * @see https://tailwindcss.com/docs/justify-content
       */
      "justify-content": [{
        justify: ["normal"].concat(W())
      }],
      /**
       * Justify Items
       * @see https://tailwindcss.com/docs/justify-items
       */
      "justify-items": [{
        "justify-items": ["start", "end", "center", "stretch"]
      }],
      /**
       * Justify Self
       * @see https://tailwindcss.com/docs/justify-self
       */
      "justify-self": [{
        "justify-self": ["auto", "start", "end", "center", "stretch"]
      }],
      /**
       * Align Content
       * @see https://tailwindcss.com/docs/align-content
       */
      "align-content": [{
        content: ["normal"].concat(W(), ["baseline"])
      }],
      /**
       * Align Items
       * @see https://tailwindcss.com/docs/align-items
       */
      "align-items": [{
        items: ["start", "end", "center", "baseline", "stretch"]
      }],
      /**
       * Align Self
       * @see https://tailwindcss.com/docs/align-self
       */
      "align-self": [{
        self: ["auto", "start", "end", "center", "stretch", "baseline"]
      }],
      /**
       * Place Content
       * @see https://tailwindcss.com/docs/place-content
       */
      "place-content": [{
        "place-content": [].concat(W(), ["baseline"])
      }],
      /**
       * Place Items
       * @see https://tailwindcss.com/docs/place-items
       */
      "place-items": [{
        "place-items": ["start", "end", "center", "baseline", "stretch"]
      }],
      /**
       * Place Self
       * @see https://tailwindcss.com/docs/place-self
       */
      "place-self": [{
        "place-self": ["auto", "start", "end", "center", "stretch"]
      }],
      // Spacing
      /**
       * Padding
       * @see https://tailwindcss.com/docs/padding
       */
      p: [{
        p: [p]
      }],
      /**
       * Padding X
       * @see https://tailwindcss.com/docs/padding
       */
      px: [{
        px: [p]
      }],
      /**
       * Padding Y
       * @see https://tailwindcss.com/docs/padding
       */
      py: [{
        py: [p]
      }],
      /**
       * Padding Start
       * @see https://tailwindcss.com/docs/padding
       */
      ps: [{
        ps: [p]
      }],
      /**
       * Padding End
       * @see https://tailwindcss.com/docs/padding
       */
      pe: [{
        pe: [p]
      }],
      /**
       * Padding Top
       * @see https://tailwindcss.com/docs/padding
       */
      pt: [{
        pt: [p]
      }],
      /**
       * Padding Right
       * @see https://tailwindcss.com/docs/padding
       */
      pr: [{
        pr: [p]
      }],
      /**
       * Padding Bottom
       * @see https://tailwindcss.com/docs/padding
       */
      pb: [{
        pb: [p]
      }],
      /**
       * Padding Left
       * @see https://tailwindcss.com/docs/padding
       */
      pl: [{
        pl: [p]
      }],
      /**
       * Margin
       * @see https://tailwindcss.com/docs/margin
       */
      m: [{
        m: [m]
      }],
      /**
       * Margin X
       * @see https://tailwindcss.com/docs/margin
       */
      mx: [{
        mx: [m]
      }],
      /**
       * Margin Y
       * @see https://tailwindcss.com/docs/margin
       */
      my: [{
        my: [m]
      }],
      /**
       * Margin Start
       * @see https://tailwindcss.com/docs/margin
       */
      ms: [{
        ms: [m]
      }],
      /**
       * Margin End
       * @see https://tailwindcss.com/docs/margin
       */
      me: [{
        me: [m]
      }],
      /**
       * Margin Top
       * @see https://tailwindcss.com/docs/margin
       */
      mt: [{
        mt: [m]
      }],
      /**
       * Margin Right
       * @see https://tailwindcss.com/docs/margin
       */
      mr: [{
        mr: [m]
      }],
      /**
       * Margin Bottom
       * @see https://tailwindcss.com/docs/margin
       */
      mb: [{
        mb: [m]
      }],
      /**
       * Margin Left
       * @see https://tailwindcss.com/docs/margin
       */
      ml: [{
        ml: [m]
      }],
      /**
       * Space Between X
       * @see https://tailwindcss.com/docs/space
       */
      "space-x": [{
        "space-x": [S]
      }],
      /**
       * Space Between X Reverse
       * @see https://tailwindcss.com/docs/space
       */
      "space-x-reverse": ["space-x-reverse"],
      /**
       * Space Between Y
       * @see https://tailwindcss.com/docs/space
       */
      "space-y": [{
        "space-y": [S]
      }],
      /**
       * Space Between Y Reverse
       * @see https://tailwindcss.com/docs/space
       */
      "space-y-reverse": ["space-y-reverse"],
      // Sizing
      /**
       * Width
       * @see https://tailwindcss.com/docs/width
       */
      w: [{
        w: ["auto", "min", "max", "fit", g, e]
      }],
      /**
       * Min-Width
       * @see https://tailwindcss.com/docs/min-width
       */
      "min-w": [{
        "min-w": ["min", "max", "fit", g, j]
      }],
      /**
       * Max-Width
       * @see https://tailwindcss.com/docs/max-width
       */
      "max-w": [{
        "max-w": ["0", "none", "full", "min", "max", "fit", "prose", {
          screen: [N]
        }, N, g]
      }],
      /**
       * Height
       * @see https://tailwindcss.com/docs/height
       */
      h: [{
        h: [g, e, "auto", "min", "max", "fit"]
      }],
      /**
       * Min-Height
       * @see https://tailwindcss.com/docs/min-height
       */
      "min-h": [{
        "min-h": ["min", "max", "fit", g, j]
      }],
      /**
       * Max-Height
       * @see https://tailwindcss.com/docs/max-height
       */
      "max-h": [{
        "max-h": [g, e, "min", "max", "fit"]
      }],
      // Typography
      /**
       * Font Size
       * @see https://tailwindcss.com/docs/font-size
       */
      "font-size": [{
        text: ["base", N, ue]
      }],
      /**
       * Font Smoothing
       * @see https://tailwindcss.com/docs/font-smoothing
       */
      "font-smoothing": ["antialiased", "subpixel-antialiased"],
      /**
       * Font Style
       * @see https://tailwindcss.com/docs/font-style
       */
      "font-style": ["italic", "not-italic"],
      /**
       * Font Weight
       * @see https://tailwindcss.com/docs/font-weight
       */
      "font-weight": [{
        font: ["thin", "extralight", "light", "normal", "medium", "semibold", "bold", "extrabold", "black", ee]
      }],
      /**
       * Font Family
       * @see https://tailwindcss.com/docs/font-family
       */
      "font-family": [{
        font: [Y]
      }],
      /**
       * Font Variant Numeric
       * @see https://tailwindcss.com/docs/font-variant-numeric
       */
      "fvn-normal": ["normal-nums"],
      /**
       * Font Variant Numeric
       * @see https://tailwindcss.com/docs/font-variant-numeric
       */
      "fvn-ordinal": ["ordinal"],
      /**
       * Font Variant Numeric
       * @see https://tailwindcss.com/docs/font-variant-numeric
       */
      "fvn-slashed-zero": ["slashed-zero"],
      /**
       * Font Variant Numeric
       * @see https://tailwindcss.com/docs/font-variant-numeric
       */
      "fvn-figure": ["lining-nums", "oldstyle-nums"],
      /**
       * Font Variant Numeric
       * @see https://tailwindcss.com/docs/font-variant-numeric
       */
      "fvn-spacing": ["proportional-nums", "tabular-nums"],
      /**
       * Font Variant Numeric
       * @see https://tailwindcss.com/docs/font-variant-numeric
       */
      "fvn-fraction": ["diagonal-fractions", "stacked-fractons"],
      /**
       * Letter Spacing
       * @see https://tailwindcss.com/docs/letter-spacing
       */
      tracking: [{
        tracking: ["tighter", "tight", "normal", "wide", "wider", "widest", g]
      }],
      /**
       * Line Clamp
       * @see https://tailwindcss.com/docs/line-clamp
       */
      "line-clamp": [{
        "line-clamp": ["none", B, ee]
      }],
      /**
       * Line Height
       * @see https://tailwindcss.com/docs/line-height
       */
      leading: [{
        leading: ["none", "tight", "snug", "normal", "relaxed", "loose", g, j]
      }],
      /**
       * List Style Image
       * @see https://tailwindcss.com/docs/list-style-image
       */
      "list-image": [{
        "list-image": ["none", g]
      }],
      /**
       * List Style Type
       * @see https://tailwindcss.com/docs/list-style-type
       */
      "list-style-type": [{
        list: ["none", "disc", "decimal", g]
      }],
      /**
       * List Style Position
       * @see https://tailwindcss.com/docs/list-style-position
       */
      "list-style-position": [{
        list: ["inside", "outside"]
      }],
      /**
       * Placeholder Color
       * @deprecated since Tailwind CSS v3.0.0
       * @see https://tailwindcss.com/docs/placeholder-color
       */
      "placeholder-color": [{
        placeholder: [t]
      }],
      /**
       * Placeholder Opacity
       * @see https://tailwindcss.com/docs/placeholder-opacity
       */
      "placeholder-opacity": [{
        "placeholder-opacity": [w]
      }],
      /**
       * Text Alignment
       * @see https://tailwindcss.com/docs/text-align
       */
      "text-alignment": [{
        text: ["left", "center", "right", "justify", "start", "end"]
      }],
      /**
       * Text Color
       * @see https://tailwindcss.com/docs/text-color
       */
      "text-color": [{
        text: [t]
      }],
      /**
       * Text Opacity
       * @see https://tailwindcss.com/docs/text-opacity
       */
      "text-opacity": [{
        "text-opacity": [w]
      }],
      /**
       * Text Decoration
       * @see https://tailwindcss.com/docs/text-decoration
       */
      "text-decoration": ["underline", "overline", "line-through", "no-underline"],
      /**
       * Text Decoration Style
       * @see https://tailwindcss.com/docs/text-decoration-style
       */
      "text-decoration-style": [{
        decoration: [].concat(R(), ["wavy"])
      }],
      /**
       * Text Decoration Thickness
       * @see https://tailwindcss.com/docs/text-decoration-thickness
       */
      "text-decoration-thickness": [{
        decoration: ["auto", "from-font", j]
      }],
      /**
       * Text Underline Offset
       * @see https://tailwindcss.com/docs/text-underline-offset
       */
      "underline-offset": [{
        "underline-offset": ["auto", g, j]
      }],
      /**
       * Text Decoration Color
       * @see https://tailwindcss.com/docs/text-decoration-color
       */
      "text-decoration-color": [{
        decoration: [t]
      }],
      /**
       * Text Transform
       * @see https://tailwindcss.com/docs/text-transform
       */
      "text-transform": ["uppercase", "lowercase", "capitalize", "normal-case"],
      /**
       * Text Overflow
       * @see https://tailwindcss.com/docs/text-overflow
       */
      "text-overflow": ["truncate", "text-ellipsis", "text-clip"],
      /**
       * Text Indent
       * @see https://tailwindcss.com/docs/text-indent
       */
      indent: [{
        indent: y()
      }],
      /**
       * Vertical Alignment
       * @see https://tailwindcss.com/docs/vertical-align
       */
      "vertical-align": [{
        align: ["baseline", "top", "middle", "bottom", "text-top", "text-bottom", "sub", "super", g]
      }],
      /**
       * Whitespace
       * @see https://tailwindcss.com/docs/whitespace
       */
      whitespace: [{
        whitespace: ["normal", "nowrap", "pre", "pre-line", "pre-wrap", "break-spaces"]
      }],
      /**
       * Word Break
       * @see https://tailwindcss.com/docs/word-break
       */
      break: [{
        break: ["normal", "words", "all", "keep"]
      }],
      /**
       * Hyphens
       * @see https://tailwindcss.com/docs/hyphens
       */
      hyphens: [{
        hyphens: ["none", "manual", "auto"]
      }],
      /**
       * Content
       * @see https://tailwindcss.com/docs/content
       */
      content: [{
        content: ["none", g]
      }],
      // Backgrounds
      /**
       * Background Attachment
       * @see https://tailwindcss.com/docs/background-attachment
       */
      "bg-attachment": [{
        bg: ["fixed", "local", "scroll"]
      }],
      /**
       * Background Clip
       * @see https://tailwindcss.com/docs/background-clip
       */
      "bg-clip": [{
        "bg-clip": ["border", "padding", "content", "text"]
      }],
      /**
       * Background Opacity
       * @deprecated since Tailwind CSS v3.0.0
       * @see https://tailwindcss.com/docs/background-opacity
       */
      "bg-opacity": [{
        "bg-opacity": [w]
      }],
      /**
       * Background Origin
       * @see https://tailwindcss.com/docs/background-origin
       */
      "bg-origin": [{
        "bg-origin": ["border", "padding", "content"]
      }],
      /**
       * Background Position
       * @see https://tailwindcss.com/docs/background-position
       */
      "bg-position": [{
        bg: [].concat(V(), [Lr])
      }],
      /**
       * Background Repeat
       * @see https://tailwindcss.com/docs/background-repeat
       */
      "bg-repeat": [{
        bg: ["no-repeat", {
          repeat: ["", "x", "y", "round", "space"]
        }]
      }],
      /**
       * Background Size
       * @see https://tailwindcss.com/docs/background-size
       */
      "bg-size": [{
        bg: ["auto", "cover", "contain", Ur]
      }],
      /**
       * Background Image
       * @see https://tailwindcss.com/docs/background-image
       */
      "bg-image": [{
        bg: ["none", {
          "gradient-to": ["t", "tr", "r", "br", "b", "bl", "l", "tl"]
        }, Wr]
      }],
      /**
       * Background Color
       * @see https://tailwindcss.com/docs/background-color
       */
      "bg-color": [{
        bg: [t]
      }],
      /**
       * Gradient Color Stops From Position
       * @see https://tailwindcss.com/docs/gradient-color-stops
       */
      "gradient-from-pos": [{
        from: [h]
      }],
      /**
       * Gradient Color Stops Via Position
       * @see https://tailwindcss.com/docs/gradient-color-stops
       */
      "gradient-via-pos": [{
        via: [h]
      }],
      /**
       * Gradient Color Stops To Position
       * @see https://tailwindcss.com/docs/gradient-color-stops
       */
      "gradient-to-pos": [{
        to: [h]
      }],
      /**
       * Gradient Color Stops From
       * @see https://tailwindcss.com/docs/gradient-color-stops
       */
      "gradient-from": [{
        from: [v]
      }],
      /**
       * Gradient Color Stops Via
       * @see https://tailwindcss.com/docs/gradient-color-stops
       */
      "gradient-via": [{
        via: [v]
      }],
      /**
       * Gradient Color Stops To
       * @see https://tailwindcss.com/docs/gradient-color-stops
       */
      "gradient-to": [{
        to: [v]
      }],
      // Borders
      /**
       * Border Radius
       * @see https://tailwindcss.com/docs/border-radius
       */
      rounded: [{
        rounded: [i]
      }],
      /**
       * Border Radius Start
       * @see https://tailwindcss.com/docs/border-radius
       */
      "rounded-s": [{
        "rounded-s": [i]
      }],
      /**
       * Border Radius End
       * @see https://tailwindcss.com/docs/border-radius
       */
      "rounded-e": [{
        "rounded-e": [i]
      }],
      /**
       * Border Radius Top
       * @see https://tailwindcss.com/docs/border-radius
       */
      "rounded-t": [{
        "rounded-t": [i]
      }],
      /**
       * Border Radius Right
       * @see https://tailwindcss.com/docs/border-radius
       */
      "rounded-r": [{
        "rounded-r": [i]
      }],
      /**
       * Border Radius Bottom
       * @see https://tailwindcss.com/docs/border-radius
       */
      "rounded-b": [{
        "rounded-b": [i]
      }],
      /**
       * Border Radius Left
       * @see https://tailwindcss.com/docs/border-radius
       */
      "rounded-l": [{
        "rounded-l": [i]
      }],
      /**
       * Border Radius Start Start
       * @see https://tailwindcss.com/docs/border-radius
       */
      "rounded-ss": [{
        "rounded-ss": [i]
      }],
      /**
       * Border Radius Start End
       * @see https://tailwindcss.com/docs/border-radius
       */
      "rounded-se": [{
        "rounded-se": [i]
      }],
      /**
       * Border Radius End End
       * @see https://tailwindcss.com/docs/border-radius
       */
      "rounded-ee": [{
        "rounded-ee": [i]
      }],
      /**
       * Border Radius End Start
       * @see https://tailwindcss.com/docs/border-radius
       */
      "rounded-es": [{
        "rounded-es": [i]
      }],
      /**
       * Border Radius Top Left
       * @see https://tailwindcss.com/docs/border-radius
       */
      "rounded-tl": [{
        "rounded-tl": [i]
      }],
      /**
       * Border Radius Top Right
       * @see https://tailwindcss.com/docs/border-radius
       */
      "rounded-tr": [{
        "rounded-tr": [i]
      }],
      /**
       * Border Radius Bottom Right
       * @see https://tailwindcss.com/docs/border-radius
       */
      "rounded-br": [{
        "rounded-br": [i]
      }],
      /**
       * Border Radius Bottom Left
       * @see https://tailwindcss.com/docs/border-radius
       */
      "rounded-bl": [{
        "rounded-bl": [i]
      }],
      /**
       * Border Width
       * @see https://tailwindcss.com/docs/border-width
       */
      "border-w": [{
        border: [s]
      }],
      /**
       * Border Width X
       * @see https://tailwindcss.com/docs/border-width
       */
      "border-w-x": [{
        "border-x": [s]
      }],
      /**
       * Border Width Y
       * @see https://tailwindcss.com/docs/border-width
       */
      "border-w-y": [{
        "border-y": [s]
      }],
      /**
       * Border Width Start
       * @see https://tailwindcss.com/docs/border-width
       */
      "border-w-s": [{
        "border-s": [s]
      }],
      /**
       * Border Width End
       * @see https://tailwindcss.com/docs/border-width
       */
      "border-w-e": [{
        "border-e": [s]
      }],
      /**
       * Border Width Top
       * @see https://tailwindcss.com/docs/border-width
       */
      "border-w-t": [{
        "border-t": [s]
      }],
      /**
       * Border Width Right
       * @see https://tailwindcss.com/docs/border-width
       */
      "border-w-r": [{
        "border-r": [s]
      }],
      /**
       * Border Width Bottom
       * @see https://tailwindcss.com/docs/border-width
       */
      "border-w-b": [{
        "border-b": [s]
      }],
      /**
       * Border Width Left
       * @see https://tailwindcss.com/docs/border-width
       */
      "border-w-l": [{
        "border-l": [s]
      }],
      /**
       * Border Opacity
       * @see https://tailwindcss.com/docs/border-opacity
       */
      "border-opacity": [{
        "border-opacity": [w]
      }],
      /**
       * Border Style
       * @see https://tailwindcss.com/docs/border-style
       */
      "border-style": [{
        border: [].concat(R(), ["hidden"])
      }],
      /**
       * Divide Width X
       * @see https://tailwindcss.com/docs/divide-width
       */
      "divide-x": [{
        "divide-x": [s]
      }],
      /**
       * Divide Width X Reverse
       * @see https://tailwindcss.com/docs/divide-width
       */
      "divide-x-reverse": ["divide-x-reverse"],
      /**
       * Divide Width Y
       * @see https://tailwindcss.com/docs/divide-width
       */
      "divide-y": [{
        "divide-y": [s]
      }],
      /**
       * Divide Width Y Reverse
       * @see https://tailwindcss.com/docs/divide-width
       */
      "divide-y-reverse": ["divide-y-reverse"],
      /**
       * Divide Opacity
       * @see https://tailwindcss.com/docs/divide-opacity
       */
      "divide-opacity": [{
        "divide-opacity": [w]
      }],
      /**
       * Divide Style
       * @see https://tailwindcss.com/docs/divide-style
       */
      "divide-style": [{
        divide: R()
      }],
      /**
       * Border Color
       * @see https://tailwindcss.com/docs/border-color
       */
      "border-color": [{
        border: [o]
      }],
      /**
       * Border Color X
       * @see https://tailwindcss.com/docs/border-color
       */
      "border-color-x": [{
        "border-x": [o]
      }],
      /**
       * Border Color Y
       * @see https://tailwindcss.com/docs/border-color
       */
      "border-color-y": [{
        "border-y": [o]
      }],
      /**
       * Border Color Top
       * @see https://tailwindcss.com/docs/border-color
       */
      "border-color-t": [{
        "border-t": [o]
      }],
      /**
       * Border Color Right
       * @see https://tailwindcss.com/docs/border-color
       */
      "border-color-r": [{
        "border-r": [o]
      }],
      /**
       * Border Color Bottom
       * @see https://tailwindcss.com/docs/border-color
       */
      "border-color-b": [{
        "border-b": [o]
      }],
      /**
       * Border Color Left
       * @see https://tailwindcss.com/docs/border-color
       */
      "border-color-l": [{
        "border-l": [o]
      }],
      /**
       * Divide Color
       * @see https://tailwindcss.com/docs/divide-color
       */
      "divide-color": [{
        divide: [o]
      }],
      /**
       * Outline Style
       * @see https://tailwindcss.com/docs/outline-style
       */
      "outline-style": [{
        outline: [""].concat(R())
      }],
      /**
       * Outline Offset
       * @see https://tailwindcss.com/docs/outline-offset
       */
      "outline-offset": [{
        "outline-offset": [g, j]
      }],
      /**
       * Outline Width
       * @see https://tailwindcss.com/docs/outline-width
       */
      "outline-w": [{
        outline: [j]
      }],
      /**
       * Outline Color
       * @see https://tailwindcss.com/docs/outline-color
       */
      "outline-color": [{
        outline: [t]
      }],
      /**
       * Ring Width
       * @see https://tailwindcss.com/docs/ring-width
       */
      "ring-w": [{
        ring: J()
      }],
      /**
       * Ring Width Inset
       * @see https://tailwindcss.com/docs/ring-width
       */
      "ring-w-inset": ["ring-inset"],
      /**
       * Ring Color
       * @see https://tailwindcss.com/docs/ring-color
       */
      "ring-color": [{
        ring: [t]
      }],
      /**
       * Ring Opacity
       * @see https://tailwindcss.com/docs/ring-opacity
       */
      "ring-opacity": [{
        "ring-opacity": [w]
      }],
      /**
       * Ring Offset Width
       * @see https://tailwindcss.com/docs/ring-offset-width
       */
      "ring-offset-w": [{
        "ring-offset": [j]
      }],
      /**
       * Ring Offset Color
       * @see https://tailwindcss.com/docs/ring-offset-color
       */
      "ring-offset-color": [{
        "ring-offset": [t]
      }],
      // Effects
      /**
       * Box Shadow
       * @see https://tailwindcss.com/docs/box-shadow
       */
      shadow: [{
        shadow: ["", "inner", "none", N, Hr]
      }],
      /**
       * Box Shadow Color
       * @see https://tailwindcss.com/docs/box-shadow-color
       */
      "shadow-color": [{
        shadow: [Y]
      }],
      /**
       * Opacity
       * @see https://tailwindcss.com/docs/opacity
       */
      opacity: [{
        opacity: [w]
      }],
      /**
       * Mix Blend Mode
       * @see https://tailwindcss.com/docs/mix-blend-mode
       */
      "mix-blend": [{
        "mix-blend": L()
      }],
      /**
       * Background Blend Mode
       * @see https://tailwindcss.com/docs/background-blend-mode
       */
      "bg-blend": [{
        "bg-blend": L()
      }],
      // Filters
      /**
       * Filter
       * @deprecated since Tailwind CSS v3.0.0
       * @see https://tailwindcss.com/docs/filter
       */
      filter: [{
        filter: ["", "none"]
      }],
      /**
       * Blur
       * @see https://tailwindcss.com/docs/blur
       */
      blur: [{
        blur: [r]
      }],
      /**
       * Brightness
       * @see https://tailwindcss.com/docs/brightness
       */
      brightness: [{
        brightness: [n]
      }],
      /**
       * Contrast
       * @see https://tailwindcss.com/docs/contrast
       */
      contrast: [{
        contrast: [l]
      }],
      /**
       * Drop Shadow
       * @see https://tailwindcss.com/docs/drop-shadow
       */
      "drop-shadow": [{
        "drop-shadow": ["", "none", N, g]
      }],
      /**
       * Grayscale
       * @see https://tailwindcss.com/docs/grayscale
       */
      grayscale: [{
        grayscale: [u]
      }],
      /**
       * Hue Rotate
       * @see https://tailwindcss.com/docs/hue-rotate
       */
      "hue-rotate": [{
        "hue-rotate": [d]
      }],
      /**
       * Invert
       * @see https://tailwindcss.com/docs/invert
       */
      invert: [{
        invert: [c]
      }],
      /**
       * Saturate
       * @see https://tailwindcss.com/docs/saturate
       */
      saturate: [{
        saturate: [$]
      }],
      /**
       * Sepia
       * @see https://tailwindcss.com/docs/sepia
       */
      sepia: [{
        sepia: [A]
      }],
      /**
       * Backdrop Filter
       * @deprecated since Tailwind CSS v3.0.0
       * @see https://tailwindcss.com/docs/backdrop-filter
       */
      "backdrop-filter": [{
        "backdrop-filter": ["", "none"]
      }],
      /**
       * Backdrop Blur
       * @see https://tailwindcss.com/docs/backdrop-blur
       */
      "backdrop-blur": [{
        "backdrop-blur": [r]
      }],
      /**
       * Backdrop Brightness
       * @see https://tailwindcss.com/docs/backdrop-brightness
       */
      "backdrop-brightness": [{
        "backdrop-brightness": [n]
      }],
      /**
       * Backdrop Contrast
       * @see https://tailwindcss.com/docs/backdrop-contrast
       */
      "backdrop-contrast": [{
        "backdrop-contrast": [l]
      }],
      /**
       * Backdrop Grayscale
       * @see https://tailwindcss.com/docs/backdrop-grayscale
       */
      "backdrop-grayscale": [{
        "backdrop-grayscale": [u]
      }],
      /**
       * Backdrop Hue Rotate
       * @see https://tailwindcss.com/docs/backdrop-hue-rotate
       */
      "backdrop-hue-rotate": [{
        "backdrop-hue-rotate": [d]
      }],
      /**
       * Backdrop Invert
       * @see https://tailwindcss.com/docs/backdrop-invert
       */
      "backdrop-invert": [{
        "backdrop-invert": [c]
      }],
      /**
       * Backdrop Opacity
       * @see https://tailwindcss.com/docs/backdrop-opacity
       */
      "backdrop-opacity": [{
        "backdrop-opacity": [w]
      }],
      /**
       * Backdrop Saturate
       * @see https://tailwindcss.com/docs/backdrop-saturate
       */
      "backdrop-saturate": [{
        "backdrop-saturate": [$]
      }],
      /**
       * Backdrop Sepia
       * @see https://tailwindcss.com/docs/backdrop-sepia
       */
      "backdrop-sepia": [{
        "backdrop-sepia": [A]
      }],
      // Tables
      /**
       * Border Collapse
       * @see https://tailwindcss.com/docs/border-collapse
       */
      "border-collapse": [{
        border: ["collapse", "separate"]
      }],
      /**
       * Border Spacing
       * @see https://tailwindcss.com/docs/border-spacing
       */
      "border-spacing": [{
        "border-spacing": [a]
      }],
      /**
       * Border Spacing X
       * @see https://tailwindcss.com/docs/border-spacing
       */
      "border-spacing-x": [{
        "border-spacing-x": [a]
      }],
      /**
       * Border Spacing Y
       * @see https://tailwindcss.com/docs/border-spacing
       */
      "border-spacing-y": [{
        "border-spacing-y": [a]
      }],
      /**
       * Table Layout
       * @see https://tailwindcss.com/docs/table-layout
       */
      "table-layout": [{
        table: ["auto", "fixed"]
      }],
      /**
       * Caption Side
       * @see https://tailwindcss.com/docs/caption-side
       */
      caption: [{
        caption: ["top", "bottom"]
      }],
      // Transitions and Animation
      /**
       * Tranisition Property
       * @see https://tailwindcss.com/docs/transition-property
       */
      transition: [{
        transition: ["none", "all", "", "colors", "opacity", "shadow", "transform", g]
      }],
      /**
       * Transition Duration
       * @see https://tailwindcss.com/docs/transition-duration
       */
      duration: [{
        duration: X()
      }],
      /**
       * Transition Timing Function
       * @see https://tailwindcss.com/docs/transition-timing-function
       */
      ease: [{
        ease: ["linear", "in", "out", "in-out", g]
      }],
      /**
       * Transition Delay
       * @see https://tailwindcss.com/docs/transition-delay
       */
      delay: [{
        delay: X()
      }],
      /**
       * Animation
       * @see https://tailwindcss.com/docs/animation
       */
      animate: [{
        animate: ["none", "spin", "ping", "pulse", "bounce", g]
      }],
      // Transforms
      /**
       * Transform
       * @see https://tailwindcss.com/docs/transform
       */
      transform: [{
        transform: ["", "gpu", "none"]
      }],
      /**
       * Scale
       * @see https://tailwindcss.com/docs/scale
       */
      scale: [{
        scale: [C]
      }],
      /**
       * Scale X
       * @see https://tailwindcss.com/docs/scale
       */
      "scale-x": [{
        "scale-x": [C]
      }],
      /**
       * Scale Y
       * @see https://tailwindcss.com/docs/scale
       */
      "scale-y": [{
        "scale-y": [C]
      }],
      /**
       * Rotate
       * @see https://tailwindcss.com/docs/rotate
       */
      rotate: [{
        rotate: [q, g]
      }],
      /**
       * Translate X
       * @see https://tailwindcss.com/docs/translate
       */
      "translate-x": [{
        "translate-x": [T]
      }],
      /**
       * Translate Y
       * @see https://tailwindcss.com/docs/translate
       */
      "translate-y": [{
        "translate-y": [T]
      }],
      /**
       * Skew X
       * @see https://tailwindcss.com/docs/skew
       */
      "skew-x": [{
        "skew-x": [M]
      }],
      /**
       * Skew Y
       * @see https://tailwindcss.com/docs/skew
       */
      "skew-y": [{
        "skew-y": [M]
      }],
      /**
       * Transform Origin
       * @see https://tailwindcss.com/docs/transform-origin
       */
      "transform-origin": [{
        origin: ["center", "top", "top-right", "right", "bottom-right", "bottom", "bottom-left", "left", "top-left", g]
      }],
      // Interactivity
      /**
       * Accent Color
       * @see https://tailwindcss.com/docs/accent-color
       */
      accent: [{
        accent: ["auto", t]
      }],
      /**
       * Appearance
       * @see https://tailwindcss.com/docs/appearance
       */
      appearance: ["appearance-none"],
      /**
       * Cursor
       * @see https://tailwindcss.com/docs/cursor
       */
      cursor: [{
        cursor: ["auto", "default", "pointer", "wait", "text", "move", "help", "not-allowed", "none", "context-menu", "progress", "cell", "crosshair", "vertical-text", "alias", "copy", "no-drop", "grab", "grabbing", "all-scroll", "col-resize", "row-resize", "n-resize", "e-resize", "s-resize", "w-resize", "ne-resize", "nw-resize", "se-resize", "sw-resize", "ew-resize", "ns-resize", "nesw-resize", "nwse-resize", "zoom-in", "zoom-out", g]
      }],
      /**
       * Caret Color
       * @see https://tailwindcss.com/docs/just-in-time-mode#caret-color-utilities
       */
      "caret-color": [{
        caret: [t]
      }],
      /**
       * Pointer Events
       * @see https://tailwindcss.com/docs/pointer-events
       */
      "pointer-events": [{
        "pointer-events": ["none", "auto"]
      }],
      /**
       * Resize
       * @see https://tailwindcss.com/docs/resize
       */
      resize: [{
        resize: ["none", "y", "x", ""]
      }],
      /**
       * Scroll Behavior
       * @see https://tailwindcss.com/docs/scroll-behavior
       */
      "scroll-behavior": [{
        scroll: ["auto", "smooth"]
      }],
      /**
       * Scroll Margin
       * @see https://tailwindcss.com/docs/scroll-margin
       */
      "scroll-m": [{
        "scroll-m": y()
      }],
      /**
       * Scroll Margin X
       * @see https://tailwindcss.com/docs/scroll-margin
       */
      "scroll-mx": [{
        "scroll-mx": y()
      }],
      /**
       * Scroll Margin Y
       * @see https://tailwindcss.com/docs/scroll-margin
       */
      "scroll-my": [{
        "scroll-my": y()
      }],
      /**
       * Scroll Margin Start
       * @see https://tailwindcss.com/docs/scroll-margin
       */
      "scroll-ms": [{
        "scroll-ms": y()
      }],
      /**
       * Scroll Margin End
       * @see https://tailwindcss.com/docs/scroll-margin
       */
      "scroll-me": [{
        "scroll-me": y()
      }],
      /**
       * Scroll Margin Top
       * @see https://tailwindcss.com/docs/scroll-margin
       */
      "scroll-mt": [{
        "scroll-mt": y()
      }],
      /**
       * Scroll Margin Right
       * @see https://tailwindcss.com/docs/scroll-margin
       */
      "scroll-mr": [{
        "scroll-mr": y()
      }],
      /**
       * Scroll Margin Bottom
       * @see https://tailwindcss.com/docs/scroll-margin
       */
      "scroll-mb": [{
        "scroll-mb": y()
      }],
      /**
       * Scroll Margin Left
       * @see https://tailwindcss.com/docs/scroll-margin
       */
      "scroll-ml": [{
        "scroll-ml": y()
      }],
      /**
       * Scroll Padding
       * @see https://tailwindcss.com/docs/scroll-padding
       */
      "scroll-p": [{
        "scroll-p": y()
      }],
      /**
       * Scroll Padding X
       * @see https://tailwindcss.com/docs/scroll-padding
       */
      "scroll-px": [{
        "scroll-px": y()
      }],
      /**
       * Scroll Padding Y
       * @see https://tailwindcss.com/docs/scroll-padding
       */
      "scroll-py": [{
        "scroll-py": y()
      }],
      /**
       * Scroll Padding Start
       * @see https://tailwindcss.com/docs/scroll-padding
       */
      "scroll-ps": [{
        "scroll-ps": y()
      }],
      /**
       * Scroll Padding End
       * @see https://tailwindcss.com/docs/scroll-padding
       */
      "scroll-pe": [{
        "scroll-pe": y()
      }],
      /**
       * Scroll Padding Top
       * @see https://tailwindcss.com/docs/scroll-padding
       */
      "scroll-pt": [{
        "scroll-pt": y()
      }],
      /**
       * Scroll Padding Right
       * @see https://tailwindcss.com/docs/scroll-padding
       */
      "scroll-pr": [{
        "scroll-pr": y()
      }],
      /**
       * Scroll Padding Bottom
       * @see https://tailwindcss.com/docs/scroll-padding
       */
      "scroll-pb": [{
        "scroll-pb": y()
      }],
      /**
       * Scroll Padding Left
       * @see https://tailwindcss.com/docs/scroll-padding
       */
      "scroll-pl": [{
        "scroll-pl": y()
      }],
      /**
       * Scroll Snap Align
       * @see https://tailwindcss.com/docs/scroll-snap-align
       */
      "snap-align": [{
        snap: ["start", "end", "center", "align-none"]
      }],
      /**
       * Scroll Snap Stop
       * @see https://tailwindcss.com/docs/scroll-snap-stop
       */
      "snap-stop": [{
        snap: ["normal", "always"]
      }],
      /**
       * Scroll Snap Type
       * @see https://tailwindcss.com/docs/scroll-snap-type
       */
      "snap-type": [{
        snap: ["none", "x", "y", "both"]
      }],
      /**
       * Scroll Snap Type Strictness
       * @see https://tailwindcss.com/docs/scroll-snap-type
       */
      "snap-strictness": [{
        snap: ["mandatory", "proximity"]
      }],
      /**
       * Touch Action
       * @see https://tailwindcss.com/docs/touch-action
       */
      touch: [{
        touch: ["auto", "none", "pinch-zoom", "manipulation", {
          pan: ["x", "left", "right", "y", "up", "down"]
        }]
      }],
      /**
       * User Select
       * @see https://tailwindcss.com/docs/user-select
       */
      select: [{
        select: ["none", "text", "all", "auto"]
      }],
      /**
       * Will Change
       * @see https://tailwindcss.com/docs/will-change
       */
      "will-change": [{
        "will-change": ["auto", "scroll", "contents", "transform", g]
      }],
      // SVG
      /**
       * Fill
       * @see https://tailwindcss.com/docs/fill
       */
      fill: [{
        fill: [t, "none"]
      }],
      /**
       * Stroke Width
       * @see https://tailwindcss.com/docs/stroke-width
       */
      "stroke-w": [{
        stroke: [j, ee]
      }],
      /**
       * Stroke
       * @see https://tailwindcss.com/docs/stroke
       */
      stroke: [{
        stroke: [t, "none"]
      }],
      // Accessibility
      /**
       * Screen Readers
       * @see https://tailwindcss.com/docs/screen-readers
       */
      sr: ["sr-only", "not-sr-only"]
    },
    conflictingClassGroups: {
      overflow: ["overflow-x", "overflow-y"],
      overscroll: ["overscroll-x", "overscroll-y"],
      inset: ["inset-x", "inset-y", "start", "end", "top", "right", "bottom", "left"],
      "inset-x": ["right", "left"],
      "inset-y": ["top", "bottom"],
      flex: ["basis", "grow", "shrink"],
      gap: ["gap-x", "gap-y"],
      p: ["px", "py", "ps", "pe", "pt", "pr", "pb", "pl"],
      px: ["pr", "pl"],
      py: ["pt", "pb"],
      m: ["mx", "my", "ms", "me", "mt", "mr", "mb", "ml"],
      mx: ["mr", "ml"],
      my: ["mt", "mb"],
      "font-size": ["leading"],
      "fvn-normal": ["fvn-ordinal", "fvn-slashed-zero", "fvn-figure", "fvn-spacing", "fvn-fraction"],
      "fvn-ordinal": ["fvn-normal"],
      "fvn-slashed-zero": ["fvn-normal"],
      "fvn-figure": ["fvn-normal"],
      "fvn-spacing": ["fvn-normal"],
      "fvn-fraction": ["fvn-normal"],
      rounded: ["rounded-s", "rounded-e", "rounded-t", "rounded-r", "rounded-b", "rounded-l", "rounded-ss", "rounded-se", "rounded-ee", "rounded-es", "rounded-tl", "rounded-tr", "rounded-br", "rounded-bl"],
      "rounded-s": ["rounded-ss", "rounded-es"],
      "rounded-e": ["rounded-se", "rounded-ee"],
      "rounded-t": ["rounded-tl", "rounded-tr"],
      "rounded-r": ["rounded-tr", "rounded-br"],
      "rounded-b": ["rounded-br", "rounded-bl"],
      "rounded-l": ["rounded-tl", "rounded-bl"],
      "border-spacing": ["border-spacing-x", "border-spacing-y"],
      "border-w": ["border-w-s", "border-w-e", "border-w-t", "border-w-r", "border-w-b", "border-w-l"],
      "border-w-x": ["border-w-r", "border-w-l"],
      "border-w-y": ["border-w-t", "border-w-b"],
      "border-color": ["border-color-t", "border-color-r", "border-color-b", "border-color-l"],
      "border-color-x": ["border-color-r", "border-color-l"],
      "border-color-y": ["border-color-t", "border-color-b"],
      "scroll-m": ["scroll-mx", "scroll-my", "scroll-ms", "scroll-me", "scroll-mt", "scroll-mr", "scroll-mb", "scroll-ml"],
      "scroll-mx": ["scroll-mr", "scroll-ml"],
      "scroll-my": ["scroll-mt", "scroll-mb"],
      "scroll-p": ["scroll-px", "scroll-py", "scroll-ps", "scroll-pe", "scroll-pt", "scroll-pr", "scroll-pb", "scroll-pl"],
      "scroll-px": ["scroll-pr", "scroll-pl"],
      "scroll-py": ["scroll-pt", "scroll-pb"]
    },
    conflictingClassGroupModifiers: {
      "font-size": ["leading"]
    }
  };
}
var Jr = /* @__PURE__ */ Vr(Zr);
var Xr = typeof window > "u";
function xe(t, e, r, n) {
  var o, i = 0;
  typeof e != "boolean" && (n = r, r = e, e = void 0);
  function a() {
    var l = this, u = (/* @__PURE__ */ new Date()).valueOf() - i, d = arguments;
    function c() {
      i = (/* @__PURE__ */ new Date()).valueOf(), r.apply(l, d);
    }
    function f() {
      o = void 0;
    }
    n && !o && c(), o && clearTimeout(o);
    var v = n === void 0;
    v && u > t ? c() : e !== !0 && (o = setTimeout(n ? f : c, v ? t - u : t));
  }
  function s() {
    o && (clearTimeout(o), o = null);
  }
  return a._cancel = s, a;
}
function et(t, e, r) {
  return r === void 0 ? xe(t, e, !1) : xe(t, r, e !== !1);
}
var rt = function() {
  if (!Xr) {
    var e = O.ref(""), r = ["2xl", "xl", "lg", "md", "sm"], n = {
      "2xl": window.matchMedia("(min-width:1536px)"),
      xl: window.matchMedia("(min-width:1280px)"),
      lg: window.matchMedia("(min-width:1024px)"),
      md: window.matchMedia("(min-width:768px)"),
      sm: window.matchMedia("(min-width:640px)")
    }, o = function() {
      for (var s = 0; s < r.length; s++) {
        var l = r[s];
        if (n[l].matches) {
          e.value = l;
          return;
        }
      }
      e.value = "default";
    }, i = et(0, function() {
      return o();
    });
    return o(), r.forEach(function(a) {
      return n[a].addEventListener("change", i);
    }), O.onBeforeUnmount(function() {
      r.forEach(function(a) {
        return n[a].removeEventListener("change", i);
      });
    }), {
      current: e
    };
  }
};
function $t() {
  var t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 100, e = O.ref(0), r;
  function n() {
    r = requestAnimationFrame(function() {
      e.value++, !(e.value >= t) && n();
    });
  }
  function o() {
    r && (cancelAnimationFrame(r), r = 0);
  }
  return n(), O.onBeforeUnmount(function() {
    return o();
  }), {
    defer: function(a) {
      return e.value >= a;
    },
    reset: function() {
      o(), e.value = 0, n();
    },
    cancel: o
  };
}
var tt = function(e) {
  var r = e.getCurrentInstance, n = e.isVue2, o = e.nextTick, i = e.onUnmounted;
  return function() {
    var a = r().proxy;
    n || Object.defineProperty(a, "$scopedSlots", {
      configurable: !0,
      value: null
    }), Object.defineProperty(a, "instanceSlots", {
      configurable: !0,
      get: function() {
        return a.$scopedSlots || a.$slots;
      }
    }), i(function() {
      o(function() {
        n || delete a.$scopedSlots, delete a.instanceSlots;
      });
    });
  };
}, nt = function() {
}, ot = function(e) {
  var r = e.onMounted, n = e.onActivated, o = e.nextTick;
  return function(i) {
    var a;
    r(function() {
      i(), o(function() {
        return a = !0;
      });
    }), n(function() {
      return a && i();
    });
  };
}, it = function(e) {
  var r = e.getCurrentInstance, n = e.inject, o = e.markRaw, i = e.nextTick, a = e.onMounted, s = e.onActivated, l = e.onUnmounted, u = e.provide, d = e.reactive, c = e.toRef;
  return function() {
    var f = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}, v = f.relationKey, h = f.relationContainer, b = f.onChange, m = f.childrenKey;
    if (!v)
      throw new Error("[TINY Error]<relationKey> must exist.");
    var w = r(), p = d({
      children: []
    }), $ = n(v, null), C = [];
    if ($) {
      var A = $.link, M = $.unlink, S = $.callbacks, T = $.childrenKey;
      C = S, m = m || T || "instanceChildren", A(w), l(function() {
        return M(w);
      });
    } else {
      m = m || "instanceChildren";
      var E = ot({
        onMounted: a,
        onActivated: s,
        nextTick: i
      }), F = b ? function() {
        return i(b);
      } : nt, G;
      i(function() {
        var I = typeof h == "function" ? h() : h;
        I && (G = new MutationObserver(function(V, R) {
          var L = [];
          at(I.childNodes, L), C.forEach(function(W) {
            return W(L, V, R);
          }), F();
        }), G.observe(I, {
          attributes: !0,
          childList: !0,
          subtree: !0
        }));
      }), E(function() {
        return F();
      }), l(function() {
        G && (G.disconnect(), G = null), C = null;
      });
    }
    var y = function(V) {
      return p.children.push(o(V.proxy));
    }, J = function(V) {
      var R = p.children.indexOf(V.proxy);
      R > -1 && p.children.splice(R, 1);
    };
    return C.push(function(I) {
      return st(p.children, I);
    }), u(v, {
      link: y,
      unlink: J,
      callbacks: C,
      childrenKey: m
    }), Object.defineProperty(w.proxy, m, {
      configurable: !0,
      get: function() {
        return p.children;
      }
    }), l(function() {
      return delete w.proxy[m];
    }), {
      children: c(p, "children")
    };
  };
}, at = function t(e, r) {
  e.length && e.forEach(function(n) {
    r.push(n), n.childNodes && t(n.childNodes, r);
  });
}, st = function(e, r) {
  e.sort(function(n, o) {
    return r.indexOf(n.$el) - r.indexOf(o.$el);
  });
};
const At = "3.17.0";
var Ot = tt(_(_({}, O), {}, {
  isVue2: Ie
})), Mt = it(_(_({}, O), {}, {
  isVue2: Ie
})), te = "Tiny", lt = {
  tiny_mode: String,
  tiny_mode_root: Boolean,
  tiny_template: [Function, Object],
  tiny_renderless: Function,
  tiny_theme: String,
  tiny_chart_theme: Object
}, ut = ["tiny_mode", "tiny_mode_root", "tiny_template", "tiny_renderless", "_constants", "tiny_theme", "tiny_chart_theme"], pe = function(e, r) {
  var n = function(c) {
    return ~["pc", "mobile", "mobile-first"].indexOf(c);
  }, o = de(), i = typeof e.tiny_mode == "string" ? e.tiny_mode : null, a = O.inject("TinyMode", null), s;
  typeof o.tiny_mode == "string" ? s = o.tiny_mode : o.tiny_mode && (s = o.tiny_mode.value), n(i) || (i = null), n(a) || (a = null), n(s) || (s = null);
  var l = i || a || s || "pc";
  e.tiny_mode_root && O.provide("TinyMode", l);
  var u = O.getCurrentInstance();
  return u = u.proxy, Object.defineProperty(u, "_tiny_mode", {
    value: l
  }), l;
}, ct = function(e, r) {
  var n = function(d) {
    return ~["tiny", "saas"].indexOf(d);
  }, o = de(), i = typeof e.tiny_theme == "string" ? e.tiny_theme : null, a = O.inject("TinyTheme", null), s = o.tiny_theme && o.tiny_theme.value;
  n(i) || (i = null), n(a) || (a = null), n(s) || (s = null);
  var l = i || a || s || "tiny";
  return l;
}, dt = function(e, r) {
  var n = de(), o = z(e.tiny_chart_theme) === "object" ? e.tiny_chart_theme : null, i = O.inject("TinyChartTheme", null), a = n.tiny_chart_theme && n.tiny_chart_theme.value, s = o || i || a || null;
  return s;
}, ft = function(e) {
  var r = e.props, n = e.context, o = e.template, i = e.extend, a = i === void 0 ? {} : i, s = pe(r), l = O.computed(function() {
    if (typeof r.tiny_template < "u")
      return r.tiny_template;
    var u = o(s, r);
    return typeof u == "function" ? $e(u) : u;
  });
  return Ae({
    view: l,
    props: r,
    context: n,
    extend: a
  });
}, ce = function() {
  for (var e = arguments.length, r = new Array(e), n = 0; n < e; n++)
    r[n] = arguments[n];
  return Jr(Ar(r));
}, ne = {
  configKey: Symbol("designConfigKey"),
  configInstance: null
}, St = function(e) {
  Object.keys(e).length && (O.provide(ne.configKey, e), ne.configInstance = e);
}, pt = xr(ne), vt = {
  designConfig: null
}, mt = function(e) {
  var r, n, o = e.props, i = e.context, a = e.renderless, s = e.api, l = e.extendOptions, u = l === void 0 ? {} : l, d = e.mono, c = d === void 0 ? !1 : d, f = e.classes, v = f === void 0 ? {} : f, h = typeof o.tiny_renderless == "function" ? o.tiny_renderless : a, b = vt.designConfig || O.inject(ne.configKey, {}), m = b == null || (r = b.components) === null || r === void 0 ? void 0 : r[sr().replace(te, "")], w = (typeof process > "u" ? "undefined" : z(process)) === "object" ? (n = process.env) === null || n === void 0 ? void 0 : n.TINY_MODE : null, p = _(_({
    $prefix: te,
    t: me
  }, vr(i, pe(o))), {}, {
    designConfig: m,
    globalDesignConfig: b,
    useBreakpoint: rt
  });
  w !== "pc" && (p.mergeClass = ce), p.vm.theme = ct(o), p.vm.chartTheme = dt(o);
  var $ = h(o, O, p, u);
  typeof (m == null ? void 0 : m.renderless) == "function" && Object.assign($, m.renderless(o, O, p, $));
  var C = {
    t: me,
    vm: p.vm,
    f: Ke,
    a: ze,
    d: p.defineInstanceProperties,
    dp: p.defineParentInstanceProperties,
    gcls: function(M) {
      return qe(v, M);
    }
  };
  return w !== "pc" && (C.m = ce), C.d({
    slots: {
      get: function() {
        return p.vm.$slots;
      },
      configurable: !0
    },
    scopedSlots: {
      get: function() {
        return p.vm.$scopedSlots;
      },
      configurable: !0
    }
  }), C.dp({
    slots: {
      get: function() {
        return p.parent.$slots;
      },
      configurable: !0
    },
    scopedSlots: {
      get: function() {
        return p.parent.$scopedSlots;
      },
      configurable: !0
    }
  }), Ve(), Array.isArray(s) && (Array.isArray(m == null ? void 0 : m.api) && (s = s.concat(m.api)), s.forEach(function(A) {
    var M = $[A];
    typeof M < "u" && (C[A] = M, c || p.setParentAttribute({
      name: A,
      value: M
    }));
  })), C;
};
function gt(t) {
  var e = t.name, r = e === void 0 ? "Icon" : e, n = t.component;
  return function(o) {
    return ar(wr({
      name: te + r,
      setup: function(a, s) {
        var l, u = s.attrs || {}, d = u.fill, c = u.width, f = u.height, v = u["custom-class"], h = Object.assign({}, a, o || null), b = pe(h), m = b === "mobile-first", w = {
          "data-tag": m ? "tiny-svg" : null
        }, p = {
          attrs: w
        }, $ = "tiny-svg", C = (typeof process > "u" ? "undefined" : z(process)) === "object" ? (l = process.env) === null || l === void 0 ? void 0 : l.TINY_MODE : null;
        C !== "pc" && m && ($ = ce("h-4 w-4 inline-block", v || "", h.class || ""));
        var A = Object.assign({
          style: {
            fill: d,
            width: c,
            height: f
          },
          class: $,
          isSvg: !0
        }, p);
        return A.nativeOn = s.listeners, Ae({
          component: n,
          props: h,
          context: s,
          extend: A
        });
      }
    }));
  };
}
var ze = function(e, r, n) {
  var o = {}, i = function(l) {
    var u = r.some(function(d) {
      return new RegExp(d).test(l);
    });
    (n && u || !n && !u) && (o[l] = e[l]);
  };
  for (var a in e)
    i(a);
  return o;
}, re = {}, Ve = function() {
  for (var e in re) {
    var r = re[e];
    typeof r.install == "function" && r.install(lr()), typeof r.init == "function" && r.init(ur());
  }
  re = {};
}, bt = function(e) {
  e.install = function(r) {
    r.component(e.name, e);
  };
};
const kt = {
  h: yr,
  directive: mr,
  parseVnode: br,
  isEmptyVnode: hr,
  useRouter: Oe,
  emitter: we,
  createComponent: pt,
  defineAsyncComponent: $e,
  filterAttrs: ze,
  initComponent: Ve,
  setupComponent: re,
  svg: gt,
  $prefix: te,
  $props: lt,
  props: ut,
  $setup: ft,
  setup: mt,
  hooks: O,
  getElementStatusClass: He,
  $install: bt,
  isVnode: Cr
};
export {
  bt as $install,
  te as $prefix,
  lt as $props,
  ft as $setup,
  Ct as KeepAlive,
  xt as Teleport,
  ur as appProperties,
  pt as createComponent,
  vt as customDesignConfig,
  kt as default,
  $e as defineAsyncComponent,
  wr as defineComponent,
  ne as design,
  mr as directive,
  we as emitter,
  ze as filterAttrs,
  He as getElementStatusClass,
  yr as h,
  O as hooks,
  Ve as initComponent,
  hr as isEmptyVnode,
  Cr as isVnode,
  Ie as isVue2,
  wt as isVue3,
  ce as mergeClass,
  br as parseVnode,
  ut as props,
  St as provideDesignConfig,
  pe as resolveMode,
  ct as resolveTheme,
  mt as setup,
  re as setupComponent,
  gt as svg,
  rt as useBreakpoint,
  $t as useDefer,
  Ot as useInstanceSlots,
  Mt as useRelation,
  Oe as useRouter,
  At as version
};
