w-aggrid-vue
Version:
A wrapper for ag-grid-vue.
8 lines • 536 kB
JavaScript
/*!
* w-aggrid-vue v2.0.54
* (c) 2018-2021 yuda-lyu(semisphere)
* Released under the MIT License.
*/
!function(n,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("xlsx"),require("ag-grid-vue")):"function"==typeof define&&define.amd?define(["xlsx","ag-grid-vue"],e):(n="undefined"!=typeof globalThis?globalThis:n||self)["w-aggrid-vue"]=e(n.XLSX,n["ag-grid-vue"])}(this,(function(n,e){"use strict";function a(n){var e=Object.create(null);return n&&Object.keys(n).forEach((function(a){if("default"!==a){var r=Object.getOwnPropertyDescriptor(n,a);Object.defineProperty(e,a,r.get?r:{enumerable:!0,get:function(){return n[a]}})}})),e.default=n,Object.freeze(e)}var r=a(n),o=a(e);function t(n,e){for(var a=-1,r=null==n?0:n.length,o=Array(r);++a<r;)o[a]=e(n[a],a,n);return o}function i(n,e){return n===e||n!=n&&e!=e}function l(n,e){for(var a=n.length;a--;)if(i(n[a][0],e))return a;return-1}var g=Array.prototype.splice;function c(n){var e=-1,a=null==n?0:n.length;for(this.clear();++e<a;){var r=n[e];this.set(r[0],r[1])}}c.prototype.clear=function(){this.__data__=[],this.size=0},c.prototype.delete=function(n){var e=this.__data__,a=l(e,n);return!(a<0)&&(a==e.length-1?e.pop():g.call(e,a,1),--this.size,!0)},c.prototype.get=function(n){var e=this.__data__,a=l(e,n);return a<0?void 0:e[a][1]},c.prototype.has=function(n){return l(this.__data__,n)>-1},c.prototype.set=function(n,e){var a=this.__data__,r=l(a,n);return r<0?(++this.size,a.push([n,e])):a[r][1]=e,this};var d="object"==typeof global&&global&&global.Object===Object&&global,p="object"==typeof self&&self&&self.Object===Object&&self,s=d||p||Function("return this")(),u=s.Symbol,f=Object.prototype,v=f.hasOwnProperty,h=f.toString,m=u?u.toStringTag:void 0;var w=Object.prototype.toString;var b="[object Null]",y="[object Undefined]",k=u?u.toStringTag:void 0;function x(n){return null==n?void 0===n?y:b:k&&k in Object(n)?function(n){var e=v.call(n,m),a=n[m];try{n[m]=void 0;var r=!0}catch(n){}var o=h.call(n);return r&&(e?n[m]=a:delete n[m]),o}(n):function(n){return w.call(n)}(n)}function z(n){var e=typeof n;return null!=n&&("object"==e||"function"==e)}var M="[object AsyncFunction]",C="[object Function]",D="[object GeneratorFunction]",j="[object Proxy]";function A(n){if(!z(n))return!1;var e=x(n);return e==C||e==D||e==M||e==j}var T,E=s["__core-js_shared__"],S=(T=/[^.]+$/.exec(E&&E.keys&&E.keys.IE_PROTO||""))?"Symbol(src)_1."+T:"";var O=Function.prototype.toString;function N(n){if(null!=n){try{return O.call(n)}catch(n){}try{return n+""}catch(n){}}return""}var L=/^\[object .+?Constructor\]$/,H=Function.prototype,I=Object.prototype,F=H.toString,R=I.hasOwnProperty,P=RegExp("^"+F.call(R).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function B(n){return!(!z(n)||(e=n,S&&S in e))&&(A(n)?P:L).test(N(n));var e}function U(n,e){var a=function(n,e){return null==n?void 0:n[e]}(n,e);return B(a)?a:void 0}var V=U(s,"Map"),W=U(Object,"create");var _=Object.prototype.hasOwnProperty;var G=Object.prototype.hasOwnProperty;function Q(n){var e=-1,a=null==n?0:n.length;for(this.clear();++e<a;){var r=n[e];this.set(r[0],r[1])}}function Y(n,e){var a,r,o=n.__data__;return("string"==(r=typeof(a=e))||"number"==r||"symbol"==r||"boolean"==r?"__proto__"!==a:null===a)?o["string"==typeof e?"string":"hash"]:o.map}function K(n){var e=-1,a=null==n?0:n.length;for(this.clear();++e<a;){var r=n[e];this.set(r[0],r[1])}}Q.prototype.clear=function(){this.__data__=W?W(null):{},this.size=0},Q.prototype.delete=function(n){var e=this.has(n)&&delete this.__data__[n];return this.size-=e?1:0,e},Q.prototype.get=function(n){var e=this.__data__;if(W){var a=e[n];return"__lodash_hash_undefined__"===a?void 0:a}return _.call(e,n)?e[n]:void 0},Q.prototype.has=function(n){var e=this.__data__;return W?void 0!==e[n]:G.call(e,n)},Q.prototype.set=function(n,e){var a=this.__data__;return this.size+=this.has(n)?0:1,a[n]=W&&void 0===e?"__lodash_hash_undefined__":e,this},K.prototype.clear=function(){this.size=0,this.__data__={hash:new Q,map:new(V||c),string:new Q}},K.prototype.delete=function(n){var e=Y(this,n).delete(n);return this.size-=e?1:0,e},K.prototype.get=function(n){return Y(this,n).get(n)},K.prototype.has=function(n){return Y(this,n).has(n)},K.prototype.set=function(n,e){var a=Y(this,n),r=a.size;return a.set(n,e),this.size+=a.size==r?0:1,this};function q(n){var e=this.__data__=new c(n);this.size=e.size}q.prototype.clear=function(){this.__data__=new c,this.size=0},q.prototype.delete=function(n){var e=this.__data__,a=e.delete(n);return this.size=e.size,a},q.prototype.get=function(n){return this.__data__.get(n)},q.prototype.has=function(n){return this.__data__.has(n)},q.prototype.set=function(n,e){var a=this.__data__;if(a instanceof c){var r=a.__data__;if(!V||r.length<199)return r.push([n,e]),this.size=++a.size,this;a=this.__data__=new K(r)}return a.set(n,e),this.size=a.size,this};function X(n){var e=-1,a=null==n?0:n.length;for(this.__data__=new K;++e<a;)this.add(n[e])}function J(n,e){for(var a=-1,r=null==n?0:n.length;++a<r;)if(e(n[a],a,n))return!0;return!1}function Z(n,e){return n.has(e)}X.prototype.add=X.prototype.push=function(n){return this.__data__.set(n,"__lodash_hash_undefined__"),this},X.prototype.has=function(n){return this.__data__.has(n)};var $=1,nn=2;function en(n,e,a,r,o,t){var i=a&$,l=n.length,g=e.length;if(l!=g&&!(i&&g>l))return!1;var c=t.get(n),d=t.get(e);if(c&&d)return c==e&&d==n;var p=-1,s=!0,u=a&nn?new X:void 0;for(t.set(n,e),t.set(e,n);++p<l;){var f=n[p],v=e[p];if(r)var h=i?r(v,f,p,e,n,t):r(f,v,p,n,e,t);if(void 0!==h){if(h)continue;s=!1;break}if(u){if(!J(e,(function(n,e){if(!Z(u,e)&&(f===n||o(f,n,a,r,t)))return u.push(e)}))){s=!1;break}}else if(f!==v&&!o(f,v,a,r,t)){s=!1;break}}return t.delete(n),t.delete(e),s}var an=s.Uint8Array;function rn(n){var e=-1,a=Array(n.size);return n.forEach((function(n,r){a[++e]=[r,n]})),a}function on(n){var e=-1,a=Array(n.size);return n.forEach((function(n){a[++e]=n})),a}var tn=1,ln=2,gn="[object Boolean]",cn="[object Date]",dn="[object Error]",pn="[object Map]",sn="[object Number]",un="[object RegExp]",fn="[object Set]",vn="[object String]",hn="[object Symbol]",mn="[object ArrayBuffer]",wn="[object DataView]",bn=u?u.prototype:void 0,yn=bn?bn.valueOf:void 0;function kn(n,e){for(var a=-1,r=e.length,o=n.length;++a<r;)n[o+a]=e[a];return n}var xn=Array.isArray;function zn(n,e,a){var r=e(n);return xn(n)?r:kn(r,a(n))}function Mn(n,e){for(var a=-1,r=null==n?0:n.length,o=0,t=[];++a<r;){var i=n[a];e(i,a,n)&&(t[o++]=i)}return t}function Cn(){return[]}var Dn=Object.prototype.propertyIsEnumerable,jn=Object.getOwnPropertySymbols,An=jn?function(n){return null==n?[]:(n=Object(n),Mn(jn(n),(function(e){return Dn.call(n,e)})))}:Cn;function Tn(n){return null!=n&&"object"==typeof n}function En(n){return Tn(n)&&"[object Arguments]"==x(n)}var Sn=Object.prototype,On=Sn.hasOwnProperty,Nn=Sn.propertyIsEnumerable,Ln=En(function(){return arguments}())?En:function(n){return Tn(n)&&On.call(n,"callee")&&!Nn.call(n,"callee")},Hn=Ln;var In="object"==typeof exports&&exports&&!exports.nodeType&&exports,Fn=In&&"object"==typeof module&&module&&!module.nodeType&&module,Rn=Fn&&Fn.exports===In?s.Buffer:void 0,Pn=(Rn?Rn.isBuffer:void 0)||function(){return!1},Bn=9007199254740991,Un=/^(?:0|[1-9]\d*)$/;function Vn(n,e){var a=typeof n;return!!(e=null==e?Bn:e)&&("number"==a||"symbol"!=a&&Un.test(n))&&n>-1&&n%1==0&&n<e}var Wn=9007199254740991;function _n(n){return"number"==typeof n&&n>-1&&n%1==0&&n<=Wn}var Gn={};function Qn(n){return function(e){return n(e)}}Gn["[object Float32Array]"]=Gn["[object Float64Array]"]=Gn["[object Int8Array]"]=Gn["[object Int16Array]"]=Gn["[object Int32Array]"]=Gn["[object Uint8Array]"]=Gn["[object Uint8ClampedArray]"]=Gn["[object Uint16Array]"]=Gn["[object Uint32Array]"]=!0,Gn["[object Arguments]"]=Gn["[object Array]"]=Gn["[object ArrayBuffer]"]=Gn["[object Boolean]"]=Gn["[object DataView]"]=Gn["[object Date]"]=Gn["[object Error]"]=Gn["[object Function]"]=Gn["[object Map]"]=Gn["[object Number]"]=Gn["[object Object]"]=Gn["[object RegExp]"]=Gn["[object Set]"]=Gn["[object String]"]=Gn["[object WeakMap]"]=!1;var Yn="object"==typeof exports&&exports&&!exports.nodeType&&exports,Kn=Yn&&"object"==typeof module&&module&&!module.nodeType&&module,qn=Kn&&Kn.exports===Yn&&d.process,Xn=function(){try{var n=Kn&&Kn.require&&Kn.require("util").types;return n||qn&&qn.binding&&qn.binding("util")}catch(n){}}(),Jn=Xn&&Xn.isTypedArray,Zn=Jn?Qn(Jn):function(n){return Tn(n)&&_n(n.length)&&!!Gn[x(n)]},$n=Object.prototype.hasOwnProperty;function ne(n,e){var a=xn(n),r=!a&&Hn(n),o=!a&&!r&&Pn(n),t=!a&&!r&&!o&&Zn(n),i=a||r||o||t,l=i?function(n,e){for(var a=-1,r=Array(n);++a<n;)r[a]=e(a);return r}(n.length,String):[],g=l.length;for(var c in n)!e&&!$n.call(n,c)||i&&("length"==c||o&&("offset"==c||"parent"==c)||t&&("buffer"==c||"byteLength"==c||"byteOffset"==c)||Vn(c,g))||l.push(c);return l}var ee=Object.prototype;function ae(n){var e=n&&n.constructor;return n===("function"==typeof e&&e.prototype||ee)}function re(n,e){return function(a){return n(e(a))}}var oe=re(Object.keys,Object),te=Object.prototype.hasOwnProperty;function ie(n){if(!ae(n))return oe(n);var e=[];for(var a in Object(n))te.call(n,a)&&"constructor"!=a&&e.push(a);return e}function le(n){return null!=n&&_n(n.length)&&!A(n)}function ge(n){return le(n)?ne(n):ie(n)}function ce(n){return zn(n,ge,An)}var de=1,pe=Object.prototype.hasOwnProperty;var se=U(s,"DataView"),ue=U(s,"Promise"),fe=U(s,"Set"),ve=U(s,"WeakMap"),he="[object Map]",me="[object Promise]",we="[object Set]",be="[object WeakMap]",ye="[object DataView]",ke=N(se),xe=N(V),ze=N(ue),Me=N(fe),Ce=N(ve),De=x;(se&&De(new se(new ArrayBuffer(1)))!=ye||V&&De(new V)!=he||ue&&De(ue.resolve())!=me||fe&&De(new fe)!=we||ve&&De(new ve)!=be)&&(De=function(n){var e=x(n),a="[object Object]"==e?n.constructor:void 0,r=a?N(a):"";if(r)switch(r){case ke:return ye;case xe:return he;case ze:return me;case Me:return we;case Ce:return be}return e});var je=De,Ae=1,Te="[object Arguments]",Ee="[object Array]",Se="[object Object]",Oe=Object.prototype.hasOwnProperty;function Ne(n,e,a,r,o,t){var l=xn(n),g=xn(e),c=l?Ee:je(n),d=g?Ee:je(e),p=(c=c==Te?Se:c)==Se,s=(d=d==Te?Se:d)==Se,u=c==d;if(u&&Pn(n)){if(!Pn(e))return!1;l=!0,p=!1}if(u&&!p)return t||(t=new q),l||Zn(n)?en(n,e,a,r,o,t):function(n,e,a,r,o,t,l){switch(a){case wn:if(n.byteLength!=e.byteLength||n.byteOffset!=e.byteOffset)return!1;n=n.buffer,e=e.buffer;case mn:return!(n.byteLength!=e.byteLength||!t(new an(n),new an(e)));case gn:case cn:case sn:return i(+n,+e);case dn:return n.name==e.name&&n.message==e.message;case un:case vn:return n==e+"";case pn:var g=rn;case fn:var c=r&tn;if(g||(g=on),n.size!=e.size&&!c)return!1;var d=l.get(n);if(d)return d==e;r|=ln,l.set(n,e);var p=en(g(n),g(e),r,o,t,l);return l.delete(n),p;case hn:if(yn)return yn.call(n)==yn.call(e)}return!1}(n,e,c,a,r,o,t);if(!(a&Ae)){var f=p&&Oe.call(n,"__wrapped__"),v=s&&Oe.call(e,"__wrapped__");if(f||v){var h=f?n.value():n,m=v?e.value():e;return t||(t=new q),o(h,m,a,r,t)}}return!!u&&(t||(t=new q),function(n,e,a,r,o,t){var i=a&de,l=ce(n),g=l.length;if(g!=ce(e).length&&!i)return!1;for(var c=g;c--;){var d=l[c];if(!(i?d in e:pe.call(e,d)))return!1}var p=t.get(n),s=t.get(e);if(p&&s)return p==e&&s==n;var u=!0;t.set(n,e),t.set(e,n);for(var f=i;++c<g;){var v=n[d=l[c]],h=e[d];if(r)var m=i?r(h,v,d,e,n,t):r(v,h,d,n,e,t);if(!(void 0===m?v===h||o(v,h,a,r,t):m)){u=!1;break}f||(f="constructor"==d)}if(u&&!f){var w=n.constructor,b=e.constructor;w==b||!("constructor"in n)||!("constructor"in e)||"function"==typeof w&&w instanceof w&&"function"==typeof b&&b instanceof b||(u=!1)}return t.delete(n),t.delete(e),u}(n,e,a,r,o,t))}function Le(n,e,a,r,o){return n===e||(null==n||null==e||!Tn(n)&&!Tn(e)?n!=n&&e!=e:Ne(n,e,a,r,Le,o))}var He=1,Ie=2;function Fe(n){return n==n&&!z(n)}function Re(n,e){return function(a){return null!=a&&(a[n]===e&&(void 0!==e||n in Object(a)))}}function Pe(n){var e=function(n){for(var e=ge(n),a=e.length;a--;){var r=e[a],o=n[r];e[a]=[r,o,Fe(o)]}return e}(n);return 1==e.length&&e[0][2]?Re(e[0][0],e[0][1]):function(a){return a===n||function(n,e,a,r){var o=a.length,t=o,i=!r;if(null==n)return!t;for(n=Object(n);o--;){var l=a[o];if(i&&l[2]?l[1]!==n[l[0]]:!(l[0]in n))return!1}for(;++o<t;){var g=(l=a[o])[0],c=n[g],d=l[1];if(i&&l[2]){if(void 0===c&&!(g in n))return!1}else{var p=new q;if(r)var s=r(c,d,g,n,e,p);if(!(void 0===s?Le(d,c,He|Ie,r,p):s))return!1}}return!0}(a,n,e)}}var Be="[object Symbol]";function Ue(n){return"symbol"==typeof n||Tn(n)&&x(n)==Be}var Ve=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,We=/^\w*$/;function _e(n,e){if(xn(n))return!1;var a=typeof n;return!("number"!=a&&"symbol"!=a&&"boolean"!=a&&null!=n&&!Ue(n))||(We.test(n)||!Ve.test(n)||null!=e&&n in Object(e))}var Ge="Expected a function";function Qe(n,e){if("function"!=typeof n||null!=e&&"function"!=typeof e)throw new TypeError(Ge);var a=function(){var r=arguments,o=e?e.apply(this,r):r[0],t=a.cache;if(t.has(o))return t.get(o);var i=n.apply(this,r);return a.cache=t.set(o,i)||t,i};return a.cache=new(Qe.Cache||K),a}Qe.Cache=K;var Ye,Ke,qe,Xe=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Je=/\\(\\)?/g,Ze=(Ye=function(n){var e=[];return 46===n.charCodeAt(0)&&e.push(""),n.replace(Xe,(function(n,a,r,o){e.push(r?o.replace(Je,"$1"):a||n)})),e},Ke=Qe(Ye,(function(n){return 500===qe.size&&qe.clear(),n})),qe=Ke.cache,Ke),$e=Ze,na=1/0,ea=u?u.prototype:void 0,aa=ea?ea.toString:void 0;function ra(n){if("string"==typeof n)return n;if(xn(n))return t(n,ra)+"";if(Ue(n))return aa?aa.call(n):"";var e=n+"";return"0"==e&&1/n==-na?"-0":e}function oa(n){return null==n?"":ra(n)}function ta(n,e){return xn(n)?n:_e(n,e)?[n]:$e(oa(n))}var ia=1/0;function la(n){if("string"==typeof n||Ue(n))return n;var e=n+"";return"0"==e&&1/n==-ia?"-0":e}function ga(n,e){for(var a=0,r=(e=ta(e,n)).length;null!=n&&a<r;)n=n[la(e[a++])];return a&&a==r?n:void 0}function ca(n,e,a){var r=null==n?void 0:ga(n,e);return void 0===r?a:r}function da(n,e){return null!=n&&e in Object(n)}function pa(n,e){return null!=n&&function(n,e,a){for(var r=-1,o=(e=ta(e,n)).length,t=!1;++r<o;){var i=la(e[r]);if(!(t=null!=n&&a(n,i)))break;n=n[i]}return t||++r!=o?t:!!(o=null==n?0:n.length)&&_n(o)&&Vn(i,o)&&(xn(n)||Hn(n))}(n,e,da)}var sa=1,ua=2;function fa(n){return n}function va(n){return function(e){return null==e?void 0:e[n]}}function ha(n){return _e(n)?va(la(n)):function(n){return function(e){return ga(e,n)}}(n)}function ma(n){return"function"==typeof n?n:null==n?fa:"object"==typeof n?xn(n)?(e=n[0],a=n[1],_e(e)&&Fe(a)?Re(la(e),a):function(n){var r=ca(n,e);return void 0===r&&r===a?pa(n,e):Le(a,r,sa|ua)}):Pe(n):ha(n);var e,a}var wa,ba=function(n,e,a){for(var r=-1,o=Object(n),t=a(n),i=t.length;i--;){var l=t[wa?i:++r];if(!1===e(o[l],l,o))break}return n};var ya=function(n,e){return function(a,r){if(null==a)return a;if(!le(a))return n(a,r);for(var o=a.length,t=e?o:-1,i=Object(a);(e?t--:++t<o)&&!1!==r(i[t],t,i););return a}}((function(n,e){return n&&ba(n,e,ge)})),ka=ya;function xa(n,e){var a=-1,r=le(n)?Array(n.length):[];return ka(n,(function(n,o,t){r[++a]=e(n,o,t)})),r}function za(n,e){return(xn(n)?t:xa)(n,ma(e))}function Ma(n,e){for(var a=-1,r=null==n?0:n.length;++a<r&&!1!==e(n[a],a,n););return n}function Ca(n,e){var a;return(xn(n)?Ma:ka)(n,"function"==typeof(a=e)?a:fa)}var Da="[object String]";var ja=va("length"),Aa=RegExp("[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\ufe0e\\ufe0f]");function Ta(n){return Aa.test(n)}var Ea="\\ud800-\\udfff",Sa="["+Ea+"]",Oa="[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]",Na="\\ud83c[\\udffb-\\udfff]",La="[^"+Ea+"]",Ha="(?:\\ud83c[\\udde6-\\uddff]){2}",Ia="[\\ud800-\\udbff][\\udc00-\\udfff]",Fa="(?:"+Oa+"|"+Na+")"+"?",Ra="[\\ufe0e\\ufe0f]?",Pa=Ra+Fa+("(?:\\u200d(?:"+[La,Ha,Ia].join("|")+")"+Ra+Fa+")*"),Ba="(?:"+[La+Oa+"?",Oa,Ha,Ia,Sa].join("|")+")",Ua=RegExp(Na+"(?="+Na+")|"+Ba+Pa,"g");function Va(n){return Ta(n)?function(n){for(var e=Ua.lastIndex=0;Ua.test(n);)++e;return e}(n):ja(n)}var Wa="[object Map]",_a="[object Set]";function Ga(n){if(null==n)return 0;if(le(n))return"string"==typeof(e=n)||!xn(e)&&Tn(e)&&x(e)==Da?Va(n):n.length;var e,a=je(n);return a==Wa||a==_a?n.size:ie(n).length}function Qa(n,e){var a=[];return ka(n,(function(n,r,o){e(n,r,o)&&a.push(n)})),a}function Ya(n,e){return(xn(n)?Mn:Qa)(n,ma(e))}function Ka(n,e){return Le(n,e)}function qa(n,e,a,r){for(var o=n.length,t=a+(r?1:-1);r?t--:++t<o;)if(e(n[t],t,n))return t;return-1}var Xa=/\s/;var Ja=/^\s+/;function Za(n){return n?n.slice(0,function(n){for(var e=n.length;e--&&Xa.test(n.charAt(e)););return e}(n)+1).replace(Ja,""):n}var $a=NaN,nr=/^[-+]0x[0-9a-f]+$/i,er=/^0b[01]+$/i,ar=/^0o[0-7]+$/i,rr=parseInt;function or(n){if("number"==typeof n)return n;if(Ue(n))return $a;if(z(n)){var e="function"==typeof n.valueOf?n.valueOf():n;n=z(e)?e+"":e}if("string"!=typeof n)return 0===n?n:+n;n=Za(n);var a=er.test(n);return a||ar.test(n)?rr(n.slice(2),a?2:8):nr.test(n)?$a:+n}var tr=1/0,ir=17976931348623157e292;function lr(n){return n?(n=or(n))===tr||n===-tr?(n<0?-1:1)*ir:n==n?n:0:0===n?n:0}function gr(n){var e=lr(n),a=e%1;return e==e?a?e-a:e:0}var cr=Math.max;var dr,pr=(dr=function(n,e,a){var r=null==n?0:n.length;if(!r)return-1;var o=null==a?0:gr(a);return o<0&&(o=cr(r+o,0)),qa(n,ma(e),o)},function(n,e,a){var r=Object(n);if(!le(n)){var o=ma(e);n=ge(n),e=function(n){return o(r[n],n,r)}}var t=dr(n,e,a);return t>-1?r[o?n[t]:t]:void 0}),sr=function(){try{var n=U(Object,"defineProperty");return n({},"",{}),n}catch(n){}}(),ur=sr;function fr(n,e,a){"__proto__"==e&&ur?ur(n,e,{configurable:!0,enumerable:!0,value:a,writable:!0}):n[e]=a}function vr(n,e,a){(void 0!==a&&!i(n[e],a)||void 0===a&&!(e in n))&&fr(n,e,a)}var hr="object"==typeof exports&&exports&&!exports.nodeType&&exports,mr=hr&&"object"==typeof module&&module&&!module.nodeType&&module,wr=mr&&mr.exports===hr?s.Buffer:void 0,br=wr?wr.allocUnsafe:void 0;function yr(n,e){if(e)return n.slice();var a=n.length,r=br?br(a):new n.constructor(a);return n.copy(r),r}function kr(n){var e=new n.constructor(n.byteLength);return new an(e).set(new an(n)),e}function xr(n,e){var a=e?kr(n.buffer):n.buffer;return new n.constructor(a,n.byteOffset,n.length)}function zr(n,e){var a=-1,r=n.length;for(e||(e=Array(r));++a<r;)e[a]=n[a];return e}var Mr=Object.create,Cr=function(){function n(){}return function(e){if(!z(e))return{};if(Mr)return Mr(e);n.prototype=e;var a=new n;return n.prototype=void 0,a}}(),Dr=Cr,jr=re(Object.getPrototypeOf,Object);function Ar(n){return"function"!=typeof n.constructor||ae(n)?{}:Dr(jr(n))}function Tr(n){return Tn(n)&&le(n)}var Er="[object Object]",Sr=Function.prototype,Or=Object.prototype,Nr=Sr.toString,Lr=Or.hasOwnProperty,Hr=Nr.call(Object);function Ir(n){if(!Tn(n)||x(n)!=Er)return!1;var e=jr(n);if(null===e)return!0;var a=Lr.call(e,"constructor")&&e.constructor;return"function"==typeof a&&a instanceof a&&Nr.call(a)==Hr}function Fr(n,e){if(("constructor"!==e||"function"!=typeof n[e])&&"__proto__"!=e)return n[e]}var Rr=Object.prototype.hasOwnProperty;function Pr(n,e,a){var r=n[e];Rr.call(n,e)&&i(r,a)&&(void 0!==a||e in n)||fr(n,e,a)}function Br(n,e,a,r){var o=!a;a||(a={});for(var t=-1,i=e.length;++t<i;){var l=e[t],g=r?r(a[l],n[l],l,a,n):void 0;void 0===g&&(g=n[l]),o?fr(a,l,g):Pr(a,l,g)}return a}var Ur=Object.prototype.hasOwnProperty;function Vr(n){if(!z(n))return function(n){var e=[];if(null!=n)for(var a in Object(n))e.push(a);return e}(n);var e=ae(n),a=[];for(var r in n)("constructor"!=r||!e&&Ur.call(n,r))&&a.push(r);return a}function Wr(n){return le(n)?ne(n,!0):Vr(n)}function _r(n,e,a,r,o,t,i){var l=Fr(n,a),g=Fr(e,a),c=i.get(g);if(c)vr(n,a,c);else{var d,p=t?t(l,g,a+"",n,e,i):void 0,s=void 0===p;if(s){var u=xn(g),f=!u&&Pn(g),v=!u&&!f&&Zn(g);p=g,u||f||v?xn(l)?p=l:Tr(l)?p=zr(l):f?(s=!1,p=yr(g,!0)):v?(s=!1,p=xr(g,!0)):p=[]:Ir(g)||Hn(g)?(p=l,Hn(l)?p=Br(d=l,Wr(d)):z(l)&&!A(l)||(p=Ar(g))):s=!1}s&&(i.set(g,p),o(p,g,r,t,i),i.delete(g)),vr(n,a,p)}}function Gr(n,e,a,r,o){n!==e&&ba(e,(function(t,i){if(o||(o=new q),z(t))_r(n,e,i,a,Gr,r,o);else{var l=r?r(Fr(n,i),t,i+"",n,e,o):void 0;void 0===l&&(l=t),vr(n,i,l)}}),Wr)}var Qr=Math.max;var Yr=ur?function(n,e){return ur(n,"toString",{configurable:!0,enumerable:!1,value:(a=e,function(){return a}),writable:!0});var a}:fa,Kr=Yr,qr=Date.now;var Xr=function(n){var e=0,a=0;return function(){var r=qr(),o=16-(r-a);if(a=r,o>0){if(++e>=800)return arguments[0]}else e=0;return n.apply(void 0,arguments)}}(Kr),Jr=Xr;function Zr(n,e){return Jr(function(n,e,a){return e=Qr(void 0===e?n.length-1:e,0),function(){for(var r=arguments,o=-1,t=Qr(r.length-e,0),i=Array(t);++o<t;)i[o]=r[e+o];o=-1;for(var l=Array(e+1);++o<e;)l[o]=r[o];return l[e]=a(i),function(n,e,a){switch(a.length){case 0:return n.call(e);case 1:return n.call(e,a[0]);case 2:return n.call(e,a[0],a[1]);case 3:return n.call(e,a[0],a[1],a[2])}return n.apply(e,a)}(n,this,l)}}(n,e,fa),n+"")}function $r(n,e,a){if(!z(a))return!1;var r=typeof e;return!!("number"==r?le(a)&&Vn(e,a.length):"string"==r&&e in a)&&i(a[e],n)}var no,eo=(no=function(n,e,a){Gr(n,e,a)},Zr((function(n,e){var a=-1,r=e.length,o=r>1?e[r-1]:void 0,t=r>2?e[2]:void 0;for(o=no.length>3&&"function"==typeof o?(r--,o):void 0,t&&$r(e[0],e[1],t)&&(o=r<3?void 0:o,r=1),n=Object(n);++a<r;){var i=e[a];i&&no(n,i,a,o)}return n})));function ao(n,e,a){return null==n?n:function(n,e,a,r){if(!z(n))return n;for(var o=-1,t=(e=ta(e,n)).length,i=t-1,l=n;null!=l&&++o<t;){var g=la(e[o]),c=a;if("__proto__"===g||"constructor"===g||"prototype"===g)return n;if(o!=i){var d=l[g];void 0===(c=r?r(d,g,l):void 0)&&(c=z(d)?d:Vn(e[o+1])?[]:{})}Pr(l,g,c),l=l[g]}return n}(n,e,a)}var ro=Array.prototype.join;function oo(n,e){return null==n?"":ro.call(n,e)}function to(n,e,a){var r=-1,o=n.length;e<0&&(e=-e>o?0:o+e),(a=a>o?o:a)<0&&(a+=o),o=e>a?0:a-e>>>0,e>>>=0;for(var t=Array(o);++r<o;)t[r]=n[r+e];return t}function io(n,e,a){var r=n.length;return a=void 0===a?r:a,!e&&a>=r?n:to(n,e,a)}var lo=Xn&&Xn.isRegExp,go=lo?Qn(lo):function(n){return Tn(n)&&"[object RegExp]"==x(n)};var co="\\ud800-\\udfff",po="["+co+"]",so="[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]",uo="\\ud83c[\\udffb-\\udfff]",fo="[^"+co+"]",vo="(?:\\ud83c[\\udde6-\\uddff]){2}",ho="[\\ud800-\\udbff][\\udc00-\\udfff]",mo="(?:"+so+"|"+uo+")"+"?",wo="[\\ufe0e\\ufe0f]?",bo=wo+mo+("(?:\\u200d(?:"+[fo,vo,ho].join("|")+")"+wo+mo+")*"),yo="(?:"+[fo+so+"?",so,vo,ho,po].join("|")+")",ko=RegExp(uo+"(?="+uo+")|"+yo+bo,"g");function xo(n){return Ta(n)?function(n){return n.match(ko)||[]}(n):function(n){return n.split("")}(n)}var zo=4294967295;function Mo(n){return null==n?[]:function(n,e){return t(e,(function(e){return n[e]}))}(n,ge(n))}var Co=Object.getOwnPropertySymbols?function(n){for(var e=[];n;)kn(e,An(n)),n=jr(n);return e}:Cn,Do=Co;function jo(n){return zn(n,Wr,Do)}var Ao=Object.prototype.hasOwnProperty;var To=/\w*$/;var Eo=u?u.prototype:void 0,So=Eo?Eo.valueOf:void 0;var Oo="[object Boolean]",No="[object Date]",Lo="[object Map]",Ho="[object Number]",Io="[object RegExp]",Fo="[object Set]",Ro="[object String]",Po="[object Symbol]",Bo="[object ArrayBuffer]",Uo="[object DataView]",Vo="[object Float32Array]",Wo="[object Float64Array]",_o="[object Int8Array]",Go="[object Int16Array]",Qo="[object Int32Array]",Yo="[object Uint8Array]",Ko="[object Uint8ClampedArray]",qo="[object Uint16Array]",Xo="[object Uint32Array]";function Jo(n,e,a){var r,o=n.constructor;switch(e){case Bo:return kr(n);case Oo:case No:return new o(+n);case Uo:return function(n,e){var a=e?kr(n.buffer):n.buffer;return new n.constructor(a,n.byteOffset,n.byteLength)}(n,a);case Vo:case Wo:case _o:case Go:case Qo:case Yo:case Ko:case qo:case Xo:return xr(n,a);case Lo:return new o;case Ho:case Ro:return new o(n);case Io:return function(n){var e=new n.constructor(n.source,To.exec(n));return e.lastIndex=n.lastIndex,e}(n);case Fo:return new o;case Po:return r=n,So?Object(So.call(r)):{}}}var Zo=Xn&&Xn.isMap,$o=Zo?Qn(Zo):function(n){return Tn(n)&&"[object Map]"==je(n)};var nt=Xn&&Xn.isSet,et=nt?Qn(nt):function(n){return Tn(n)&&"[object Set]"==je(n)},at=1,rt=2,ot=4,tt="[object Arguments]",it="[object Function]",lt="[object GeneratorFunction]",gt="[object Object]",ct={};function dt(n,e,a,r,o,t){var i,l=e&at,g=e&rt,c=e&ot;if(a&&(i=o?a(n,r,o,t):a(n)),void 0!==i)return i;if(!z(n))return n;var d=xn(n);if(d){if(i=function(n){var e=n.length,a=new n.constructor(e);return e&&"string"==typeof n[0]&&Ao.call(n,"index")&&(a.index=n.index,a.input=n.input),a}(n),!l)return zr(n,i)}else{var p=je(n),s=p==it||p==lt;if(Pn(n))return yr(n,l);if(p==gt||p==tt||s&&!o){if(i=g||s?{}:Ar(n),!l)return g?function(n,e){return Br(n,Do(n),e)}(n,function(n,e){return n&&Br(e,Wr(e),n)}(i,n)):function(n,e){return Br(n,An(n),e)}(n,function(n,e){return n&&Br(e,ge(e),n)}(i,n))}else{if(!ct[p])return o?n:{};i=Jo(n,p,l)}}t||(t=new q);var u=t.get(n);if(u)return u;t.set(n,i),et(n)?n.forEach((function(r){i.add(dt(r,e,a,r,n,t))})):$o(n)&&n.forEach((function(r,o){i.set(o,dt(r,e,a,o,n,t))}));var f=d?void 0:(c?g?jo:ce:g?Wr:ge)(n);return Ma(f||n,(function(r,o){f&&(r=n[o=r]),Pr(i,o,dt(r,e,a,o,n,t))})),i}ct[tt]=ct["[object Array]"]=ct["[object ArrayBuffer]"]=ct["[object DataView]"]=ct["[object Boolean]"]=ct["[object Date]"]=ct["[object Float32Array]"]=ct["[object Float64Array]"]=ct["[object Int8Array]"]=ct["[object Int16Array]"]=ct["[object Int32Array]"]=ct["[object Map]"]=ct["[object Number]"]=ct[gt]=ct["[object RegExp]"]=ct["[object Set]"]=ct["[object String]"]=ct["[object Symbol]"]=ct["[object Uint8Array]"]=ct["[object Uint8ClampedArray]"]=ct["[object Uint16Array]"]=ct["[object Uint32Array]"]=!0,ct["[object Error]"]=ct[it]=ct["[object WeakMap]"]=!1;var pt=1,st=4;function ut(n){return dt(n,pt|st)}var ft=u?u.isConcatSpreadable:void 0;function vt(n){return xn(n)||Hn(n)||!!(ft&&n&&n[ft])}function ht(n,e,a,r,o){var t=-1,i=n.length;for(a||(a=vt),o||(o=[]);++t<i;){var l=n[t];e>0&&a(l)?e>1?ht(l,e-1,a,r,o):kn(o,l):r||(o[o.length]=l)}return o}function mt(){var n=arguments.length;if(!n)return[];for(var e=Array(n-1),a=arguments[0],r=n;r--;)e[r-1]=arguments[r];return kn(xn(a)?zr(a):[a],ht(e,1))}function wt(n){return n!=n}function bt(n,e,a){return e==e?function(n,e,a){for(var r=a-1,o=n.length;++r<o;)if(n[r]===e)return r;return-1}(n,e,a):qa(n,wt,a)}function yt(n,e){return!!(null==n?0:n.length)&&bt(n,e,0)>-1}function kt(n,e,a){for(var r=-1,o=null==n?0:n.length;++r<o;)if(a(e,n[r]))return!0;return!1}var xt=Zr((function(n,e){return Tr(n)?function(n,e,a,r){var o=-1,i=yt,l=!0,g=n.length,c=[],d=e.length;if(!g)return c;a&&(e=t(e,Qn(a))),r?(i=kt,l=!1):e.length>=200&&(i=Z,l=!1,e=new X(e));n:for(;++o<g;){var p=n[o],s=null==a?p:a(p);if(p=r||0!==p?p:0,l&&s==s){for(var u=d;u--;)if(e[u]===s)continue n;c.push(p)}else i(e,s,r)||c.push(p)}return c}(n,ht(e,1,Tr,!0)):[]})),zt=xt;function Mt(n,e,a){if((n=oa(n))&&(a||void 0===e))return Za(n);if(!n||!(e=ra(e)))return n;var r=xo(n),o=xo(e),t=function(n,e){for(var a=-1,r=n.length;++a<r&&bt(e,n[a],0)>-1;);return a}(r,o),i=function(n,e){for(var a=n.length;a--&&bt(e,n[a],0)>-1;);return a}(r,o)+1;return io(r,t,i).join("")}function Ct(n){return"[object Object]"===Object.prototype.toString.call(n)}function Dt(n){return"[object String]"===Object.prototype.toString.call(n)}function jt(n){return!(!Dt(n)||""===n)}function At(n){return n!=n}function Tt(n){let e=!1;if(jt(n))e=!isNaN(Number(n));else if(function(n){return"[object Number]"===Object.prototype.toString.call(n)}(n)){if(At(n))return!1;e=!0}return e}function Et(n,e){return!!Ct(n)&&(!(!jt(e)&&!Tt(e))&&e in n)}function St(n){return"[object Array]"===Object.prototype.toString.call(n)}function Ot(n){return"[object Undefined]"===Object.prototype.toString.call(n)}function Nt(n){return!!Ot(n)||(!!function(n){return"[object Null]"===Object.prototype.toString.call(n)}(n)||(!!function(n){if(Ct(n)){for(let e in n)return!1;return!0}return!1}(n)||(!!function(n){return!(!Dt(n)||""!==n)}(n)||(!!function(n){return!!St(n)&&0===n.length}(n)||!!At(n)))))}function Lt(n,e){function a(n){return St(n)?n:[n]}if(Nt(n))return!1;if(0===(n=a(n)).length)return!1;if(Nt(n))return!1;if(0===(e=a(e)).length)return!1;for(let a=0;a<n.length;a++)for(let r=0;r<e.length;r++)if(Ka(n[a],e[r]))return!0;return!1}function Ht(n,e){if(!jt(n))return[];if(!jt(e))return[];let a=function(n,e){return jt(n)&&jt(e)?n.split(e):[]}(n,e);a=za(a,Mt);let r=[];return Ca(a,(function(n){jt(n)&&r.push(n)})),r}function It(){let n,e,a=new Promise((function(){n=arguments[0],e=arguments[1]}));return a.resolve=n,a.reject=e,a}function Ft(n){let e=Object.prototype.toString.call(n);return"[object Function]"===e||"[object AsyncFunction]"===e}function Rt(n,e){let a=It();if(!St(n)&&!Ct(n))return a.reject("rs is not an array or object"),a;let r=!1;if(Ct(n)){r=!0;let e=[];Ca(n,((n,a)=>{e.push({k:a,v:n})})),n=e}Ft(e)||(e=function(n){return n});let o=-1,t=[];return n.reduce((function(n,a){return n.then((function(n){t.push(n),o+=1;let i=o,l=a;return r&&(i=a.k,l=a.v),Ft(e)?e(l,i):l}))}),Promise.resolve()).then((function(n){var e,r,o,i;t.push(n),i=null==(e=t)?0:e.length,t=i?to(e,(r=o||void 0===r?1:gr(r))<0?0:r,i):[],a.resolve(t)})).catch((function(n){a.reject(n)})),a}function Pt(n){if(Ct(n)){for(let e in n)return!0;return!1}return!1}function Bt(n){return!!St(n)&&(0!==n.length&&(1!==n.length||!Nt(n[0])))}function Ut(n){let e,a=Object.prototype.toString.call(n);if(e="[object Promise]"===a,e)return!0;if("[object Function]"!==a)return!1;try{e="function"!=typeof n.subscribe&&"function"==typeof n.then}catch(n){}return e}var Vt="[object Boolean]";function Wt(n){return!0===(e=n)||!1===e||Tn(e)&&x(e)==Vt;var e}function _t(n){if(!Tt(n))return 0;return lr(n)}function Gt(n){return!!Tt(n)&&(n=_t(n),"number"==typeof(e=n)&&e==gr(e));var e}var Qt=s.isFinite,Yt=Math.min;var Kt=function(n){var e=Math[n];return function(n,a){if(n=or(n),(a=null==a?0:Yt(gr(a),292))&&Qt(n)){var r=(oa(n)+"e").split("e");return+((r=(oa(e(r[0]+"e"+(+r[1]+a)))+"e").split("e"))[0]+"e"+(+r[1]-a))}return e(n)}}("round"),qt=Kt;function Xt(n){if(!Tt(n))return 0;n=_t(n);let e=qt(n);return"0"===String(e)?0:e}function Jt(n){if(!Gt(n))return!1;return Xt(n)>=0}function Zt(n){if(!jt(n)&&!Tt(n)&&!Ue(n))return"";let e="";try{e=String(n)}catch(n){}try{e=n.toString()}catch(n){}return e}function $t(n,e){let a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"";if(!Bt(n))return[];if(!Bt(e))return[];let r=za(n,(n=>function(n,e){let a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"";if(!Bt(e))return{};let r={};return Ca(e,(function(e){r[e]=ca(n,e,a)})),r}(n,e,a)));return r}var ni=fe&&1/on(new fe([,-0]))[1]==1/0?function(n){return new fe(n)}:function(){},ei=ni,ai=200;function ri(n){return n&&n.length?function(n,e,a){var r=-1,o=yt,t=n.length,i=!0,l=[],g=l;if(a)i=!1,o=kt;else if(t>=ai){var c=e?null:ei(n);if(c)return on(c);i=!1,o=Z,g=new X}else g=e?[]:l;n:for(;++r<t;){var d=n[r],p=e?e(d):d;if(d=a||0!==d?d:0,i&&p==p){for(var s=g.length;s--;)if(g[s]===p)continue n;e&&g.push(p),l.push(d)}else o(g,p,a)||(g!==l&&g.push(p),l.push(d))}return l}(n):[]}function oi(n){if(!Bt(n))return[];let e=[];return Ca(n,(function(n){let a=ge(n);e=[...e,...a],e=ri(e)})),e}function ti(n){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(!Bt(n))return[];if(Bt(e)||(e=oi(n)),0===Ga(e))return[];let r=!1;if(Ca(n,(function(n){Pt(n)||(r=!0)})),r)return[];let o=ca(a,"empty",""),t=[];return Ca(n,(function(n){let a=za(e,(function(e){return Et(n,e)?Wt(n[e])?n[e]?"true":"false":Dt(n[e])||Tt(n[e])?n[e]:function(n){let e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(Ot(n))return"";let a="";try{a=e?JSON.stringify(n,null,2):JSON.stringify(n)}catch(n){a=""}return a}(n[e]):o}));t.push(a)})),t}function ii(n){if(!Gt(n))return!1;return Xt(n)>0}async function li(n){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=null,r=It();if(!Ft(n))return r.reject("waitfunction需輸入函數f"),r;let o=async()=>{let e=n();return Ut(e)&&(e=await e),e};if(a=await o(),!0===a)return r.resolve(),r;let t=ca(e,"attemptNum",null);ii(t)||(t=200);let i=ca(e,"timeInterval",null);ii(i)||(i=1e3);let l=0,g=setInterval((async()=>{l+=1,a=await o(),!0===a&&(clearInterval(g),r.resolve()),l>t&&(clearInterval(g),r.reject(`exceeded attemptNum[${t}]`))}),i);return r}function gi(n,e){if(!jt(n))return"";if(!Jt(e))return"";if(0===(e=Xt(e)))return"";let a=n.length-e;return a<0&&(a=0),n.substring(a,a+e)}function ci(){let n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10;Tt(n)||(n=10);let e=It();return setTimeout((function(){e.resolve()}),n),e}let di={},pi={};function si(n){let{tagName:e,path:a,attributes:r={},func:o}=n,t=It();if("done"===di[a])return t.resolve("loaded"),t;if("loading"===di[a])return li((()=>"done"===di[a])).then((function(){t.resolve("loaded")})),t;di[a]="loading";let i=document.createElement(e);return Ca(r,((n,e)=>{i.setAttribute(e,n)})),r.rel&&"stylesheet"===r.rel?(i.setAttribute("href",a),setTimeout((()=>{t.resolve(i),di[a]="done"}),1)):(i.src=a,i.addEventListener("load",(()=>{let n;Ft(o)?n=li(o):(n=It(),n.resolve()),n.then((()=>ci(500))).then((function(){t.resolve(i),di[a]="done"}))})),i.addEventListener("error",(()=>{t.reject(i),di[a]="done"}))),document.getElementsByTagName("head")[0].appendChild(i),t}function ui(n){let e=It();St(n)||(n=[n]),Ca(n,((e,a)=>{Dt(e)&&(n[a]={path:e})}));let a=oo(za(n,"path"),"|");return"done"===pi[a]?(e.resolve("loaded"),e):"loading"===pi[a]?(li((()=>"done"===pi[a])).then((function(){e.resolve("loaded")})),e):(pi[a]="loading",Ca(n,((n,e)=>{n.type||(".js"===gi(n.path,3)?n.type="js":".css"===gi(n.path,4)?n.type="css":n.type="unknow")})),Rt(n,(n=>{let e=It();if("js"===n.type)e=si({tagName:"script",path:n.path,attributes:{type:"text/javascript"},func:n.func});else if("css"===n.type)e=si({tagName:"link",path:n.path,attributes:{rel:"stylesheet"}});else{let a="invalid pathItem.type: "+n.type;console.log(a),e.reject(a)}return e})).finally((()=>{pi[a]="done"})))}function fi(n){return Tn(e=n)&&1===e.nodeType&&!Ir(e);var e}function vi(){return"undefined"!=typeof window&&void 0!==window.document}function hi(n,e){vi()?jt(n)?null!==navigator.userAgent.toLowerCase().match(/rv:([\d.]+)\) like gecko/)?function(n,e){window.navigator.msSaveOrOpenBlob(e,n)}(n,e):function(n,e){let a=window.URL.createObjectURL(e),r=document.createElement("a");r.href=a,r.download=n,document.body.appendChild(r),r.click(),document.body.removeChild(r),window.URL.revokeObjectURL(a)}(n,e):console.log("no filename"):console.log("no window")}function mi(n,e){for(var a=-1,r=null==n?0:n.length;++a<r;)if(!e(n[a],a,n))return!1;return!0}function wi(n,e){var a=!0;return ka(n,(function(n,r,o){return a=!!e(n,r,o)})),a}function bi(n){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(!Bt(n))return[];Bt(e)||(e=oi(n)),Pt(a)||(a={},Ca(e,(n=>{a[n]=n})));let r=!1;return Ca(n,(function(n){Pt(n)||(r=!0)})),r?[]:mt([za(e,(function(n){return ca(a,n)}))],ti(n,e))}function yi(){let n="undefined"!=typeof self?self:vi()?window:"undefined"!=typeof global?global:null;if(Pt(ca(r,"utils")))return r;if(Pt(ca(r,"default.utils")))return ca(r,"default");if(Pt(ca(n,"XLSX.utils")))return ca(n,"XLSX");if(Pt(ca(n,"XLSX.default.utils")))return ca(n,"XLSX.default");if(Pt(ca(n,"xlsx.utils")))return ca(n,"xlsx");if(Pt(ca(n,"xlsx.default.utils")))return ca(n,"xlsx.default");throw console.log("XLSX",r,"g.XLSX",n.XLSX,"g.xlsx",n.xlsx),new Error("invalid XLSX, g.XLSX, g.xlsx")}function ki(n){if(!St(n)&&!fi(n))return{error:"data is not an array or element"};let e=null;try{let a=yi().utils;if(St(n)){let r=function(n,e,a){var r=xn(n)?mi:wi;return a&&$r(n,e,a)&&(e=void 0),r(n,ma(e))}(n,Pt);r&&(n=bi(n)),e=a.aoa_to_sheet(n)}else fi(n)&&(e=a.table_to_sheet(n,{raw:!0}))}catch(n){return{error:n}}return e}function xi(n){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"data";if(!St(n)&&!fi(n))return{error:"data is not an array or element"};jt(e)||(e="data");let a=null,r=ki(n);return Et(r,"error")?r:(a=function(n){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"data";if(!Ct(n))return{error:"sheet is not an object"};jt(e)||(e="data");let a=new function n(){if(!(this instanceof n))return new n;this.SheetNames=[],this.Sheets={}};return a.SheetNames.push(e),a.Sheets[e]=n,a}(r,e),Et(a,"error"),a)}async function zi(n){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"data",a=arguments.length>2?arguments[2]:void 0,r=arguments.length>3?arguments[3]:void 0;Bt(r)||(r=["https://cdn.jsdelivr.net/npm/xlsx@0.18.5/dist/xlsx.full.min.js"]),await ui(r);let o=function(n){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"data",a=arguments.length>2?arguments[2]:void 0;if(!jt(n)){let e="no filename";return console.log(e,n),{error:e}}if(jt(e)||(e="data"),!St(a)&&!fi(a)){let n="data is not an array or element";return console.log(n,a),{error:n}}St(a)&&Pt(ca(a,0,null))&&(a=bi(a));let r=xi(a,e);if(ca(r,"error"))return console.log(r.error),r.error;let o=yi();if(vi()){let e=o.write(r,{bookType:"xlsx",bookSST:!1,type:"array"});hi(n,new Blob([e]))}else o.writeFile(r,n);return"ok"}(n,e,a);return""!==ca(o,"error","")?Promise.reject(o.error):o}let Mi="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".split(""),Ci=Mi.length;function Di(n){function e(n){n.parentNode.removeChild(n)}if(fi(n)){return void e(n)}if(!jt(n))return;let a=function(n){return document.querySelectorAll(n)}(n);Ca(a,(function(n){e(n)}))}function ji(n){return!Nt(n)}let Ai=[{name:"pic",group:"image",acp:"image/*",exec:"imageviwer"},{name:"xml",group:"data",acp:"text/xml",exec:"textviwer"},{name:"htm",group:"docums",acp:"text/html",exec:"browser"},{name:"html",group:"docums",acp:"text/html",exec:"browser"},{name:"json",group:"data",acp:"application/json",exec:"textviwer"},{name:"geojson",group:"data",acp:"application/geo+json",exec:"textviwer"},{name:"txt",group:"data",acp:"text/plain",exec:"textviwer"},{name:"csv",group:"data",acp:"text/csv",exec:"excel"},{name:"dat",group:"data",acp:"application/octet-stream",exec:"binaryviwer"},{name:"7z",group:"compress",acp:"application/x-7z-compressed",exec:"compressor"},{name:"bzip",group:"compress",acp:"application/x-bzip",exec:"7z"},{name:"bzip2",group:"compress",acp:"application/x-bzip2",exec:"compressor"},{name:"bz2",group:"compress",acp:"application/x-bzip2",exec:"compressor"},{name:"ace",group:"compress",acp:"application/x-ace-compressed",exec:"compressor"},{name:"Z",group:"compress",acp:"application/x-compress",exec:"compressor"},{name:"lzh",group:"compress",acp:"application/x-lzh-compressed",exec:"compressor"},{name:"lz",group:"compress",acp:"application/x-lzip",exec:"compressor"},{name:"rar",group:"compress",acp:"application/x-rar-compressed",exec:"compressor"},{name:"tar",group:"compress",acp:"application/x-tar",exec:"compressor"},{name:"ar",group:"compress",acp:"application/x-unix-archive",exec:"compressor"},{name:"zip",group:"compress",acp:"application/zip",exec:"compressor"},{name:"gz",group:"compress",acp:"application/gzip",exec:"compressor"},{name:"avro",group:"",acp:"application/avro",exec:""},{name:"dcm",group:"",acp:"application/dicom",exec:""},{name:"eps",group:"",acp:"application/eps",exec:""},{name:"epub",group:"",acp:"application/epub+zip",exec:""},{name:"class",group:"",acp:"application/java-vm",exec:""},{name:"mxf",group:"",acp:"application/mxf",exec:""},{name:"ogx",group:"",acp:"application/ogg",exec:""},{name:"pdf",group:"docums",acp:"application/pdf",exec:"acrobat"},{name:"pgp",group:"",acp:"application/pgp-encrypted",exec:""},{name:"ps",group:"",acp:"application/postscript",exec:""},{name:"ai",group:"",acp:"application/postscript",exec:""},{name:"rtf",group:"docums",acp:"application/rtf",exec:"word"},{name:"icc",group:"",acp:"application/vnd.iccprofile",exec:""},{name:"asf",group:"",acp:"application/vnd.ms-asf",exec:"",msg:"asf的acp可能為application/vnd.ms-asf或audio/x-ms-asf或video/x-ms-asf"},{name:"cab",group:"",acp:"application/vnd.ms-cab-compressed",exec:""},{name:"eot",group:"",acp:"application/vnd.ms-fontobject",exec:""},{name:"chm",group:"",acp:"application/vnd.ms-htmlhelp",exec:""},{name:"pst",group:"",acp:"application/vnd.ms-outlook",exec:""},{name:"odp",group:"docums",acp:"application/vnd.oasis.opendocument.presentation",exec:"powerpoint"},{name:"ods",group:"docums",acp:"application/vnd.oasis.opendocument.spreadsheet",exec:"excel"},{name:"odt",group:"docums",acp:"application/vnd.oasis.opendocument.text",exec:"word"},{name:"ppt",group:"docums",acp:"application/vnd.ms-powerpoint",exec:"powerpoint"},{name:"pptx",group:"docums",acp:"application/vnd.openxmlformats-officedocument.presentationml.presentation",exec:"powerpoint"},{name:"xls",group:"docums",acp:"application/vnd.ms-excel",exec:"excel"},{name:"xlsx",group:"docums",acp:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",exec:"excel"},{name:"doc",group:"docums",acp:"application/msword",exec:"word"},{name:"docx",group:"docums",acp:"application/vnd.openxmlformats-officedocument.wordprocessingml.document",exec:"word"},{name:"skp",group:"",acp:"application/vnd.sketchup.skp",exec:""},{name:"pcap",group:"",acp:"application/vnd.tcpdump.pcap",exec:""},{name:"wasm",group:"",acp:"application/wasm",exec:""},{name:"arrow",group:"",acp:"application/x-apache-arrow",exec:""},{name:"dmg",group:"",acp:"application/x-apple-diskimage",exec:""},{name:"arj",group:"",acp:"application/x-arj",exec:""},{name:"asar",group:"",acp:"application/x-asar",exec:""},{name:"blend",group:"",acp:"application/x-blender",exec:"blender"},{name:"cfb",group:"",acp:"application/x-cfb",exec:""},{name:"cpio",group:"",acp:"application/x-cpio",exec:""},{name:"deb",group:"",acp:"application/x-deb",exec:""},{name:"elf",group:"",acp:"application/x-elf",exec:""},{name:"shp",group:"",acp:"application/x-esri-shape",exec:""},{name:"crx",group:"",acp:"application/x-google-chrome-extension",exec:""},{name:"indd",group:"",acp:"application/x-indesign",exec:""},{name:"macho",group:"",acp:"application/x-mach-binary",exec:""},{name:"mie",group:"",acp:"application/x-mie",exec:""},{name:"mobi",group:"",acp:"application/x-mobipocket-ebook",exec:""},{name:"exe",group:"",acp:"application/x-msdownload",exec:""},{name:"nes",group:"",acp:"application/x-nintendo-nes-rom",exec:""},{name:"parquet",group:"",acp:"application/x-parquet",exec:""},{name:"rpm",group:"",acp:"application/x-rpm",exec:""},{name:"swf",group:"",acp:"application/x-shockwave-flash",exec:""},{name:"sqlite",group:"",acp:"application/x-sqlite3",exec:""},{name:"xpi",group:"",acp:"application/x-xpinstall",exec:""},{name:"xz",group:"",acp:"application/x-xz",exec:""},{name:"alias",group:"",acp:"application/x.apple.alias",exec:""},{name:"fbx",group:"",acp:"application/x.autodesk.fbx",exec:""},{name:"lnk",group:"",acp:"application/x.ms.shortcut",exec:""},{name:"zst",group:"",acp:"application/zstd",exec:""},{name:"aac",group:"audio",acp:"audio/aac",exec:"audioplayer"},{name:"aif",group:"audio",acp:"audio/aiff",exec:"audioplayer"},{name:"amr",group:"audio",acp:"audio/amr",exec:"audioplayer"},{name:"ape",group:"audio",acp:"audio/ape",exec:"audioplayer"},{name:"mid",group:"audio",acp:"audio/midi",exec:"audioplayer"},{name:"m4b",group:"audio",acp:"audio/mp4",exec:"audioplayer"},{name:"f4a",group:"audio",acp:"audio/mp4",exec:"audioplayer"},{name:"f4b",group:"audio",acp:"audio/mp4",exec:"audioplayer"},{name:"mp3",group:"audio",acp:"audio/mpeg",exec:"audioplayer"},{name:"mp2",group:"audio",acp:"audio/mpeg",exec:"audioplayer"},{name:"mp1",group:"audio",acp:"audio/mpeg",exec:"audioplayer"},{name:"oga",group:"audio",acp:"audio/ogg",exec:"audioplayer"},{name:"spx",group:"audio",acp:"audio/ogg",exec:"audioplayer"},{name:"ogg",group:"audio",acp:"audio/ogg",exec:"audioplayer"},{name:"opus",group:"audio",acp:"audio/opus",exec:"audioplayer"},{name:"qcp",group:"audio",acp:"audio/qcelp",exec:"audioplayer"},{name:"ac3",group:"audio",acp:"audio/vnd.dolby.dd-raw",exec:"audioplayer"},{name:"wav",group:"audio",acp:"audio/wav",exec:"audioplayer"},{name:"wv",group:"audio",acp:"audio/wavpack",exec:"audioplayer"},{name:"dsf",group:"audio",acp:"audio/x-dsf",exec:"audioplayer"},{name:"flac",group:"audio",acp:"audio/x-flac",exec:"audioplayer"},{name:"it",group:"audio",acp:"audio/x-it",exec:"audioplayer"},{name:"m4a",group:"audio",acp:"audio/x-m4a",exec:"audioplayer"},{name:"mpc",group:"audio",acp:"audio/x-musepack",exec:"audioplayer"},{name:"s3m",group:"audio",acp:"audio/x-s3m",exec:"audioplayer"},{name:"voc",group:"audio",acp:"audio/x-voc",exec:"audioplayer"},{name:"xm",group:"audio",acp:"audio/x-xm",exec:"audioplayer"},{name:"otf",group:"",acp:"font/otf",exec:""},{name:"ttf",group:"",acp:"font/ttf",exec:""},{name:"woff",group:"",acp:"font/woff",exec:""},{name:"woff2",group:"",acp:"font/woff2",exec:""},{name:"apng",group:"image",acp:"image/apng",exec:"imageviwer"},{name:"avif",group:"image",acp:"image/avif",exec:"imageviwer"},{name:"bmp",group:"image",acp:"image/bmp",exec:"imageviwer"},{name:"bpg",group:"image",acp:"image/bpg",exec:"imageviwer"},{name:"flif",group:"image",acp:"image/flif",exec:"imageviwer"},{name:"gif",group:"image",acp:"image/gif",exec:"imageviwer"},{name:"heic",group:"image",acp:"image/heif",exec:"imageviwer"},{name:"icns",group:"image",acp:"image/icns",exec:"imageviwer"},{name:"j2c",group:"image",acp:"image/j2c",exec:"imageviwer"},{name:"jls",group:"image",acp:"image/jls",exec:"imageviwer"},{name:"jp2",group:"image",acp:"image/jp2",exec:"imageviwer"},{name:"jpg",group:"image",acp:"image/jpeg",exec:"imageviwer"},{name:"jpm",group:"image",acp:"image/jpm",exec:"imageviwer"},{name:"jpx",group:"image",acp:"image/jpx",exec:"imageviwer"},{name:"jxl",group:"image",acp:"image/jxl",exec:"imageviwer"},{name:"ktx",group:"image",acp:"image/ktx",exec:"imageviwer"},{name:"mj2",group:"image",acp:"image/mj2",exec:"imageviwer"},{name:"png",group:"image",acp:"image/png",exec:"imageviwer"},{name:"tif",group:"image",acp:"image/tiff",exec:"imageviwer"},{name:"psd",group:"image",acp:"image/vnd.adobe.photoshop",exec:"imageviwer"},{name:"dwg",group:"image",acp:"image/vnd.dwg",exec:"imageviwer"},{name:"jxr",group:"image",acp:"image/vnd.ms-photo",exec:"imageviwer"},{name:"webp",group:"image",acp:"image/webp",exec:"imageviwer"},{name:"dng",group:"image",acp:"image/x-adobe-dng",exec:"imageviwer"},{name:"cr2",group:"image",acp:"image/x-canon-cr2",exec:"imageviwer"},{name:"cr3",group:"image",acp:"image/x-canon-cr3",exec:"imageviwer"},{name:"raf",group:"image",acp:"image/x-fujifilm-raf",exec:"imageviwer"},{name:"ico",group:"image",acp:"image/x-icon",exec:"imageviwer"},{name:"cur",group:"image",acp:"image/x-icon",exec:"imageviwer"},{name:"nef",group:"image",acp:"image/x-nikon-nef",exec:"imageviwer"},{name:"orf",group:"image",acp:"image/x-olympus-orf",exec:"imageviwer"},{name:"rw2",group:"image",acp:"image/x-panasonic-rw2",exec:"imageviwer"},{name:"arw",group:"image",acp:"image/x-sony-arw",exec:"imageviwer"},{name:"xcf",group:"image",acp:"image/x-xcf",exec:"imageviwer"},{name:"3mf",group:"",acp:"model/3mf",exec:""},{name:"glb",group:"",acp:"model/gltf-binary",exec:""},{name:"stl",group:"",acp:"model/stl",exec:""},{name:"ics",group:"",acp:"text/calendar",exec:""},{name:"vcf",group:"",acp:"text/vcard",exec:""},{name:"3gp",group:"video",acp:"video/3gpp",exec:"videoplayer"},{name:"3g2",group:"video",acp:"video/3gpp2",exec:"videoplayer"},{name:"m2p",group:"video",acp:"video/MP2P",exec:"videoplayer"},{name:"vob",group:"video",acp:"video/MP2P",exec:"videoplayer"},{name:"sub",group:"video",acp:"video/MP2P",exec:"videoplayer",msg:"與字幕檔衝突"},{name:"mts",group:"video",acp:"video/mp2t",exec:"videoplayer"},{name:"m4p",group:"video",acp:"video/mp4",exec:"videoplayer"},{name:"f4v",group:"video",acp:"video/mp4",exec:"videoplayer"},{name:"f4p",group:"video",acp:"video/mp4",exec:"videoplayer"},{name:"mp4",group:"video",acp:"video/mp4",exec:"videoplayer"},{name:"mpg",group:"video",acp:"video/mpeg",exec:"videoplayer",msg:"mpg可能為mpeg或video/MP1S或video/MP2S"},{name:"ogv",group:"video",acp:"video/ogg",exec:"videoplayer"},{name:"ogm",group:"video",acp:"video/ogg",exec:"videoplayer"},{name:"mov",group:"video",acp:"video/quicktime",exec:"videoplayer"},{name:"avi",group:"video",acp:"video/vnd.avi",exec:"videoplayer"},{name:"webm",group:"video",acp:"video/webm",exec:"videoplayer"},{name:"flv",group:"video",acp:"video/x-flv",exec:"videoplayer"},{name:"m4v",group:"video",acp:"video/x-m4v",exec:"videoplayer"},{name:"mkv",group:"video",acp:"video/x-matroska",exec:"videoplayer"}];function Ti(){let n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";if(""!==n&&"name"!==n&&"group"!==n&&"acp"!==n&&"exec"!==n)return[];let e=function(){let n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",e=null;return jt(n)?(e=pr(Ai,{name:n}),Pt(e)||(e=null)):e=Ai,e}();if(""===n)return e;let a={};return Ca(e,(function(e){let r=e[n];Et(a,r)||(a[r]=[]),a[r].push(e)})),a}function Ei(){let n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"*";if("*"===n)return n;if(!Dt(n)&&!Bt(n))return"*";"common"===n&&(n=["docums","compress","image","data"]);let e=Ti();function a(n){return ri(za(n,"acp"))}Dt(n)&&(n=[n]);let r="";if(Bt(n)){let o=za(n,(function(n){return function(n){return a(Ya(e,{group:n}))}(n)})),t=mt(o,za(n,(function(n){return a(Ya(e,{name:n}))})));t=Ya(t,ji),r=oo(t,",")}return r}function Si(){let n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"*",e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=ca(e,"multiple");Wt(a)||(a=!1);let r=ca(e,"entireHierarchy");Wt(r)||(r=!1),r&&!a&&(a=!0);let o=ca(e,"sizelimit");Tt(o)||(o=1e3),o=_t(o);let t=It(),i="drf"+function(){let n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:32,e=[];n=ii(n)?Xt(n):32;for(let a=0;a<n;a++)e[a]=Mi[0|Math.random()*Ci];return e.join("")}(),l="GrpDomReadFile";Di(`[name=${l}]`);let g=Ei(n),c=`<div name="${l}" style="position:relative; width:0px; height:0px; overflow:hidden;"><input id="${i}" type="file" accept="${g}" ${a?"multiple":""} ${r?"webkitdirectory":""} style="opacity:0; position:absolute; top:-10000px; left:-10000px;"></div>`;!function(n,e){if(!fi(n))return"invalid eleParent";if(Dt(e))n.insertAdjacentHTML("beforeend",e);else{if(!fi(e))return"invalid itemChild";n.appendChild(e)}}(document.querySelector("body"),c);let d=(p="#"+i,document.querySelector(p));var p;let s=!1;function u(n){s=!0;let e=function(n){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1e3;e=_t(e),e<=0&&(e=1e3);let a={},r=[];return Ca(ca(n,"files",[]),(function(n,o){n.size/1024/1024>e&&(a[o]=`檔案大小超過上限${e}mb`),r.push(n)})),{files:r,errs:a}}(this,o);t.resolve(e),d.removeEventListener("change",u),r||window.removeEventListener("focus",f),Di(`[name=${l}]`)}function f(n){setTimeout((()=>{s||u()}),300)}return d.addEventListener("change",u,!0),r||window.addEventListener("focus",f),function(n,e){let a=new MouseEvent(e,{view:window,bubbles:!0,cancelable:!0});n.dispatchEvent(a)}(d,"click"),t}function Oi(n){if(!vi())return Promise.reject("no window");try{return function(n){return n.arrayBuffer()}(n)}catch(e){return function(n){let e=It(),a=new FileReader;return a.onload=function(){let n=a.result;e.resolve(n)},a.onerror=function(n){e.reject(n)},a.readAsArrayBuffer(n),e}(n)}}function Ni(n){let e=za(n,(function(n){return function(n){let e=It();return Oi(n).then((n=>{let a=new Uint8Array(n);e.resolve(a)})).catch((n=>{e.reject(n)})),e}(n)}));return Promise.all(e)}function Li(n,e,a){if(!jt(n))return"";if(!jt(e))return"";if(!Dt(a))return"";return String(n).replaceAll(e,a)}function Hi(n){let e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(!Bt(n)){return{error:"no data"}}let a=null;try{a=function(n){let e=arguments.length>1&&void 0!==arguments[1]&&!arguments[1]?"":"\ufeff";return Ca(n,(n=>{let a=[];Ca(n,(n=>{Dt(n)?(n=Li(n,"\r\n",""),n=Li(n,"\r",""),n=`"${n=Li(n,"\n","")}"`):n=Wt(n)?n?"true":"false":Zt(n),a.push(n)})),e+=oo(a,",")+"\r\n"})),e}(n,e)}catch(n){return{error:n}}return a}function Ii(n){return Wt(n)?n?"true":"false":Zt(n)}function Fi(n,e){let a=[];return n.SheetNames.forEach((function(r){let o=yi().utils.sheet_to_json(n.Sheets[r],{header:"A",defval:"",blankrows:!0});o=za(o,(n=>Mo(n))),e&&(o=za(o,(n=>za(n,(n=>Ii(n)))))),a.push({sheetname:r,data:o})})),a}function Ri(n,e){let a=ca(e,"fmt","ltdt");if(!Lt(["ltdt","csv","array"],a))return{error:"opt.fmt is not one of 'ltdt', 'csv', 'array'"};let r,o=ca(e,"valueToString",!0);if(!Wt(o))return{error:"opt.valueToString is not a boolean"};try{r=yi().read(n,{type:"buffer"})}catch(n){return console.log("error: ",n),{error:"can not read data from u8a"}}let t=null;try{"ltdt"===a?t=function(n,e){let a=[];return n.SheetNames.forEach((function(r){let o=yi().utils.sheet_to_json(n.Sheets[r]);e&&(o=za(o,(n=>(Ca(n,((e,a)=>{n[a]=Ii(e)})),n)))),a.push({sheetname:r,data:o})})),a}(r,o):"array"===a?t=Fi(r,o):"csv"===a&&(t=function(n,e){let a=Fi(n,e);return Ca(a,((n,e)=>{a[e].data=Hi(n.data,!1)})),a}(r,o))}catch(n){return console.log("error: ",n),{error:"can not convert data"}}return t}vi()&&function(){try{return new MouseEvent("MouseEventPolyfillTest"),!1}catch(n){}let n=function(n,e){e=e||{bubbles:!1,cancelable:!1};let a=document.createEvent("MouseEvent");return a.initMouseEvent(n,e.bubbles,e.cancelable,window,0,e.screenX||0,e.screenY||0,e.clientX||0,e.clientY||0,e.ctrlKey||!1,e.altKey||!1,e.shiftKey||!1,e.metaKey||!1,e.button||0,e.relatedTarget||null),a};n.prototype=Event.prototype,window.MouseEvent=n}();var Pi="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},Bi={};var Ui,Vi={},Wi={get exports(){return Vi},set exports(n){Vi=n}};function _i(){return Ui||(Ui=1,function(n,e){var a;n.exports=(a=a||function(n,e){var a;if("undefined"!=typeof window&&window.crypto&&(a=window.crypto),"undefined"!=typeof self&&self.crypto&&(a=self.crypto),"undefined"!=typeof globalThis&&globalThis.crypto&&(a=globalThis.crypto),!a&&"undefined"!=typeof window&&window.msCrypto&&(a=window.msCrypto),!a&&void 0!==Pi&&Pi.crypto&&(a=Pi.crypto),!a)try{a=require("crypto")}catch(n){}var r=function(){if(a){if("function"==typeof a.getRandomValues)try{return a.getRandomValues(new Uint32Array(1))[0]}catch(n){}if("function"==typeof a.randomBytes)try{return a.randomBytes(4).readInt32LE()}catch(n){}}throw new Error("Native crypto module could not be used to get secure random number.")},o=Object.create||function(){function n(){}return function(e){var a;return n.prototype=e,a=new n,n.prototype=null,a}}(),t={},i=t.lib={},l=i.Base={extend:function(n){var e=o(this);return n&&e.mixIn(n),e.hasOwnProperty("init")&&this.init!==e.init||(e.init=function(){e.$super.init.apply(this,arguments)}),e.init.prototype=e,e.$super=this,e},create:function(){var n=this.extend();return n.init.apply(n,arguments),n},init:function(){},mixIn:function(n){for(var e in n)n.hasOwnProperty(e)&&(this[e]=n[e]);n.hasOwnProperty("toString")&&(this.toString=n.toString)},clone:function(){return this.init.prototype.extend(this)}},g=i.WordArray=l.extend({init:function(n,a){n=this.words=n||[],this.sigBytes=a!=e?a:4*n.length},toString:function(n){return(n||d).stringify(this)},concat:function(n){var e=this.words,a=n.words,r=this.sigBytes,o=n.sigBytes;if(this.clamp(),r%4)for(var t=0;t<o;t++){var i=a[t>>>2]>>>24-t%4*8&255;e[r+t>>>2]|=i<<24-(r+t)%4*8}else for(var l=0;l<o;l+=4)e[r+l>>>2]=a[l>>>2];return this.sigBytes+=o,this},clamp:function(){var e=this.words,a=this.sigBytes;e[a>>>2]&=4294967295<<32-a%4*8,e.length=n.ceil(a/4)},clone:function(){var n=l.clone.call(this);return n.words=this.words.slice(0),n},random:function(n){for(var e=[],a=0;a<n;a+=4)e.push(r());return new g.init(e,n)}}),c=t.enc={},d=c.Hex={stringify:function(n){for(var e=n.words,a=n.sigBytes,r=[],o=0;o<a;o++){var t=e[o>>>2]>>>24-o%4*8&255;r.push((t>>>4).toString(16)),r.push((15&t).toString(16))}return r.join("")},parse:function(n){for(var e=n.length,a=[],r=0;r<e;r+=2)a[r>>>3]|=parseInt(n.substr(r,2),16)<<24-r%8*4;return new g.init(a,e/2)}},p=c.Latin1={stringify:function(n){for(var e=n.words,a=n.sigBytes,r=[],o=0;o<a;o++){var t=e[o>>>2]>>>24-o%4*8&255;r.push(String.fromCharCode(t))}return r.join("")},parse:function(n){for(var e=n.length,a=[],r=0;r<e;r++)a[r>>>2]|=(255&n.charCodeAt(r))<<24-r%4*8;return new g.init(a,e)}},s=c.Utf8={stringify:function(n){try{return decodeURIComponent(escape(p.stringify(n)))}catch(n){throw new Error("Malformed UTF-8 data")}},parse:function(n){return p.parse(unescape(encodeURIComponent(n)))}},u=i.BufferedBlockAlgorithm=l.extend({reset:function(){this._data=new g.init,this._nDataBytes=0},_append:function(n){"string"==typeof n&&(n=s.parse(n)),this._data.concat(n),this._nDataBytes+=n.sigBytes},_process:function(e){var a,r=this._data,o=r.words,t=r.sigBytes,i=this.blockSize,l=t/(4*i),c=(l=e?n.ceil(l):n.max((0|l)-this._minBufferSize,0))*i,d=n.min(4*c,t);if(c){for(var p=0;p<c;p+=i)this._doProcessBlock(o,p);a=o.splice(0,c),r.sigBytes-=d}return new g.init(a,d)},clone:function(){var n=l.clone.call(this);return n._data=this._data.clone(),n},_minBufferSize:0});i.Hasher=u.extend({cfg:l.extend(),init:function(n){this.cfg=this.cfg.extend(n),this.reset()},reset:function(){u.reset.call(this),this._doReset()},update:function(n){return this._append(n),this._process(),this},finalize:function(n){return n&&this._append(n),this._doFinalize()},blockSize:16,_createHelper:function(n){return function(e,a){return new n.init(a).finalize(e)}},_createHmacHelper:function(n){return function(e,a){return new f.HMAC.init(n,a).finalize(e)}}});var f=t.algo={};return t}(Math),a)}(Wi)),Vi}!function(n,e){var a;n.exports=(a=_i(),function(n){var e=a,r=e.lib,o=r.WordArray,t=r.Hasher,i=e.algo,l=[];!function(){for(var e=0;e<64;e++)l[e]=4294967296*n.abs(n.sin(e+1))|0}();var g=i.MD5=t.extend({_doReset:function(){this._hash=new o.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(n,e){for(var a=0;a<16;a++){var r=e+a,o=n[r];n[r]=16711935&(o<<8|o>>>24)|4278255360&(o<<24|o>>>8)}var t=this._hash.words,i=n[e+0],g=n[e+1],u=n[e+2],f=n[e+3],v=n[e+4],h=n[e+5],m=n[e+6],w=n[e+7],b=n[e+8],y=n[e+9],k=n[e+10],x=n[e+11],z=n[e+12],M=n[e+13],C=n[e+14],D=n[e+15],j=t[0],A=t[1],T=t[2],E=t[3];j=c(j,A,T,E,i,7,l[0]),E=c(E,j,A,T,g,12,l[1]),T=c(T,E,j,A,u,17,l[2]),A=c(A,T,E,j,f,22,l[3]),j=c(j,A,T,E,v,7,l[4]),E=c(E,j,A,T,h,12,l[5]),T=c(T,E,j,A,m,17,l[6]),A=c(A,T,E,j,w,22,l[7]),j=c(j,A,T,E,b,7,l[8]),E=c(E,j,A,T,y,12,l[9]),T=c(T,E,j,A,k,17,l[10]),A=c(A,T,E,j,x,22,l[11]),j=c(j,A,T,E,z,7,l[12]),E=c(E,j,A,T,M,12,l[13]),T=c(T,E,j,A,C,17,l[14]),j=d(j,A=c(A,T,E,j,D,22,l[15]),T,E,g,5,l[16]),E=d(E,j,A,T,m,9,l[17]),T=d(T,E,j,A,x,14,l[18]),A=d(A,T,E,j,i,20,l[19]),j=d(j,A,T,E,h,5,l[20]),E=d(E,j,A,T,k,9,l[21]),T=d(T,E,j,A,D,14,l[22]),A=d(A,T,E,j,v,20,l[23]),j=d(j,A,T,E,y,5,l[24]),E=d(E,j,A,T,C,9,l[25]),T=d(T,E,j,A,f,14,l[26]),A=d(A,T,E,j,b,20,l[27]),j=d(j,A,T,E,M,5,l[28]),E=d(E,j,A,T,u,9,l[29]),T=d(T,E,j,A,w,14,l[30]),j=p(j,A=d(A,T,E,j,z,20,l[31]),T,E,h,4,l[32]),E=p(E,j,A,T,b,11,l[33]),T=p(T,E,j,A,x,16,l[34]),A=p(A,T,E,j,C,23,l[35]),j=p(j,A,T,E,g,4,l[36]),E=p(E,j,A,T,v,11,l[37]),T=p(T,E,j,A,w,16,l[38]),A=p(A,T,E,j,k,23,l[39]),j=p(j,A,T,E,M,4,l[40]),E=p(E,j,A,T,i,11,l[41]),T=p(T,E,j,A,f,16,l[42]),A=p(A,T,E,j,m,23,l[43]),j=p(j,A,T,E,y,4,l[44]),E=p(E,j,A,T,z,11,l[45]),T=p(T,E,j,A,D,16,l[46]),j=s(j,A=p(A,T,E,j,u,23,l[47]),T,E,i,6,l[48]),E=s(E,j,A,T,w,10,l[49]),T=s(T,E,j,A,C,15,l[50]),A=s(A,T,E,j,h,21,l[51]),j=s(j,A,T,E,z,6,l[52]),E=s(E,j,A,T,f,10,l[53]),T=s(T,E,j,A,k,15,l[54]),A=s(A,T,E,j,g,21,l[55]),j=s(j,A,T,E,b,6,l[56]),E=s(E,j,A,T,D,10,l[57]),T=s(T,E,j,A,m,15,l[58]),A=s(A,T,E,j,M,21,l[59]),j=s(j,A,T,E,v,6,l[60]),E=s(E,j,A,T,x,10,l[61]),T=s(T,E,j,A,u,15,l[62]),A=s(A,T,E,j,y,21,l[63]),t[0]=t[0]+j|0,t[1]=t[1]+A|0,t[2]=t[2]+T|0,t[3]=t[3]+E|0},_doFinalize:function(){var e=this._data,a=e.words,r=8*this._nDataBytes,o=8*e.sigBytes;a[o>>>5]|=128<<24-o%32;var t=n.floor(r/4294967296),i=r;a[15+(o+64>>>9<<4)]=16711935&(t<<8|t>>>24)|4278255360&(t<<24|t>>>8),a[14+(o+64>>>9<<4)]=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8),e.sigBytes=4*(a.length+1),this._process();for(var l=this._hash,g=l.words,c=0;c<4;c++){var d=g[c];g[c]=16711935&(d<<8|d>>>24)|4278255360&(d<<24|d>>>8)}return l},clone:function(){var n=t.clone.call(this);return n._hash=this._hash.clone(),n}});function c(n,e,a,r,o,t,i){var l=n+(e&a|~e&r)+o+i;return(l<<t|l>>>32-t)+e}function d(n,e,a,r,o,t,i){var l=n+(e&r|a&~r)+o+i;return(l<<t|l>>>32-t)+e}function p(n,e,a,r,o,t,i){var l=n+(e^a^r)+o+i;return(l<<t|l>>>32-t)+e}function s(n,e,a,r,o,t,i){var l=n+(a^(e|~r))+o+i;return(l<<t|l>>>32-t)+e}e.MD5=t._createHelper(g),e.HmacMD5=t._createHmacHelper(g)}(Math),a.MD5)}({get exports(){return Bi},set exports(n){Bi=n}});var Gi=Bi,Qi={};!function(n,e){var a;n.exports=(a=_i(),function(){var n=a,e=n.lib.WordArray;function r(n,a,r){for(var o=[],t=0,i=0;i<a;i++)if(i%4){var l=r[n.charCodeAt(i-1)]<<i%4*2|r[n.charCodeAt(i)]>>>6-i%4*2;o[t>>>2]|=l<<24-t%4*8,t++}return e.create(o,t)}n.enc.Base64={stringify:function(n){var e=n.words,a=n.sigBytes,r=this._map;n.clamp();for(var o=[],t=0;t<a;t+=3)for(var i=(e[t>>>2]>>>24-t%4*8&255)<<16|(e[t+1>>>2]>>>24-(t+1)%4*8&255)<<8|e[t+2>>>2]>>>24-(t+2)%4*8&255,l=0;l<4&&t+.75*l<a;l++)o.push(r.charAt(i>>>6*(3-l)&63));var g=r.charAt(64);if(g)for(;o.length%4;)o.push(g);return o.join("")},parse:function(n){var e=n.length,a=this._map,o=this._reverseMap;if(!o){o=this._reverseMap=[];for(var t=0;t<a.length;t++)o[a.charCodeAt(t)]=t}var i=a.charAt(64);if(i){var l=n.indexOf(i);-1!==l&&(e=l)}return r(n,e,o)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="}}(),a.enc.Base64)}({get exports(){return Qi},set exports(n){Qi=n}});var Yi=Qi,Ki={};!function(n,e){n.exports=_i().enc.Hex}({get exports(){return Ki},set exports(n){Ki=n}});var qi=Ki;function Xi(n){let e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(!jt(n))return"";if(!Wt(e))return"";let a=Gi(n),r="";return r=e?a.toString(Yi):a.toString(qi),r}function Ji(){return new function(n){let e=[],a=null,r=null;return ii(n)||(n=300),n=Xt(n),function(o){if(Ft(o)){r=Date.now();for(var t=arguments.length,i=new Array(t>1?t-1:0),l=1;l<t;l++)i[l-1]=arguments[l];e.push({func:o,input:i}),null===a&&(a=setInterval((()=>{if(Date.now()-r>n){let n=e.pop();e=[],n.func(...n.input)}0===e.length&&(clearInterval(a),a=null)}),10))}else console.log("func is not a function")}}(arguments.length>0&&void 0!==arguments[0]?arguments[0]:300)}function Zi(n){return Zi="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(n){return typeof n}:function(n){return n&&"function"==typeof Symbol&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},Zi(n)}function $i(n){var e=function(n,e){if("object"!==Zi(n)||null===n)return n;var a=n[Symbol.toPrimitive];if(void 0!==a){var r=a.call(n,e||"default");if("object"!==Zi(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===e?String:Number)(n)}(n,"string");return"symbol"===Zi(e)?e:String(e)}function nl(n,e,a){return(e=$i(e))in n?Object.defineProperty(n,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):n[e]=a,n}var el={};!function(n){var e=Object.prototype.hasOwnProperty,a="~";function r(){}function o(n,e,a){this.fn=n,this.context=e,this.once=a||!1}function t(n,e,r,t,i){if("function"!=typeof r)throw new TypeError("The listener must be a function");var l=new o(r,t||n,i),g=a?a+e:e;return n._events[g]?n._events[g].fn?n._events[g]=[n._events[g],l]:n._events[g].push(l):(n._events[g]=l,n._eventsCount++),n}function i(n,e){0==--n._eventsCount?n._events=new r:delete n._events[e]}function l(){this._events=new r,this._eventsCount=0}Object.create&&(r.prototype=Object.create(null),(new r).__proto__||(a=!1)),l.prototype.eventNames=function(){var n,r,o=[];if(0===this._eventsCount)return o;for(r in n=this._events)e.call(n,r)&&o.push(a?r.slice(1):r);return Object.getOwnPropertySymbols?o.concat(Object.getOwnPropertySymbols(n)):o},l.prototype.listeners=function(n){var e=a?a+n:n,r=this._events[e];if(!r)return[];if(r.fn)return[r.fn];for(var o=0,t=r.length,i=new Array(t);o<t;o++)i[o]=r[o].fn;return i},l.prototype.listenerCount=function(n){var e=a?a+n:n,r=this._events[e];return r?r.fn?1:r.length:0},l.prototype.emit=function(n,e,r,o,t,i){var l=a?a+n:n;if(!this._events[l])return!1;var g,c,d=this._events[l],p=arguments.length;if(d.fn){switch(d.once&&this.removeListener(n,d.fn,void 0,!0),p){case 1:return d.fn.call(d.context),!0;case 2:return d.fn.call(d.context,e),!0;case 3:return d.fn.call(d.context,e,r),!0;case 4:return d.fn.call(d.context,e,r,o),!0;case 5:return d.fn.call(d.context,e,r,o,t),!0;case 6:return d.fn.call(d.context,e,r,o,t,i),!0}for(c=1,g=new Array(p-1);c<p;c++)g[c-1]=arguments[c];d.fn.apply(d.context,g)}else{var s,u=d.length;for(c=0;c<u;c++)switch(d[c].once&&this.removeListener(n,d[c].fn,void 0,!0),p){case 1:d[c].fn.call(d[c].context);break;case 2:d[c].fn.call(d[c].context,e);break;case 3:d[c].fn.call(d[c].context,e,r);break;case 4:d[c].fn.call(d[c].context,e,r,o);break;default:if(!g)for(s=1,g=new Array(p-1);s<p;s++)g[s-1]=arguments[s];d[c].fn.apply(d[c].context,g)}}return!0},l.prototype.on=function(n,e,a){return t(this,n,e,a,!1)},l.prototype.once=function(n,e,a){return t(this,n,e,a,!0)},l.prototype.removeListener=function(n,e,r,o){var t=a?a+n:n;if(!this._events[t])return this;if(!e)return i(this,t),this;var l=this._events[t];if(l.fn)l.fn!==e||o&&!l.once||r&&l.context!==r||i(this,t);else{for(var g=0,c=[],d=l.length;g<d;g++)(l[g].fn!==e||o&&!l[g].once||r&&l[g].context!==r)&&c.push(l[g]);c.length?this._events[t]=1===c.length?c[0]:c:i(this,t)}return this},l.prototype.removeAllListeners=function(n){var e;return n?(e=a?a+n:n,this._events[e]&&i(this,e)):(this._events=new r,this._eventsCount=0),this},l.prototype.off=l.prototype.removeListener,l.prototype.addListener=l.prototype.on,l.prefixed=a,l.EventEmitter=l,n.exports=l}({get exports(){return el},set exports(n){el=n}});var al=el;function rl(n,e){var a=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),a.push.apply(a,r)}return a}function ol(n){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=ca(e,"timeInterval",null);ii(a)||(a=20);let r=ca(e,"tolerancePixel",null);ii(r)||(r=1);let o,t=new al,i={offsetWidth:0,offsetHeight:0,clientWidth:0,clientHeight:0,windowWidth:0,windowHeight:0},l=ut(i),g={width:"",height:""};if(!Ft(n))return console.log("invalid f",n),null;o=setInterval((()=>{let e=n();if(e){let n={offsetWidth:e.offsetWidth,offsetHeight:e.offsetHeight,clientWidth:e.clientWidth,clientHeight:e.clientHeight,windowWidth:window.innerWidth,windowHeight:window.innerHeight},a=l.offsetWidth-n.offsetWidth,o=l.offsetHeight-n.offsetHeight,c=Math.abs(a)>r,d=Math.abs(o)>r,p="";a>0?p="smaller":a<0&&(p="larger");let s="";if(o>0?s="smaller":o<0&&(s="larger"),g={width:p,height:s},c||d){let a=function(n){for(var e=1;e<arguments.length;e++){var a=null!=arguments[e]?arguments[e]:{};e%2?rl(Object(a),!0).forEach((function(e){nl(n,e,a[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(a)):rl(Object(a)).forEach((function(e){Object.defineProperty(n,e,Object.getOwnPropertyDescriptor(a,e))}))}return n}({},l);setTimeout((()=>{n.offsetWidth>0&&n.offsetHeight>0&&(t.emit("resize",{sold:a,snew:n,smode:g,ele:e}),t.emit("resizeWithWindow",{sold:a,snew:n,smode:g,ele:e,from:"dom"}))}),1)}i=l,l=n}}),a);let c=n=>{t.emit("resizeWithWindow",{sold:i,snew:l,smode:g,from:"window"})};return window.addEventListener("resize",c),t.clear=()=>{clearInterval(o),window.removeEventListener("resize",c)},t}var tl="top",il="bottom",ll="right",gl="left",cl="auto",dl=[tl,il,ll,gl],pl="start",sl="end",ul="clippingParents",fl="viewport",vl="popper",hl="reference",ml=dl.reduce((function(n,e){return n.concat([e+"-"+pl,e+"-"+sl])}),[]),wl=[].concat(dl,[cl]).reduce((function(n,e){return n.concat([e,e+"-"+pl,e+"-"+sl])}),[]),bl=["beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite"];function yl(n){return n?(n.nodeName||"").toLowerCase():null}function kl(n){if(null==n)return window;if("[object Window]"!==n.toString()){var e=n.ownerDocument;return e&&e.defaultView||window}return n}function xl(n){return n instanceof kl(n).Element||n instanceof Element}function zl(n){return n instanceof kl(n).HTMLElement||n instanceof HTMLElement}function Ml(n){return"undefined"!=typeof ShadowRoot&&(n instanceof kl(n).ShadowRoot||n instanceof ShadowRoot)}var Cl={name:"applyStyles",enabled:!0,phase:"write",fn:function(n){var e=n.state;Object.keys(e.elements).forEach((function(n){var a=e.styles[n]||{},r=e.attributes[n]||{},o=e.elements[n];zl(o)&&yl(o)&&(Object.assign(o.style,a),Object.keys(r).forEach((function(n){var e=r[n];!1===e?o.removeAttribute(n):o.setAttribute(n,!0===e?"":e)})))}))},effect:function(n){var e=n.state,a={popper:{position:e.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(e.elements.popper.style,a.popper),e.styles=a,e.elements.arrow&&Object.assign(e.elements.arrow.style,a.arrow),function(){Object.keys(e.elements).forEach((function(n){var r=e.elements[n],o=e.attributes[n]||{},t=Object.keys(e.styles.hasOwnProperty(n)?e.styles[n]:a[n]).reduce((function(n,e){return n[e]="",n}),{});zl(r)&&yl(r)&&(Object.assign(r.style,t),Object.keys(o).forEach((function(n){r.removeAttribute(n)})))}))}},requires:["computeStyles"]};function Dl(n){return n.split("-")[0]}var jl=Math.max,Al=Math.min,Tl=Math.round;function El(){var n=navigator.userAgentData;return null!=n&&n.brands&&Array.isArray(n.brands)?n.brands.map((function(n){return n.brand+"/"+n.version})).join(" "):navigator.userAgent}function Sl(){return!/^((?!chrome|android).)*safari/i.test(El())}function Ol(n,e,a){void 0===e&&(e=!1),void 0===a&&(a=!1);var r=n.getBoundingClientRect(),o=1,t=1;e&&zl(n)&&(o=n.offsetWidth>0&&Tl(r.width)/n.offsetWidth||1,t=n.offsetHeight>0&&Tl(r.height)/n.offsetHeight||1);var i=(xl(n)?kl(n):window).visualViewport,l=!Sl()&&a,g=(r.left+(l&&i?i.offsetLeft:0))/o,c=(r.top+(l&&i?i.offsetTop:0))/t,d=r.width/o,p=r.height/t;return{width:d,height:p,top:c,right:g+d,bottom:c+p,left:g,x:g,y:c}}function Nl(n){var e=Ol(n),a=n.offsetWidth,r=n.offsetHeight;return Math.abs(e.width-a)<=1&&(a=e.width),Math.abs(e.height-r)<=1&&(r=e.height),{x:n.offsetLeft,y:n.offsetTop,width:a,height:r}}function Ll(n,e){var a=e.getRootNode&&e.getRootNode();if(n.contains(e))return!0;if(a&&Ml(a)){var r=e;do{if(r&&n.isSameNode(r))return!0;r=r.parentNode||r.host}while(r)}return!1}function Hl(n){return kl(n).getComputedStyle(n)}function Il(n){return["table","td","th"].indexOf(yl(n))>=0}function Fl(n){return((xl(n)?n.ownerDocument:n.document)||window.document).documentElement}function Rl(n){return"html"===yl(n)?n:n.assignedSlot||n.parentNode||(Ml(n)?n.host:null)||Fl(n)}function Pl(n){return zl(n)&&"fixed"!==Hl(n).position?n.offsetParent:null}function Bl(n){for(var e=kl(n),a=Pl(n);a&&Il(a)&&"static"===Hl(a).position;)a=Pl(a);return a&&("html"===yl(a)||"body"===yl(a)&&"static"===Hl(a).position)?e:a||function(n){var e=/firefox/i.test(El());if(/Trident/i.test(El())&&zl(n)&&"fixed"===Hl(n).position)return null;var a=Rl(n);for(Ml(a)&&(a=a.host);zl(a)&&["html","body"].indexOf(yl(a))<0;){var r=Hl(a);if("none"!==r.transform||"none"!==r.perspective||"paint"===r.contain||-1!==["transform","perspective"].indexOf(r.willChange)||e&&"filter"===r.willChange||e&&r.filter&&"none"!==r.filter)return a;a=a.parentNode}return null}(n)||e}function Ul(n){return["top","bottom"].indexOf(n)>=0?"x":"y"}function Vl(n,e,a){return jl(n,Al(e,a))}function Wl(n){return Object.assign({},{top:0,right:0,bottom:0,left:0},n)}function _l(n,e){return e.reduce((function(e,a){return e[a]=n,e}),{})}var Gl={name:"arrow",enabled:!0,phase:"main",fn:function(n){var e,a=n.state,r=n.name,o=n.options,t=a.elements.arrow,i=a.modifiersData.popperOffsets,l=Dl(a.placement),g=Ul(l),c=[gl,ll].indexOf(l)>=0?"height":"width";if(t&&i){var d=function(n,e){return Wl("number"!=typeof(n="function"==typeof n?n(Object.assign({},e.rects,{placement:e.placement})):n)?n:_l(n,dl))}(o.padding,a),p=Nl(t),s="y"===g?tl:gl,u="y"===g?il:ll,f=a.rects.reference[c]+a.rects.reference[g]-i[g]-a.rects.popper[c],v=i[g]-a.rects.reference[g],h=Bl(t),m=h?"y"===g?h.clientHeight||0:h.clientWidth||0:0,w=f/2-v/2,b=d[s],y=m-p[c]-d[u],k=m/2-p[c]/2+w,x=Vl(b,k,y),z=g;a.modifiersData[r]=((e={})[z]=x,e.centerOffset=x-k,e)}},effect:function(n){var e=n.state,a=n.options.element,r=void 0===a?"[data-popper-arrow]":a;null!=r&&("string"!=typeof r||(r=e.elements.popper.querySelector(r)))&&Ll(e.elements.popper,r)&&(e.elements.arrow=r)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function Ql(n){return n.split("-")[1]}var Yl={top:"auto",right:"auto",bottom:"auto",left:"auto"};function Kl(n){var e,a=n.popper,r=n.popperRect,o=n.placement,t=n.variation,i=n.offsets,l=n.position,g=n.gpuAcceleration,c=n.adaptive,d=n.roundOffsets,p=n.isFixed,s=i.x,u=void 0===s?0:s,f=i.y,v=void 0===f?0:f,h="function"==typeof d?d({x:u,y:v}):{x:u,y:v};u=h.x,v=h.y;var m=i.hasOwnProperty("x"),w=i.hasOwnProperty("y"),b=gl,y=tl,k=window;if(c){var x=Bl(a),z="clientHeight",M="clientWidth";if(x===kl(a)&&"static"!==Hl(x=Fl(a)).position&&"absolute"===l&&(z="scrollHeight",M="scrollWidth"),o===tl||(o===gl||o===ll)&&t===sl)y=il,v-=(p&&x===k&&k.visualViewport?k.visualViewport.height:x[z])-r.height,v*=g?1:-1;if(o===gl||(o===tl||o===il)&&t===sl)b=ll,u-=(p&&x===k&&k.visualViewport?k.visualViewport.width:x[M])-r.width,u*=g?1:-1}var C,D=Object.assign({position:l},c&&Yl),j=!0===d?function(n,e){var a=n.x,r=n.y,o=e.devicePixelRatio||1;return{x:Tl(a*o)/o||0,y:Tl(r*o)/o||0}}({x:u,y:v},kl(a)):{x:u,y:v};return u=j.x,v=j.y,g?Object.assign({},D,((C={})[y]=w?"0":"",C[b]=m?"0":"",C.transform=(k.devicePixelRatio||1)<=1?"translate("+u+"px, "+v+"px)":"translate3d("+u+"px, "+v+"px, 0)",C)):Object.assign({},D,((e={})[y]=w?v+"px":"",e[b]=m?u+"px":"",e.transform="",e))}var ql={passive:!0};var Xl={left:"right",right:"left",bottom:"top",top:"bottom"};function Jl(n){return n.replace(/left|right|bottom|top/g,(function(n){return Xl[n]}))}var Zl={start:"end",end:"start"};function $l(n){return n.replace(/start|end/g,(function(n){return Zl[n]}))}function ng(n){var e=kl(n);return{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function eg(n){return Ol(Fl(n)).left+ng(n).scrollLeft}function ag(n){var e=Hl(n),a=e.overflow,r=e.overflowX,o=e.overflowY;return/auto|scroll|overlay|hidden/.test(a+o+r)}function rg(n){return["html","body","#document"].indexOf(yl(n))>=0?n.ownerDocument.body:zl(n)&&ag(n)?n:rg(Rl(n))}function og(n,e){var a;void 0===e&&(e=[]);var r=rg(n),o=r===(null==(a=n.ownerDocument)?void 0:a.body),t=kl(r),i=o?[t].concat(t.visualViewport||[],ag(r)?r:[]):r,l=e.concat(i);return o?l:l.concat(og(Rl(i)))}function tg(n){return Object.assign({},n,{left:n.x,top:n.y,right:n.x+n.width,bottom:n.y+n.height})}function ig(n,e,a){return e===fl?tg(function(n,e){var a=kl(n),r=Fl(n),o=a.visualViewport,t=r.clientWidth,i=r.clientHeight,l=0,g=0;if(o){t=o.width,i=o.height;var c=Sl();(c||!c&&"fixed"===e)&&(l=o.offsetLeft,g=o.offsetTop)}return{width:t,height:i,x:l+eg(n),y:g}}(n,a)):xl(e)?function(n,e){var a=Ol(n,!1,"fixed"===e);return a.top=a.top+n.clientTop,a.left=a.left+n.clientLeft,a.bottom=a.top+n.clientHeight,a.right=a.left+n.clientWidth,a.width=n.clientWidth,a.height=n.clientHeight,a.x=a.left,a.y=a.top,a}(e,a):tg(function(n){var e,a=Fl(n),r=ng(n),o=null==(e=n.ownerDocument)?void 0:e.body,t=jl(a.scrollWidth,a.clientWidth,o?o.scrollWidth:0,o?o.clientWidth:0),i=jl(a.scrollHeight,a.clientHeight,o?o.scrollHeight:0,o?o.clientHeight:0),l=-r.scrollLeft+eg(n),g=-r.scrollTop;return"rtl"===Hl(o||a).direction&&(l+=jl(a.clientWidth,o?o.clientWidth:0)-t),{width:t,height:i,x:l,y:g}}(Fl(n)))}function lg(n,e,a,r){var o="clippingParents"===e?function(n){var e=og(Rl(n)),a=["absolute","fixed"].indexOf(Hl(n).position)>=0&&zl(n)?Bl(n):n;return xl(a)?e.filter((function(n){return xl(n)&&Ll(n,a)&&"body"!==yl(n)})):[]}(n):[].concat(e),t=[].concat(o,[a]),i=t[0],l=t.reduce((function(e,a){var o=ig(n,a,r);return e.top=jl(o.top,e.top),e.right=Al(o.right,e.right),e.bottom=Al(o.bottom,e.bottom),e.left=jl(o.left,e.left),e}),ig(n,i,r));return l.width=l.right-l.left,l.height=l.bottom-l.top,l.x=l.left,l.y=l.top,l}function gg(n){var e,a=n.reference,r=n.element,o=n.placement,t=o?Dl(o):null,i=o?Ql(o):null,l=a.x+a.width/2-r.width/2,g=a.y+a.height/2-r.height/2;switch(t){case tl:e={x:l,y:a.y-r.height};break;case il:e={x:l,y:a.y+a.height};break;case ll:e={x:a.x+a.width,y:g};break;case gl:e={x:a.x-r.width,y:g};break;default:e={x:a.x,y:a.y}}var c=t?Ul(t):null;if(null!=c){var d="y"===c?"height":"width";switch(i){case pl:e[c]=e[c]-(a[d]/2-r[d]/2);break;case sl:e[c]=e[c]+(a[d]/2-r[d]/2)}}return e}function cg(n,e){void 0===e&&(e={});var a=e,r=a.placement,o=void 0===r?n.placement:r,t=a.strategy,i=void 0===t?n.strategy:t,l=a.boundary,g=void 0===l?ul:l,c=a.rootBoundary,d=void 0===c?fl:c,p=a.elementContext,s=void 0===p?vl:p,u=a.altBoundary,f=void 0!==u&&u,v=a.padding,h=void 0===v?0:v,m=Wl("number"!=typeof h?h:_l(h,dl)),w=s===vl?hl:vl,b=n.rects.popper,y=n.elements[f?w:s],k=lg(xl(y)?y:y.contextElement||Fl(n.elements.popper),g,d,i),x=Ol(n.elements.reference),z=gg({reference:x,element:b,strategy:"absolute",placement:o}),M=tg(Object.assign({},b,z)),C=s===vl?M:x,D={top:k.top-C.top+m.top,bottom:C.bottom-k.bottom+m.bottom,left:k.left-C.left+m.left,right:C.right-k.right+m.right},j=n.modifiersData.offset;if(s===vl&&j){var A=j[o];Object.keys(D).forEach((function(n){var e=[ll,il].indexOf(n)>=0?1:-1,a=[tl,il].indexOf(n)>=0?"y":"x";D[n]+=A[a]*e}))}return D}function dg(n,e){void 0===e&&(e={});var a=e,r=a.placement,o=a.boundary,t=a.rootBoundary,i=a.padding,l=a.flipVariations,g=a.allowedAutoPlacements,c=void 0===g?wl:g,d=Ql(r),p=d?l?ml:ml.filter((function(n){return Ql(n)===d})):dl,s=p.filter((function(n){return c.indexOf(n)>=0}));0===s.length&&(s=p);var u=s.reduce((function(e,a){return e[a]=cg(n,{placement:a,boundary:o,rootBoundary:t,padding:i})[Dl(a)],e}),{});return Object.keys(u).sort((function(n,e){return u[n]-u[e]}))}var pg={name:"flip",enabled:!0,phase:"main",fn:function(n){var e=n.state,a=n.options,r=n.name;if(!e.modifiersData[r]._skip){for(var o=a.mainAxis,t=void 0===o||o,i=a.altAxis,l=void 0===i||i,g=a.fallbackPlacements,c=a.padding,d=a.boundary,p=a.rootBoundary,s=a.altBoundary,u=a.flipVariations,f=void 0===u||u,v=a.allowedAutoPlacements,h=e.options.placement,m=Dl(h),w=g||(m===h||!f?[Jl(h)]:function(n){if(Dl(n)===cl)return[];var e=Jl(n);return[$l(n),e,$l(e)]}(h)),b=[h].concat(w).reduce((function(n,a){return n.concat(Dl(a)===cl?dg(e,{placement:a,boundary:d,rootBoundary:p,padding:c,flipVariations:f,allowedAutoPlacements:v}):a)}),[]),y=e.rects.reference,k=e.rects.popper,x=new Map,z=!0,M=b[0],C=0;C<b.length;C++){var D=b[C],j=Dl(D),A=Ql(D)===pl,T=[tl,il].indexOf(j)>=0,E=T?"width":"height",S=cg(e,{placement:D,boundary:d,rootBoundary:p,altBoundary:s,padding:c}),O=T?A?ll:gl:A?il:tl;y[E]>k[E]&&(O=Jl(O));var N=Jl(O),L=[];if(t&&L.push(S[j]<=0),l&&L.push(S[O]<=0,S[N]<=0),L.every((function(n){return n}))){M=D,z=!1;break}x.set(D,L)}if(z)for(var H=function(n){var e=b.find((function(e){var a=x.get(e);if(a)return a.slice(0,n).every((function(n){return n}))}));if(e)return M=e,"break"},I=f?3:1;I>0;I--){if("break"===H(I))break}e.placement!==M&&(e.modifiersData[r]._skip=!0,e.placement=M,e.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function sg(n,e,a){return void 0===a&&(a={x:0,y:0}),{top:n.top-e.height-a.y,right:n.right-e.width+a.x,bottom:n.bottom-e.height+a.y,left:n.left-e.width-a.x}}function ug(n){return[tl,ll,il,gl].some((function(e){return n[e]>=0}))}var fg={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(n){var e=n.state,a=n.options,r=n.name,o=a.offset,t=void 0===o?[0,0]:o,i=wl.reduce((function(n,a){return n[a]=function(n,e,a){var r=Dl(n),o=[gl,tl].indexOf(r)>=0?-1:1,t="function"==typeof a?a(Object.assign({},e,{placement:n})):a,i=t[0],l=t[1];return i=i||0,l=(l||0)*o,[gl,ll].indexOf(r)>=0?{x:l,y:i}:{x:i,y:l}}(a,e.rects,t),n}),{}),l=i[e.placement],g=l.x,c=l.y;null!=e.modifiersData.popperOffsets&&(e.modifiersData.popperOffsets.x+=g,e.modifiersData.popperOffsets.y+=c),e.modifiersData[r]=i}};var vg={name:"preventOverflow",enabled:!0,phase:"main",fn:function(n){var e=n.state,a=n.options,r=n.name,o=a.mainAxis,t=void 0===o||o,i=a.altAxis,l=void 0!==i&&i,g=a.boundary,c=a.rootBoundary,d=a.altBoundary,p=a.padding,s=a.tether,u=void 0===s||s,f=a.tetherOffset,v=void 0===f?0:f,h=cg(e,{boundary:g,rootBoundary:c,padding:p,altBoundary:d}),m=Dl(e.placement),w=Ql(e.placement),b=!w,y=Ul(m),k="x"===y?"y":"x",x=e.modifiersData.popperOffsets,z=e.rects.reference,M=e.rects.popper,C="function"==typeof v?v(Object.assign({},e.rects,{placement:e.placement})):v,D="number"==typeof C?{mainAxis:C,altAxis:C}:Object.assign({mainAxis:0,altAxis:0},C),j=e.modifiersData.offset?e.modifiersData.offset[e.placement]:null,A={x:0,y:0};if(x){if(t){var T,E="y"===y?tl:gl,S="y"===y?il:ll,O="y"===y?"height":"width",N=x[y],L=N+h[E],H=N-h[S],I=u?-M[O]/2:0,F=w===pl?z[O]:M[O],R=w===pl?-M[O]:-z[O],P=e.elements.arrow,B=u&&P?Nl(P):{width:0,height:0},U=e.modifiersData["arrow#persistent"]?e.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},V=U[E],W=U[S],_=Vl(0,z[O],B[O]),G=b?z[O]/2-I-_-V-D.mainAxis:F-_-V-D.mainAxis,Q=b?-z[O]/2+I+_+W+D.mainAxis:R+_+W+D.mainAxis,Y=e.elements.arrow&&Bl(e.elements.arrow),K=Y?"y"===y?Y.clientTop||0:Y.clientLeft||0:0,q=null!=(T=null==j?void 0:j[y])?T:0,X=N+Q-q,J=Vl(u?Al(L,N+G-q-K):L,N,u?jl(H,X):H);x[y]=J,A[y]=J-N}if(l){var Z,$="x"===y?tl:gl,nn="x"===y?il:ll,en=x[k],an="y"===k?"height":"width",rn=en+h[$],on=en-h[nn],tn=-1!==[tl,gl].indexOf(m),ln=null!=(Z=null==j?void 0:j[k])?Z:0,gn=tn?rn:en-z[an]-M[an]-ln+D.altAxis,cn=tn?en+z[an]+M[an]-ln-D.altAxis:on,dn=u&&tn?function(n,e,a){var r=Vl(n,e,a);return r>a?a:r}(gn,en,cn):Vl(u?gn:rn,en,u?cn:on);x[k]=dn,A[k]=dn-en}e.modifiersData[r]=A}},requiresIfExists:["offset"]};function hg(n,e,a){void 0===a&&(a=!1);var r,o,t=zl(e),i=zl(e)&&function(n){var e=n.getBoundingClientRect(),a=Tl(e.width)/n.offsetWidth||1,r=Tl(e.height)/n.offsetHeight||1;return 1!==a||1!==r}(e),l=Fl(e),g=Ol(n,i,a),c={scrollLeft:0,scrollTop:0},d={x:0,y:0};return(t||!t&&!a)&&(("body"!==yl(e)||ag(l))&&(c=(r=e)!==kl(r)&&zl(r)?{scrollLeft:(o=r).scrollLeft,scrollTop:o.scrollTop}:ng(r)),zl(e)?((d=Ol(e,!0)).x+=e.clientLeft,d.y+=e.clientTop):l&&(d.x=eg(l))),{x:g.left+c.scrollLeft-d.x,y:g.top+c.scrollTop-d.y,width:g.width,height:g.height}}function mg(n){var e=new Map,a=new Set,r=[];function o(n){a.add(n.name),[].concat(n.requires||[],n.requiresIfExists||[]).forEach((function(n){if(!a.has(n)){var r=e.get(n);r&&o(r)}})),r.push(n)}return n.forEach((function(n){e.set(n.name,n)})),n.forEach((function(n){a.has(n.name)||o(n)})),r}var wg={placement:"bottom",modifiers:[],strategy:"absolute"};function bg(){for(var n=arguments.length,e=new Array(n),a=0;a<n;a++)e[a]=arguments[a];return!e.some((function(n){return!(n&&"function"==typeof n.getBoundingClientRect)}))}function yg(n){void 0===n&&(n={});var e=n,a=e.defaultModifiers,r=void 0===a?[]:a,o=e.defaultOptions,t=void 0===o?wg:o;return function(n,e,a){void 0===a&&(a=t);var o,i,l={placement:"bottom",orderedModifiers:[],options:Object.assign({},wg,t),modifiersData:{},elements:{reference:n,popper:e},attributes:{},styles:{}},g=[],c=!1,d={state:l,setOptions:function(a){var o="function"==typeof a?a(l.options):a;p(),l.options=Object.assign({},t,l.options,o),l.scrollParents={reference:xl(n)?og(n):n.contextElement?og(n.contextElement):[],popper:og(e)};var i,c,s=function(n){var e=mg(n);return bl.reduce((function(n,a){return n.concat(e.filter((function(n){return n.phase===a})))}),[])}((i=[].concat(r,l.options.modifiers),c=i.reduce((function(n,e){var a=n[e.name];return n[e.name]=a?Object.assign({},a,e,{options:Object.assign({},a.options,e.options),data:Object.assign({},a.data,e.data)}):e,n}),{}),Object.keys(c).map((function(n){return c[n]}))));return l.orderedModifiers=s.filter((function(n){return n.enabled})),l.orderedModifiers.forEach((function(n){var e=n.name,a=n.options,r=void 0===a?{}:a,o=n.effect;if("function"==typeof o){var t=o({state:l,name:e,instance:d,options:r}),i=function(){};g.push(t||i)}})),d.update()},forceUpdate:function(){if(!c){var n=l.elements,e=n.reference,a=n.popper;if(bg(e,a)){l.rects={reference:hg(e,Bl(a),"fixed"===l.options.strategy),popper:Nl(a)},l.reset=!1,l.placement=l.options.placement,l.orderedModifiers.forEach((function(n){return l.modifiersData[n.name]=Object.assign({},n.data)}));for(var r=0;r<l.orderedModifiers.length;r++)if(!0!==l.reset){var o=l.orderedModifiers[r],t=o.fn,i=o.options,g=void 0===i?{}:i,p=o.name;"function"==typeof t&&(l=t({state:l,options:g,name:p,instance:d})||l)}else l.reset=!1,r=-1}}},update:(o=function(){return new Promise((function(n){d.forceUpdate(),n(l)}))},function(){return i||(i=new Promise((function(n){Promise.resolve().then((function(){i=void 0,n(o())}))}))),i}),destroy:function(){p(),c=!0}};if(!bg(n,e))return d;function p(){g.forEach((function(n){return n()})),g=[]}return d.setOptions(a).then((function(n){!c&&a.onFirstUpdate&&a.onFirstUpdate(n)})),d}}var kg=yg({defaultModifiers:[{name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(n){var e=n.state,a=n.instance,r=n.options,o=r.scroll,t=void 0===o||o,i=r.resize,l=void 0===i||i,g=kl(e.elements.popper),c=[].concat(e.scrollParents.reference,e.scrollParents.popper);return t&&c.forEach((function(n){n.addEventListener("scroll",a.update,ql)})),l&&g.addEventListener("resize",a.update,ql),function(){t&&c.forEach((function(n){n.removeEventListener("scroll",a.update,ql)})),l&&g.removeEventListener("resize",a.update,ql)}},data:{}},{name:"popperOffsets",enabled:!0,phase:"read",fn:function(n){var e=n.state,a=n.name;e.modifiersData[a]=gg({reference:e.rects.reference,element:e.rects.popper,strategy:"absolute",placement:e.placement})},data:{}},{name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(n){var e=n.state,a=n.options,r=a.gpuAcceleration,o=void 0===r||r,t=a.adaptive,i=void 0===t||t,l=a.roundOffsets,g=void 0===l||l,c={placement:Dl(e.placement),variation:Ql(e.placement),popper:e.elements.popper,popperRect:e.rects.popper,gpuAcceleration:o,isFixed:"fixed"===e.options.strategy};null!=e.modifiersData.popperOffsets&&(e.styles.popper=Object.assign({},e.styles.popper,Kl(Object.assign({},c,{offsets:e.modifiersData.popperOffsets,position:e.options.strategy,adaptive:i,roundOffsets:g})))),null!=e.modifiersData.arrow&&(e.styles.arrow=Object.assign({},e.styles.arrow,Kl(Object.assign({},c,{offsets:e.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:g})))),e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-placement":e.placement})},data:{}},Cl,fg,pg,vg,Gl,{name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(n){var e=n.state,a=n.name,r=e.rects.reference,o=e.rects.popper,t=e.modifiersData.preventOverflow,i=cg(e,{elementContext:"reference"}),l=cg(e,{altBoundary:!0}),g=sg(i,r),c=sg(l,o,t),d=ug(g),p=ug(c);e.modifiersData[a]={referenceClippingOffsets:g,popperEscapeOffsets:c,isReferenceHidden:d,hasPopperEscaped:p},e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-reference-hidden":d,"data-popper-escaped":p})}}]}),xg="tippy-content",zg="tippy-backdrop",Mg="tippy-arrow",Cg="tippy-svg-arrow",Dg={passive:!0,capture:!0},jg=function(){return document.body};function Ag(n,e,a){if(Array.isArray(n)){var r=n[e];return null==r?Array.isArray(a)?a[e]:a:r}return n}function Tg(n,e){var a={}.toString.call(n);return 0===a.indexOf("[object")&&a.indexOf(e+"]")>-1}function Eg(n,e){return"function"==typeof n?n.apply(void 0,e):n}function Sg(n,e){return 0===e?n:function(r){clearTimeout(a),a=setTimeout((function(){n(r)}),e)};var a}function Og(n){return[].concat(n)}function Ng(n,e){-1===n.indexOf(e)&&n.push(e)}function Lg(n){return[].slice.call(n)}function Hg(n){return Object.keys(n).reduce((function(e,a){return void 0!==n[a]&&(e[a]=n[a]),e}),{})}function Ig(){return document.createElement("div")}function Fg(n){return["Element","Fragment"].some((function(e){return Tg(n,e)}))}function Rg(n){return Fg(n)?[n]:function(n){return Tg(n,"NodeList")}(n)?Lg(n):Array.isArray(n)?n:Lg(document.querySelectorAll(n))}function Pg(n,e){n.forEach((function(n){n&&(n.style.transitionDuration=e+"ms")}))}function Bg(n,e){n.forEach((function(n){n&&n.setAttribute("data-state",e)}))}function Ug(n,e,a){var r=e+"EventListener";["transitionend","webkitTransitionEnd"].forEach((function(e){n[r](e,a)}))}function Vg(n,e){for(var a=e;a;){var r;if(n.contains(a))return!0;a=null==a.getRootNode||null==(r=a.getRootNode())?void 0:r.host}return!1}var Wg={isTouch:!1},_g=0;function Gg(){Wg.isTouch||(Wg.isTouch=!0,window.performance&&document.addEventListener("mousemove",Qg))}function Qg(){var n=performance.now();n-_g<20&&(Wg.isTouch=!1,document.removeEventListener("mousemove",Qg)),_g=n}function Yg(){var n,e=document.activeElement;if((n=e)&&n._tippy&&n._tippy.reference===n){var a=e._tippy;e.blur&&!a.state.isVisible&&e.blur()}}var Kg,qg=!!("undefined"!=typeof window&&"undefined"!=typeof document)&&!!window.msCrypto;function Xg(n){return[n+"() was called on a"+("destroy"===n?"n already-":" ")+"destroyed instance. This is a no-op but","indicates a potential memory leak."].join(" ")}function Jg(n){return n.replace(/[ \t]{2,}/g," ").replace(/^[ \t]*/gm,"").trim()}function Zg(n){return Jg("\n %ctippy.js\n\n %c"+Jg(n)+"\n\n %c👷 This is a development-only message. It will be removed in production.\n ")}function $g(n){return[Zg(n),"color: #00C584; font-size: 1.3em; font-weight: bold;","line-height: 1.5","color: #a6a095;"]}function nc(n,e){var a;n&&!Kg.has(e)&&(Kg.add(e),(a=console).warn.apply(a,$g(e)))}function ec(n,e){var a;n&&!Kg.has(e)&&(Kg.add(e),(a=console).error.apply(a,$g(e)))}Kg=new Set;var ac={animateFill:!1,followCursor:!1,inlinePositioning:!1,sticky:!1},rc=Object.assign({appendTo:jg,aria:{content:"auto",expanded:"auto"},delay:0,duration:[300,250],getReferenceClientRect:null,hideOnClick:!0,ignoreAttributes:!1,interactive:!1,interactiveBorder:2,interactiveDebounce:0,moveTransition:"",offset:[0,10],onAfterUpdate:function(){},onBeforeUpdate:function(){},onCreate:function(){},onDestroy:function(){},onHidden:function(){},onHide:function(){},onMount:function(){},onShow:function(){},onShown:function(){},onTrigger:function(){},onUntrigger:function(){},onClickOutside:function(){},placement:"top",plugins:[],popperOptions:{},render:null,showOnCreate:!1,touch:!0,trigger:"mouseenter focus",triggerTarget:null},ac,{allowHTML:!1,animation:"fade",arrow:!0,content:"",inertia:!1,maxWidth:350,role:"tooltip",theme:"",zIndex:9999}),oc=Object.keys(rc);function tc(n){var e=(n.plugins||[]).reduce((function(e,a){var r,o=a.name,t=a.defaultValue;o&&(e[o]=void 0!==n[o]?n[o]:null!=(r=rc[o])?r:t);return e}),{});return Object.assign({},n,e)}function ic(n,e){var a=Object.assign({},e,{content:Eg(e.content,[n])},e.ignoreAttributes?{}:function(n,e){return(e?Object.keys(tc(Object.assign({},rc,{plugins:e}))):oc).reduce((function(e,a){var r=(n.getAttribute("data-tippy-"+a)||"").trim();if(!r)return e;if("content"===a)e[a]=r;else try{e[a]=JSON.parse(r)}catch(n){e[a]=r}return e}),{})}(n,e.plugins));return a.aria=Object.assign({},rc.aria,a.aria),a.aria={expanded:"auto"===a.aria.expanded?e.interactive:a.aria.expanded,content:"auto"===a.aria.content?e.interactive?null:"describedby":a.aria.content},a}function lc(n,e){void 0===n&&(n={}),void 0===e&&(e=[]),Object.keys(n).forEach((function(n){var a,r,o=function(n,e){var a=Object.assign({},n);return e.forEach((function(n){delete a[n]})),a}(rc,Object.keys(ac)),t=(a=o,r=n,!{}.hasOwnProperty.call(a,r));t&&(t=0===e.filter((function(e){return e.name===n})).length),nc(t,["`"+n+"`","is not a valid prop. You may have spelled it incorrectly, or if it's","a plugin, forgot to pass it in an array as props.plugins.","\n\n","All props: https://atomiks.github.io/tippyjs/v6/all-props/\n","Plugins: https://atomiks.github.io/tippyjs/v6/plugins/"].join(" "))}))}var gc=function(){return"innerHTML"};function cc(n,e){n[gc()]=e}function dc(n){var e=Ig();return!0===n?e.className=Mg:(e.className=Cg,Fg(n)?e.appendChild(n):cc(e,n)),e}function pc(n,e){Fg(e.content)?(cc(n,""),n.appendChild(e.content)):"function"!=typeof e.content&&(e.allowHTML?cc(n,e.content):n.textContent=e.content)}function sc(n){var e=n.firstElementChild,a=Lg(e.children);return{box:e,content:a.find((function(n){return n.classList.contains(xg)})),arrow:a.find((function(n){return n.classList.contains(Mg)||n.classList.contains(Cg)})),backdrop:a.find((function(n){return n.classList.contains(zg)}))}}function uc(n){var e=Ig(),a=Ig();a.className="tippy-box",a.setAttribute("data-state","hidden"),a.setAttribute("tabindex","-1");var r=Ig();function o(a,r){var o=sc(e),t=o.box,i=o.content,l=o.arrow;r.theme?t.setAttribute("data-theme",r.theme):t.removeAttribute("data-theme"),"string"==typeof r.animation?t.setAttribute("data-animation",r.animation):t.removeAttribute("data-animation"),r.inertia?t.setAttribute("data-inertia",""):t.removeAttribute("data-inertia"),t.style.maxWidth="number"==typeof r.maxWidth?r.maxWidth+"px":r.maxWidth,r.role?t.setAttribute("role",r.role):t.removeAttribute("role"),a.content===r.content&&a.allowHTML===r.allowHTML||pc(i,n.props),r.arrow?l?a.arrow!==r.arrow&&(t.removeChild(l),t.appendChild(dc(r.arrow))):t.appendChild(dc(r.arrow)):l&&t.removeChild(l)}return r.className=xg,r.setAttribute("data-state","hidden"),pc(r,n.props),e.appendChild(a),a.appendChild(r),o(n.props,n.props),{popper:e,onUpdate:o}}uc.$$tippy=!0;var fc=1,vc=[],hc=[];function mc(n,e){var a,r,o,t,i,l,g,c,d=ic(n,Object.assign({},rc,tc(Hg(e)))),p=!1,s=!1,u=!1,f=!1,v=[],h=Sg(Y,d.interactiveDebounce),m=fc++,w=(c=d.plugins).filter((function(n,e){return c.indexOf(n)===e})),b={id:m,reference:n,popper:Ig(),popperInstance:null,props:d,state:{isEnabled:!0,isVisible:!1,isDestroyed:!1,isMounted:!1,isShown:!1},plugins:w,clearDelayTimeouts:function(){clearTimeout(a),clearTimeout(r),cancelAnimationFrame(o)},setProps:function(e){if(nc(b.state.isDestroyed,Xg("setProps")),b.state.isDestroyed)return;N("onBeforeUpdate",[b,e]),G();var a=b.props,r=ic(n,Object.assign({},a,Hg(e),{ignoreAttributes:!0}));b.props=r,_(),a.interactiveDebounce!==r.interactiveDebounce&&(I(),h=Sg(Y,r.interactiveDebounce));a.triggerTarget&&!r.triggerTarget?Og(a.triggerTarget).forEach((function(n){n.removeAttribute("aria-expanded")})):r.triggerTarget&&n.removeAttribute("aria-expanded");H(),O(),x&&x(a,r);b.popperInstance&&(J(),$().forEach((function(n){requestAnimationFrame(n._tippy.popperInstance.forceUpdate)})));N("onAfterUpdate",[b,e])},setContent:function(n){b.setProps({content:n})},show:function(){nc(b.state.isDestroyed,Xg("show"));var n=b.state.isVisible,e=b.state.isDestroyed,a=!b.state.isEnabled,r=Wg.isTouch&&!b.props.touch,o=Ag(b.props.duration,0,rc.duration);if(n||e||a||r)return;if(A().hasAttribute("disabled"))return;if(N("onShow",[b],!1),!1===b.props.onShow(b))return;b.state.isVisible=!0,j()&&(k.style.visibility="visible");O(),B(),b.state.isMounted||(k.style.transition="none");if(j()){var t=E();Pg([t.box,t.content],0)}l=function(){var n;if(b.state.isVisible&&!f){if(f=!0,k.offsetHeight,k.style.transition=b.props.moveTransition,j()&&b.props.animation){var e=E(),a=e.box,r=e.content;Pg([a,r],o),Bg([a,r],"visible")}L(),H(),Ng(hc,b),null==(n=b.popperInstance)||n.forceUpdate(),N("onMount",[b]),b.props.animation&&j()&&function(n,e){V(n,e)}(o,(function(){b.state.isShown=!0,N("onShown",[b])}))}},function(){var n,e=b.props.appendTo,a=A();n=b.props.interactive&&e===jg||"parent"===e?a.parentNode:Eg(e,[a]);n.contains(k)||n.appendChild(k);b.state.isMounted=!0,J(),nc(b.props.interactive&&e===rc.appendTo&&a.nextElementSibling!==k,["Interactive tippy element may not be accessible via keyboard","navigation because it is not directly after the reference element","in the DOM source order.","\n\n","Using a wrapper <div> or <span> tag around the reference element","solves this by creating a new parentNode context.","\n\n","Specifying `appendTo: document.body` silences this warning, but it","assumes you are using a focus management solution to handle","keyboard navigation.","\n\n","See: https://atomiks.github.io/tippyjs/v6/accessibility/#interactivity"].join(" "))}()},hide:function(){nc(b.state.isDestroyed,Xg("hide"));var n=!b.state.isVisible,e=b.state.isDestroyed,a=!b.state.isEnabled,r=Ag(b.props.duration,1,rc.duration);if(n||e||a)return;if(N("onHide",[b],!1),!1===b.props.onHide(b))return;b.state.isVisible=!1,b.state.isShown=!1,f=!1,p=!1,j()&&(k.style.visibility="hidden");if(I(),U(),O(!0),j()){var o=E(),t=o.box,i=o.content;b.props.animation&&(Pg([t,i],r),Bg([t,i],"hidden"))}L(),H(),b.props.animation?j()&&function(n,e){V(n,(function(){!b.state.isVisible&&k.parentNode&&k.parentNode.contains(k)&&e()}))}(r,b.unmount):b.unmount()},hideWithInteractivity:function(n){nc(b.state.isDestroyed,Xg("hideWithInteractivity")),T().addEventListener("mousemove",h),Ng(vc,h),h(n)},enable:function(){b.state.isEnabled=!0},disable:function(){b.hide(),b.state.isEnabled=!1},unmount:function(){nc(b.state.isDestroyed,Xg("unmount")),b.state.isVisible&&b.hide();if(!b.state.isMounted)return;Z(),$().forEach((function(n){n._tippy.unmount()})),k.parentNode&&k.parentNode.removeChild(k);hc=hc.filter((function(n){return n!==b})),b.state.isMounted=!1,N("onHidden",[b])},destroy:function(){if(nc(b.state.isDestroyed,Xg("destroy")),b.state.isDestroyed)return;b.clearDelayTimeouts(),b.unmount(),G(),delete n._tippy,b.state.isDestroyed=!0,N("onDestroy",[b])}};if(!d.render)return ec(!0,"render() function has not been supplied."),b;var y=d.render(b),k=y.popper,x=y.onUpdate;k.setAttribute("data-tippy-root",""),k.id="tippy-"+b.id,b.popper=k,n._tippy=b,k._tippy=b;var z=w.map((function(n){return n.fn(b)})),M=n.hasAttribute("aria-expanded");return _(),H(),O(),N("onCreate",[b]),d.showOnCreate&&nn(),k.addEventListener("mouseenter",(function(){b.props.interactive&&b.state.isVisible&&b.clearDelayTimeouts()})),k.addEventListener("mouseleave",(function(){b.props.interactive&&b.props.trigger.indexOf("mouseenter")>=0&&T().addEventListener("mousemove",h)})),b;function C(){var n=b.props.touch;return Array.isArray(n)?n:[n,0]}function D(){return"hold"===C()[0]}function j(){var n;return!(null==(n=b.props.render)||!n.$$tippy)}function A(){return g||n}function T(){var n,e,a=A().parentNode;return a?null!=(e=Og(a)[0])&&null!=(n=e.ownerDocument)&&n.body?e.ownerDocument:document:document}function E(){return sc(k)}function S(n){return b.state.isMounted&&!b.state.isVisible||Wg.isTouch||t&&"focus"===t.type?0:Ag(b.props.delay,n?0:1,rc.delay)}function O(n){void 0===n&&(n=!1),k.style.pointerEvents=b.props.interactive&&!n?"":"none",k.style.zIndex=""+b.props.zIndex}function N(n,e,a){var r;(void 0===a&&(a=!0),z.forEach((function(a){a[n]&&a[n].apply(a,e)})),a)&&(r=b.props)[n].apply(r,e)}function L(){var e=b.props.aria;if(e.content){var a="aria-"+e.content,r=k.id;Og(b.props.triggerTarget||n).forEach((function(n){var e=n.getAttribute(a);if(b.state.isVisible)n.setAttribute(a,e?e+" "+r:r);else{var o=e&&e.replace(r,"").trim();o?n.setAttribute(a,o):n.removeAttribute(a)}}))}}function H(){!M&&b.props.aria.expanded&&Og(b.props.triggerTarget||n).forEach((function(n){b.props.interactive?n.setAttribute("aria-expanded",b.state.isVisible&&n===A()?"true":"false"):n.removeAttribute("aria-expanded")}))}function I(){T().removeEventListener("mousemove",h),vc=vc.filter((function(n){return n!==h}))}function F(e){if(!Wg.isTouch||!u&&"mousedown"!==e.type){var a=e.composedPath&&e.composedPath()[0]||e.target;if(!b.props.interactive||!Vg(k,a)){if(Og(b.props.triggerTarget||n).some((function(n){return Vg(n,a)}))){if(Wg.isTouch)return;if(b.state.isVisible&&b.props.trigger.indexOf("click")>=0)return}else N("onClickOutside",[b,e]);!0===b.props.hideOnClick&&(b.clearDelayTimeouts(),b.hide(),s=!0,setTimeout((function(){s=!1})),b.state.isMounted||U())}}}function R(){u=!0}function P(){u=!1}function B(){var n=T();n.addEventListener("mousedown",F,!0),n.addEventListener("touchend",F,Dg),n.addEventListener("touchstart",P,Dg),n.addEventListener("touchmove",R,Dg)}function U(){var n=T();n.removeEventListener("mousedown",F,!0),n.removeEventListener("touchend",F,Dg),n.removeEventListener("touchstart",P,Dg),n.removeEventListener("touchmove",R,Dg)}function V(n,e){var a=E().box;function r(n){n.target===a&&(Ug(a,"remove",r),e())}if(0===n)return e();Ug(a,"remove",i),Ug(a,"add",r),i=r}function W(e,a,r){void 0===r&&(r=!1),Og(b.props.triggerTarget||n).forEach((function(n){n.addEventListener(e,a,r),v.push({node:n,eventType:e,handler:a,options:r})}))}function _(){var n;D()&&(W("touchstart",Q,{passive:!0}),W("touchend",K,{passive:!0})),(n=b.props.trigger,n.split(/\s+/).filter(Boolean)).forEach((function(n){if("manual"!==n)switch(W(n,Q),n){case"mouseenter":W("mouseleave",K);break;case"focus":W(qg?"focusout":"blur",q);break;case"focusin":W("focusout",q)}}))}function G(){v.forEach((function(n){var e=n.node,a=n.eventType,r=n.handler,o=n.options;e.removeEventListener(a,r,o)})),v=[]}function Q(n){var e,a=!1;if(b.state.isEnabled&&!X(n)&&!s){var r="focus"===(null==(e=t)?void 0:e.type);t=n,g=n.currentTarget,H(),!b.state.isVisible&&Tg(n,"MouseEvent")&&vc.forEach((function(e){return e(n)})),"click"===n.type&&(b.props.trigger.indexOf("mouseenter")<0||p)&&!1!==b.props.hideOnClick&&b.state.isVisible?a=!0:nn(n),"click"===n.type&&(p=!a),a&&!r&&en(n)}}function Y(n){var e=n.target,a=A().contains(e)||k.contains(e);if("mousemove"!==n.type||!a){var r=$().concat(k).map((function(n){var e,a=null==(e=n._tippy.popperInstance)?void 0:e.state;return a?{popperRect:n.getBoundingClientRect(),popperState:a,props:d}:null})).filter(Boolean);(function(n,e){var a=e.clientX,r=e.clientY;return n.every((function(n){var e=n.popperRect,o=n.popperState,t=n.props.interactiveBorder,i=o.placement.split("-")[0],l=o.modifiersData.offset;if(!l)return!0;var g="bottom"===i?l.top.y:0,c="top"===i?l.bottom.y:0,d="right"===i?l.left.x:0,p="left"===i?l.right.x:0,s=e.top-r+g>t,u=r-e.bottom-c>t,f=e.left-a+d>t,v=a-e.right-p>t;return s||u||f||v}))})(r,n)&&(I(),en(n))}}function K(n){X(n)||b.props.trigger.indexOf("click")>=0&&p||(b.props.interactive?b.hideWithInteractivity(n):en(n))}function q(n){b.props.trigger.indexOf("focusin")<0&&n.target!==A()||b.props.interactive&&n.relatedTarget&&k.contains(n.relatedTarget)||en(n)}function X(n){return!!Wg.isTouch&&D()!==n.type.indexOf("touch")>=0}function J(){Z();var e=b.props,a=e.popperOptions,r=e.placement,o=e.offset,t=e.getReferenceClientRect,i=e.moveTransition,g=j()?sc(k).arrow:null,c=t?{getBoundingClientRect:t,contextElement:t.contextElement||A()}:n,d={name:"$$tippy",enabled:!0,phase:"beforeWrite",requires:["computeStyles"],fn:function(n){var e=n.state;if(j()){var a=E().box;["placement","reference-hidden","escaped"].forEach((function(n){"placement"===n?a.setAttribute("data-placement",e.placement):e.attributes.popper["data-popper-"+n]?a.setAttribute("data-"+n,""):a.removeAttribute("data-"+n)})),e.attributes.popper={}}}},p=[{name:"offset",options:{offset:o}},{name:"preventOverflow",options:{padding:{top:2,bottom:2,left:5,right:5}}},{name:"flip",options:{padding:5}},{name:"computeStyles",options:{adaptive:!i}},d];j()&&g&&p.push({name:"arrow",options:{element:g,padding:3}}),p.push.apply(p,(null==a?void 0:a.modifiers)||[]),b.popperInstance=kg(c,k,Object.assign({},a,{placement:r,onFirstUpdate:l,modifiers:p}))}function Z(){b.popperInstance&&(b.popperInstance.destroy(),b.popperInstance=null)}function $(){return Lg(k.querySelectorAll("[data-tippy-root]"))}function nn(n){b.clearDelayTimeouts(),n&&N("onTrigger",[b,n]),B();var e=S(!0),r=C(),o=r[0],t=r[1];Wg.isTouch&&"hold"===o&&t&&(e=t),e?a=setTimeout((function(){b.show()}),e):b.show()}function en(n){if(b.clearDelayTimeouts(),N("onUntrigger",[b,n]),b.state.isVisible){if(!(b.props.trigger.indexOf("mouseenter")>=0&&b.props.trigger.indexOf("click")>=0&&["mouseleave","mousemove"].indexOf(n.type)>=0&&p)){var e=S(!1);e?r=setTimeout((function(){b.state.isVisible&&b.hide()}),e):o=requestAnimationFrame((function(){b.hide()}))}}else U()}}function wc(n,e){void 0===e&&(e={});var a=rc.plugins.concat(e.plugins||[]);!function(n){var e=!n,a="[object Object]"===Object.prototype.toString.call(n)&&!n.addEventListener;ec(e,["tippy() was passed","`"+String(n)+"`","as its targets (first) argument. Valid types are: String, Element,","Element[], or NodeList."].join(" ")),ec(a,["tippy() was passed a plain object which is not supported as an argument","for virtual positioning. Use props.getReferenceClientRect instead."].join(" "))}(n),lc(e,a),document.addEventListener("touchstart",Gg,Dg),window.addEventListener("blur",Yg);var r=Object.assign({},e,{plugins:a}),o=Rg(n),t=Fg(r.content),i=o.length>1;nc(t&&i,["tippy() was passed an Element as the `content` prop, but more than","one tippy instance was created by this invocation. This means the","content element will only be appended to the last tippy instance.","\n\n","Instead, pass the .innerHTML of the element, or use a function that","returns a cloned version of the element instead.","\n\n","1) content: element.innerHTML\n","2) content: () => element.cloneNode(true)"].join(" "));var l=o.reduce((function(n,e){var a=e&&mc(e,r);return a&&n.push(a),n}),[]);return Fg(n)?l[0]:l}function bc(n,e){void 0===e&&(e={});var a=e.insertAt;if(n&&"undefined"!=typeof document){var r=document.head||document.getElementsByTagName("head")[0],o=document.createElement("style");o.type="text/css","top"===a&&r.firstChild?r.insertBefore(o,r.firstChild):r.appendChild(o),o.styleSheet?o.styleSheet.cssText=n:o.appendChild(document.createTextNode(n))}}wc.defaultProps=rc,wc.setDefaultProps=function(n){lc(n,[]),Object.keys(n).forEach((function(e){rc[e]=n[e]}))},wc.currentInput=Wg,Object.assign({},Cl,{effect:function(n){var e=n.state,a={popper:{position:e.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};Object.assign(e.elements.popper.style,a.popper),e.styles=a,e.elements.arrow&&Object.assign(e.elements.arrow.style,a.arrow)}}),wc.setDefaultProps({render:uc});bc('.tippy-box[data-animation=fade][data-state=hidden]{opacity:0}[data-tippy-root]{max-width:calc(100vw - 10px)}.tippy-box{position:relative;background-color:#333;color:#fff;border-radius:4px;font-size:14px;line-height:1.4;white-space:normal;outline:0;transition-property:transform,visibility,opacity}.tippy-box[data-placement^=top]>.tippy-arrow{bottom:0}.tippy-box[data-placement^=top]>.tippy-arrow:before{bottom:-7px;left:0;border-width:8px 8px 0;border-top-color:initial;transform-origin:center top}.tippy-box[data-placement^=bottom]>.tippy-arrow{top:0}.tippy-box[data-placement^=bottom]>.tippy-arrow:before{top:-7px;left:0;border-width:0 8px 8px;border-bottom-color:initial;transform-origin:center bottom}.tippy-box[data-placement^=left]>.tippy-arrow{right:0}.tippy-box[data-placement^=left]>.tippy-arrow:before{border-width:8px 0 8px 8px;border-left-color:initial;right:-7px;transform-origin:center left}.tippy-box[data-placement^=right]>.tippy-arrow{left:0}.tippy-box[data-placement^=right]>.tippy-arrow:before{left:-7px;border-width:8px 8px 8px 0;border-right-color:initial;transform-origin:center right}.tippy-box[data-inertia][data-state=visible]{transition-timing-function:cubic-bezier(.54,1.5,.38,1.11)}.tippy-arrow{width:16px;height:16px;color:#333}.tippy-arrow:before{content:"";position:absolute;border-color:transparent;border-style:solid}.tippy-content{position:relative;padding:5px 9px;z-index:1}');function yc(n,e){var a=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),a.push.apply(a,r)}return a}function kc(n){for(var e=1;e<arguments.length;e++){var a=null!=arguments[e]?arguments[e]:{};e%2?yc(Object(a),!0).forEach((function(e){nl(n,e,a[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(a)):yc(Object(a)).forEach((function(e){Object.defineProperty(n,e,Object.getOwnPropertyDescriptor(a,e))}))}return n}bc(".tippy-box[data-theme~=light]{color:#26323d;box-shadow:0 0 20px 4px rgba(154,161,177,.15),0 4px 80px -8px rgba(36,40,47,.25),0 4px 4px -2px rgba(91,94,105,.15);background-color:#fff}.tippy-box[data-theme~=light][data-placement^=top]>.tippy-arrow:before{border-top-color:#fff}.tippy-box[data-theme~=light][data-placement^=bottom]>.tippy-arrow:before{border-bottom-color:#fff}.tippy-box[data-theme~=light][data-placement^=left]>.tippy-arrow:before{border-left-color:#fff}.tippy-box[data-theme~=light][data-placement^=right]>.tippy-arrow:before{border-right-color:#fff}.tippy-box[data-theme~=light]>.tippy-backdrop{background-color:#fff}.tippy-box[data-theme~=light]>.tippy-svg-arrow{fill:#fff}");bc('.ag-icon {\n font-family: var(--ag-icon-font-family);\n font-weight: var(--ag-icon-font-weight);\n color: var(--ag-icon-font-color);\n font-size: var(--ag-icon-size);\n line-height: var(--ag-icon-size);\n font-style: normal;\n font-variant: normal;\n text-transform: none;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n width: var(--ag-icon-size);\n height: var(--ag-icon-size);\n position: relative;\n}\n.ag-icon::before {\n content: "";\n}\n.ag-icon::after {\n background: transparent var(--ag-icon-image, none) center/contain no-repeat;\n display: var(--ag-icon-image-display);\n opacity: var(--ag-icon-image-opacity, 0.9);\n position: absolute;\n inset: 0;\n content: "";\n}\n\n.ag-icon-aggregation {\n font-family: var(--ag-icon-font-family-aggregation, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-aggregation, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-aggregation, var(--ag-icon-font-color));\n}\n\n.ag-icon-aggregation::before {\n content: var(--ag-icon-font-code-aggregation, "\\f101");\n display: var(--ag-icon-font-display-aggregation, var(--ag-icon-font-display));\n}\n\n.ag-icon-aggregation::after {\n background-image: var(--ag-icon-image-aggregation, var(--ag-icon-image));\n display: var(--ag-icon-image-display-aggregation, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-aggregation, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-arrows {\n font-family: var(--ag-icon-font-family-arrows, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-arrows, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-arrows, var(--ag-icon-font-color));\n}\n\n.ag-icon-arrows::before {\n content: var(--ag-icon-font-code-arrows, "\\f102");\n display: var(--ag-icon-font-display-arrows, var(--ag-icon-font-display));\n}\n\n.ag-icon-arrows::after {\n background-image: var(--ag-icon-image-arrows, var(--ag-icon-image));\n display: var(--ag-icon-image-display-arrows, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-arrows, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-asc {\n font-family: var(--ag-icon-font-family-asc, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-asc, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-asc, var(--ag-icon-font-color));\n}\n\n.ag-icon-asc::before {\n content: var(--ag-icon-font-code-asc, "\\f103");\n display: var(--ag-icon-font-display-asc, var(--ag-icon-font-display));\n}\n\n.ag-icon-asc::after {\n background-image: var(--ag-icon-image-asc, var(--ag-icon-image));\n display: var(--ag-icon-image-display-asc, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-asc, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-cancel {\n font-family: var(--ag-icon-font-family-cancel, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-cancel, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-cancel, var(--ag-icon-font-color));\n}\n\n.ag-icon-cancel::before {\n content: var(--ag-icon-font-code-cancel, "\\f104");\n display: var(--ag-icon-font-display-cancel, var(--ag-icon-font-display));\n}\n\n.ag-icon-cancel::after {\n background-image: var(--ag-icon-image-cancel, var(--ag-icon-image));\n display: var(--ag-icon-image-display-cancel, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-cancel, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-chart {\n font-family: var(--ag-icon-font-family-chart, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-chart, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-chart, var(--ag-icon-font-color));\n}\n\n.ag-icon-chart::before {\n content: var(--ag-icon-font-code-chart, "\\f105");\n display: var(--ag-icon-font-display-chart, var(--ag-icon-font-display));\n}\n\n.ag-icon-chart::after {\n background-image: var(--ag-icon-image-chart, var(--ag-icon-image));\n display: var(--ag-icon-image-display-chart, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-chart, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-checkbox-checked {\n font-family: var(--ag-icon-font-family-checkbox-checked, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-checkbox-checked, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-checkbox-checked, var(--ag-icon-font-color));\n}\n\n.ag-icon-checkbox-checked::before {\n content: var(--ag-icon-font-code-checkbox-checked, "\\f106");\n display: var(--ag-icon-font-display-checkbox-checked, var(--ag-icon-font-display));\n}\n\n.ag-icon-checkbox-checked::after {\n background-image: var(--ag-icon-image-checkbox-checked, var(--ag-icon-image));\n display: var(--ag-icon-image-display-checkbox-checked, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-checkbox-checked, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-checkbox-indeterminate {\n font-family: var(--ag-icon-font-family-checkbox-indeterminate, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-checkbox-indeterminate, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-checkbox-indeterminate, var(--ag-icon-font-color));\n}\n\n.ag-icon-checkbox-indeterminate::before {\n content: var(--ag-icon-font-code-checkbox-indeterminate, "\\f107");\n display: var(--ag-icon-font-display-checkbox-indeterminate, var(--ag-icon-font-display));\n}\n\n.ag-icon-checkbox-indeterminate::after {\n background-image: var(--ag-icon-image-checkbox-indeterminate, var(--ag-icon-image));\n display: var(--ag-icon-image-display-checkbox-indeterminate, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-checkbox-indeterminate, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-checkbox-unchecked {\n font-family: var(--ag-icon-font-family-checkbox-unchecked, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-checkbox-unchecked, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-checkbox-unchecked, var(--ag-icon-font-color));\n}\n\n.ag-icon-checkbox-unchecked::before {\n content: var(--ag-icon-font-code-checkbox-unchecked, "\\f108");\n display: var(--ag-icon-font-display-checkbox-unchecked, var(--ag-icon-font-display));\n}\n\n.ag-icon-checkbox-unchecked::after {\n background-image: var(--ag-icon-image-checkbox-unchecked, var(--ag-icon-image));\n display: var(--ag-icon-image-display-checkbox-unchecked, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-checkbox-unchecked, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-color-picker {\n font-family: var(--ag-icon-font-family-color-picker, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-color-picker, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-color-picker, var(--ag-icon-font-color));\n}\n\n.ag-icon-color-picker::before {\n content: var(--ag-icon-font-code-color-picker, "\\f109");\n display: var(--ag-icon-font-display-color-picker, var(--ag-icon-font-display));\n}\n\n.ag-icon-color-picker::after {\n background-image: var(--ag-icon-image-color-picker, var(--ag-icon-image));\n display: var(--ag-icon-image-display-color-picker, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-color-picker, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-columns {\n font-family: var(--ag-icon-font-family-columns, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-columns, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-columns, var(--ag-icon-font-color));\n}\n\n.ag-icon-columns::before {\n content: var(--ag-icon-font-code-columns, "\\f10a");\n display: var(--ag-icon-font-display-columns, var(--ag-icon-font-display));\n}\n\n.ag-icon-columns::after {\n background-image: var(--ag-icon-image-columns, var(--ag-icon-image));\n display: var(--ag-icon-image-display-columns, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-columns, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-contracted {\n font-family: var(--ag-icon-font-family-contracted, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-contracted, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-contracted, var(--ag-icon-font-color));\n}\n\n.ag-icon-contracted::before {\n content: var(--ag-icon-font-code-contracted, "\\f10b");\n display: var(--ag-icon-font-display-contracted, var(--ag-icon-font-display));\n}\n\n.ag-icon-contracted::after {\n background-image: var(--ag-icon-image-contracted, var(--ag-icon-image));\n display: var(--ag-icon-image-display-contracted, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-contracted, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-copy {\n font-family: var(--ag-icon-font-family-copy, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-copy, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-copy, var(--ag-icon-font-color));\n}\n\n.ag-icon-copy::before {\n content: var(--ag-icon-font-code-copy, "\\f10c");\n display: var(--ag-icon-font-display-copy, var(--ag-icon-font-display));\n}\n\n.ag-icon-copy::after {\n background-image: var(--ag-icon-image-copy, var(--ag-icon-image));\n display: var(--ag-icon-image-display-copy, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-copy, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-cross {\n font-family: var(--ag-icon-font-family-cross, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-cross, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-cross, var(--ag-icon-font-color));\n}\n\n.ag-icon-cross::before {\n content: var(--ag-icon-font-code-cross, "\\f10d");\n display: var(--ag-icon-font-display-cross, var(--ag-icon-font-display));\n}\n\n.ag-icon-cross::after {\n background-image: var(--ag-icon-image-cross, var(--ag-icon-image));\n display: var(--ag-icon-image-display-cross, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-cross, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-csv {\n font-family: var(--ag-icon-font-family-csv, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-csv, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-csv, var(--ag-icon-font-color));\n}\n\n.ag-icon-csv::before {\n content: var(--ag-icon-font-code-csv, "\\f10e");\n display: var(--ag-icon-font-display-csv, var(--ag-icon-font-display));\n}\n\n.ag-icon-csv::after {\n background-image: var(--ag-icon-image-csv, var(--ag-icon-image));\n display: var(--ag-icon-image-display-csv, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-csv, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-cut {\n font-family: var(--ag-icon-font-family-cut, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-cut, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-cut, var(--ag-icon-font-color));\n}\n\n.ag-icon-cut::before {\n content: var(--ag-icon-font-code-cut, "\\f10f");\n display: var(--ag-icon-font-display-cut, var(--ag-icon-font-display));\n}\n\n.ag-icon-cut::after {\n background-image: var(--ag-icon-image-cut, var(--ag-icon-image));\n display: var(--ag-icon-image-display-cut, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-cut, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-desc {\n font-family: var(--ag-icon-font-family-desc, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-desc, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-desc, var(--ag-icon-font-color));\n}\n\n.ag-icon-desc::before {\n content: var(--ag-icon-font-code-desc, "\\f110");\n display: var(--ag-icon-font-display-desc, var(--ag-icon-font-display));\n}\n\n.ag-icon-desc::after {\n background-image: var(--ag-icon-image-desc, var(--ag-icon-image));\n display: var(--ag-icon-image-display-desc, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-desc, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-excel {\n font-family: var(--ag-icon-font-family-excel, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-excel, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-excel, var(--ag-icon-font-color));\n}\n\n.ag-icon-excel::before {\n content: var(--ag-icon-font-code-excel, "\\f111");\n display: var(--ag-icon-font-display-excel, var(--ag-icon-font-display));\n}\n\n.ag-icon-excel::after {\n background-image: var(--ag-icon-image-excel, var(--ag-icon-image));\n display: var(--ag-icon-image-display-excel, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-excel, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-expanded {\n font-family: var(--ag-icon-font-family-expanded, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-expanded, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-expanded, var(--ag-icon-font-color));\n}\n\n.ag-icon-expanded::before {\n content: var(--ag-icon-font-code-expanded, "\\f112");\n display: var(--ag-icon-font-display-expanded, var(--ag-icon-font-display));\n}\n\n.ag-icon-expanded::after {\n background-image: var(--ag-icon-image-expanded, var(--ag-icon-image));\n display: var(--ag-icon-image-display-expanded, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-expanded, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-eye-slash {\n font-family: var(--ag-icon-font-family-eye-slash, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-eye-slash, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-eye-slash, var(--ag-icon-font-color));\n}\n\n.ag-icon-eye-slash::before {\n content: var(--ag-icon-font-code-eye-slash, "\\f113");\n display: var(--ag-icon-font-display-eye-slash, var(--ag-icon-font-display));\n}\n\n.ag-icon-eye-slash::after {\n background-image: var(--ag-icon-image-eye-slash, var(--ag-icon-image));\n display: var(--ag-icon-image-display-eye-slash, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-eye-slash, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-eye {\n font-family: var(--ag-icon-font-family-eye, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-eye, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-eye, var(--ag-icon-font-color));\n}\n\n.ag-icon-eye::before {\n content: var(--ag-icon-font-code-eye, "\\f114");\n display: var(--ag-icon-font-display-eye, var(--ag-icon-font-display));\n}\n\n.ag-icon-eye::after {\n background-image: var(--ag-icon-image-eye, var(--ag-icon-image));\n display: var(--ag-icon-image-display-eye, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-eye, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-filter {\n font-family: var(--ag-icon-font-family-filter, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-filter, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-filter, var(--ag-icon-font-color));\n}\n\n.ag-icon-filter::before {\n content: var(--ag-icon-font-code-filter, "\\f115");\n display: var(--ag-icon-font-display-filter, var(--ag-icon-font-display));\n}\n\n.ag-icon-filter::after {\n background-image: var(--ag-icon-image-filter, var(--ag-icon-image));\n display: var(--ag-icon-image-display-filter, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-filter, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-first {\n font-family: var(--ag-icon-font-family-first, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-first, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-first, var(--ag-icon-font-color));\n}\n\n.ag-icon-first::before {\n content: var(--ag-icon-font-code-first, "\\f116");\n display: var(--ag-icon-font-display-first, var(--ag-icon-font-display));\n}\n\n.ag-icon-first::after {\n background-image: var(--ag-icon-image-first, var(--ag-icon-image));\n display: var(--ag-icon-image-display-first, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-first, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-grip {\n font-family: var(--ag-icon-font-family-grip, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-grip, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-grip, var(--ag-icon-font-color));\n}\n\n.ag-icon-grip::before {\n content: var(--ag-icon-font-code-grip, "\\f117");\n display: var(--ag-icon-font-display-grip, var(--ag-icon-font-display));\n}\n\n.ag-icon-grip::after {\n background-image: var(--ag-icon-image-grip, var(--ag-icon-image));\n display: var(--ag-icon-image-display-grip, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-grip, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-group {\n font-family: var(--ag-icon-font-family-group, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-group, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-group, var(--ag-icon-font-color));\n}\n\n.ag-icon-group::before {\n content: var(--ag-icon-font-code-group, "\\f118");\n display: var(--ag-icon-font-display-group, var(--ag-icon-font-display));\n}\n\n.ag-icon-group::after {\n background-image: var(--ag-icon-image-group, var(--ag-icon-image));\n display: var(--ag-icon-image-display-group, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-group, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-last {\n font-family: var(--ag-icon-font-family-last, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-last, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-last, var(--ag-icon-font-color));\n}\n\n.ag-icon-last::before {\n content: var(--ag-icon-font-code-last, "\\f119");\n display: var(--ag-icon-font-display-last, var(--ag-icon-font-display));\n}\n\n.ag-icon-last::after {\n background-image: var(--ag-icon-image-last, var(--ag-icon-image));\n display: var(--ag-icon-image-display-last, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-last, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-left {\n font-family: var(--ag-icon-font-family-left, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-left, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-left, var(--ag-icon-font-color));\n}\n\n.ag-icon-left::before {\n content: var(--ag-icon-font-code-left, "\\f11a");\n display: var(--ag-icon-font-display-left, var(--ag-icon-font-display));\n}\n\n.ag-icon-left::after {\n background-image: var(--ag-icon-image-left, var(--ag-icon-image));\n display: var(--ag-icon-image-display-left, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-left, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-linked {\n font-family: var(--ag-icon-font-family-linked, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-linked, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-linked, var(--ag-icon-font-color));\n}\n\n.ag-icon-linked::before {\n content: var(--ag-icon-font-code-linked, "\\f11b");\n display: var(--ag-icon-font-display-linked, var(--ag-icon-font-display));\n}\n\n.ag-icon-linked::after {\n background-image: var(--ag-icon-image-linked, var(--ag-icon-image));\n display: var(--ag-icon-image-display-linked, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-linked, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-loading {\n font-family: var(--ag-icon-font-family-loading, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-loading, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-loading, var(--ag-icon-font-color));\n}\n\n.ag-icon-loading::before {\n content: var(--ag-icon-font-code-loading, "\\f11c");\n display: var(--ag-icon-font-display-loading, var(--ag-icon-font-display));\n}\n\n.ag-icon-loading::after {\n background-image: var(--ag-icon-image-loading, var(--ag-icon-image));\n display: var(--ag-icon-image-display-loading, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-loading, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-maximize {\n font-family: var(--ag-icon-font-family-maximize, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-maximize, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-maximize, var(--ag-icon-font-color));\n}\n\n.ag-icon-maximize::before {\n content: var(--ag-icon-font-code-maximize, "\\f11d");\n display: var(--ag-icon-font-display-maximize, var(--ag-icon-font-display));\n}\n\n.ag-icon-maximize::after {\n background-image: var(--ag-icon-image-maximize, var(--ag-icon-image));\n display: var(--ag-icon-image-display-maximize, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-maximize, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-menu {\n font-family: var(--ag-icon-font-family-menu, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-menu, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-menu, var(--ag-icon-font-color));\n}\n\n.ag-icon-menu::before {\n content: var(--ag-icon-font-code-menu, "\\f11e");\n display: var(--ag-icon-font-display-menu, var(--ag-icon-font-display));\n}\n\n.ag-icon-menu::after {\n background-image: var(--ag-icon-image-menu, var(--ag-icon-image));\n display: var(--ag-icon-image-display-menu, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-menu, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-minimize {\n font-family: var(--ag-icon-font-family-minimize, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-minimize, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-minimize, var(--ag-icon-font-color));\n}\n\n.ag-icon-minimize::before {\n content: var(--ag-icon-font-code-minimize, "\\f11f");\n display: var(--ag-icon-font-display-minimize, var(--ag-icon-font-display));\n}\n\n.ag-icon-minimize::after {\n background-image: var(--ag-icon-image-minimize, var(--ag-icon-image));\n display: var(--ag-icon-image-display-minimize, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-minimize, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-next {\n font-family: var(--ag-icon-font-family-next, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-next, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-next, var(--ag-icon-font-color));\n}\n\n.ag-icon-next::before {\n content: var(--ag-icon-font-code-next, "\\f120");\n display: var(--ag-icon-font-display-next, var(--ag-icon-font-display));\n}\n\n.ag-icon-next::after {\n background-image: var(--ag-icon-image-next, var(--ag-icon-image));\n display: var(--ag-icon-image-display-next, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-next, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-none {\n font-family: var(--ag-icon-font-family-none, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-none, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-none, var(--ag-icon-font-color));\n}\n\n.ag-icon-none::before {\n content: var(--ag-icon-font-code-none, "\\f121");\n display: var(--ag-icon-font-display-none, var(--ag-icon-font-display));\n}\n\n.ag-icon-none::after {\n background-image: var(--ag-icon-image-none, var(--ag-icon-image));\n display: var(--ag-icon-image-display-none, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-none, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-not-allowed {\n font-family: var(--ag-icon-font-family-not-allowed, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-not-allowed, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-not-allowed, var(--ag-icon-font-color));\n}\n\n.ag-icon-not-allowed::before {\n content: var(--ag-icon-font-code-not-allowed, "\\f122");\n display: var(--ag-icon-font-display-not-allowed, var(--ag-icon-font-display));\n}\n\n.ag-icon-not-allowed::after {\n background-image: var(--ag-icon-image-not-allowed, var(--ag-icon-image));\n display: var(--ag-icon-image-display-not-allowed, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-not-allowed, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-paste {\n font-family: var(--ag-icon-font-family-paste, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-paste, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-paste, var(--ag-icon-font-color));\n}\n\n.ag-icon-paste::before {\n content: var(--ag-icon-font-code-paste, "\\f123");\n display: var(--ag-icon-font-display-paste, var(--ag-icon-font-display));\n}\n\n.ag-icon-paste::after {\n background-image: var(--ag-icon-image-paste, var(--ag-icon-image));\n display: var(--ag-icon-image-display-paste, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-paste, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-pin {\n font-family: var(--ag-icon-font-family-pin, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-pin, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-pin, var(--ag-icon-font-color));\n}\n\n.ag-icon-pin::before {\n content: var(--ag-icon-font-code-pin, "\\f124");\n display: var(--ag-icon-font-display-pin, var(--ag-icon-font-display));\n}\n\n.ag-icon-pin::after {\n background-image: var(--ag-icon-image-pin, var(--ag-icon-image));\n display: var(--ag-icon-image-display-pin, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-pin, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-pivot {\n font-family: var(--ag-icon-font-family-pivot, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-pivot, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-pivot, var(--ag-icon-font-color));\n}\n\n.ag-icon-pivot::before {\n content: var(--ag-icon-font-code-pivot, "\\f125");\n display: var(--ag-icon-font-display-pivot, var(--ag-icon-font-display));\n}\n\n.ag-icon-pivot::after {\n background-image: var(--ag-icon-image-pivot, var(--ag-icon-image));\n display: var(--ag-icon-image-display-pivot, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-pivot, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-previous {\n font-family: var(--ag-icon-font-family-previous, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-previous, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-previous, var(--ag-icon-font-color));\n}\n\n.ag-icon-previous::before {\n content: var(--ag-icon-font-code-previous, "\\f126");\n display: var(--ag-icon-font-display-previous, var(--ag-icon-font-display));\n}\n\n.ag-icon-previous::after {\n background-image: var(--ag-icon-image-previous, var(--ag-icon-image));\n display: var(--ag-icon-image-display-previous, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-previous, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-radio-button-off {\n font-family: var(--ag-icon-font-family-radio-button-off, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-radio-button-off, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-radio-button-off, var(--ag-icon-font-color));\n}\n\n.ag-icon-radio-button-off::before {\n content: var(--ag-icon-font-code-radio-button-off, "\\f127");\n display: var(--ag-icon-font-display-radio-button-off, var(--ag-icon-font-display));\n}\n\n.ag-icon-radio-button-off::after {\n background-image: var(--ag-icon-image-radio-button-off, var(--ag-icon-image));\n display: var(--ag-icon-image-display-radio-button-off, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-radio-button-off, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-radio-button-on {\n font-family: var(--ag-icon-font-family-radio-button-on, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-radio-button-on, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-radio-button-on, var(--ag-icon-font-color));\n}\n\n.ag-icon-radio-button-on::before {\n content: var(--ag-icon-font-code-radio-button-on, "\\f128");\n display: var(--ag-icon-font-display-radio-button-on, var(--ag-icon-font-display));\n}\n\n.ag-icon-radio-button-on::after {\n background-image: var(--ag-icon-image-radio-button-on, var(--ag-icon-image));\n display: var(--ag-icon-image-display-radio-button-on, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-radio-button-on, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-right {\n font-family: var(--ag-icon-font-family-right, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-right, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-right, var(--ag-icon-font-color));\n}\n\n.ag-icon-right::before {\n content: var(--ag-icon-font-code-right, "\\f129");\n display: var(--ag-icon-font-display-right, var(--ag-icon-font-display));\n}\n\n.ag-icon-right::after {\n background-image: var(--ag-icon-image-right, var(--ag-icon-image));\n display: var(--ag-icon-image-display-right, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-right, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-save {\n font-family: var(--ag-icon-font-family-save, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-save, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-save, var(--ag-icon-font-color));\n}\n\n.ag-icon-save::before {\n content: var(--ag-icon-font-code-save, "\\f12a");\n display: var(--ag-icon-font-display-save, var(--ag-icon-font-display));\n}\n\n.ag-icon-save::after {\n background-image: var(--ag-icon-image-save, var(--ag-icon-image));\n display: var(--ag-icon-image-display-save, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-save, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-small-down {\n font-family: var(--ag-icon-font-family-small-down, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-small-down, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-small-down, var(--ag-icon-font-color));\n}\n\n.ag-icon-small-down::before {\n content: var(--ag-icon-font-code-small-down, "\\f12b");\n display: var(--ag-icon-font-display-small-down, var(--ag-icon-font-display));\n}\n\n.ag-icon-small-down::after {\n background-image: var(--ag-icon-image-small-down, var(--ag-icon-image));\n display: var(--ag-icon-image-display-small-down, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-small-down, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-small-left {\n font-family: var(--ag-icon-font-family-small-left, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-small-left, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-small-left, var(--ag-icon-font-color));\n}\n\n.ag-icon-small-left::before {\n content: var(--ag-icon-font-code-small-left, "\\f12c");\n display: var(--ag-icon-font-display-small-left, var(--ag-icon-font-display));\n}\n\n.ag-icon-small-left::after {\n background-image: var(--ag-icon-image-small-left, var(--ag-icon-image));\n display: var(--ag-icon-image-display-small-left, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-small-left, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-small-right {\n font-family: var(--ag-icon-font-family-small-right, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-small-right, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-small-right, var(--ag-icon-font-color));\n}\n\n.ag-icon-small-right::before {\n content: var(--ag-icon-font-code-small-right, "\\f12d");\n display: var(--ag-icon-font-display-small-right, var(--ag-icon-font-display));\n}\n\n.ag-icon-small-right::after {\n background-image: var(--ag-icon-image-small-right, var(--ag-icon-image));\n display: var(--ag-icon-image-display-small-right, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-small-right, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-small-up {\n font-family: var(--ag-icon-font-family-small-up, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-small-up, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-small-up, var(--ag-icon-font-color));\n}\n\n.ag-icon-small-up::before {\n content: var(--ag-icon-font-code-small-up, "\\f12e");\n display: var(--ag-icon-font-display-small-up, var(--ag-icon-font-display));\n}\n\n.ag-icon-small-up::after {\n background-image: var(--ag-icon-image-small-up, var(--ag-icon-image));\n display: var(--ag-icon-image-display-small-up, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-small-up, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-tick {\n font-family: var(--ag-icon-font-family-tick, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-tick, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-tick, var(--ag-icon-font-color));\n}\n\n.ag-icon-tick::before {\n content: var(--ag-icon-font-code-tick, "\\f12f");\n display: var(--ag-icon-font-display-tick, var(--ag-icon-font-display));\n}\n\n.ag-icon-tick::after {\n background-image: var(--ag-icon-image-tick, var(--ag-icon-image));\n display: var(--ag-icon-image-display-tick, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-tick, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-tree-closed {\n font-family: var(--ag-icon-font-family-tree-closed, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-tree-closed, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-tree-closed, var(--ag-icon-font-color));\n}\n\n.ag-icon-tree-closed::before {\n content: var(--ag-icon-font-code-tree-closed, "\\f130");\n display: var(--ag-icon-font-display-tree-closed, var(--ag-icon-font-display));\n}\n\n.ag-icon-tree-closed::after {\n background-image: var(--ag-icon-image-tree-closed, var(--ag-icon-image));\n display: var(--ag-icon-image-display-tree-closed, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-tree-closed, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-tree-indeterminate {\n font-family: var(--ag-icon-font-family-tree-indeterminate, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-tree-indeterminate, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-tree-indeterminate, var(--ag-icon-font-color));\n}\n\n.ag-icon-tree-indeterminate::before {\n content: var(--ag-icon-font-code-tree-indeterminate, "\\f131");\n display: var(--ag-icon-font-display-tree-indeterminate, var(--ag-icon-font-display));\n}\n\n.ag-icon-tree-indeterminate::after {\n background-image: var(--ag-icon-image-tree-indeterminate, var(--ag-icon-image));\n display: var(--ag-icon-image-display-tree-indeterminate, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-tree-indeterminate, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-tree-open {\n font-family: var(--ag-icon-font-family-tree-open, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-tree-open, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-tree-open, var(--ag-icon-font-color));\n}\n\n.ag-icon-tree-open::before {\n content: var(--ag-icon-font-code-tree-open, "\\f132");\n display: var(--ag-icon-font-display-tree-open, var(--ag-icon-font-display));\n}\n\n.ag-icon-tree-open::after {\n background-image: var(--ag-icon-image-tree-open, var(--ag-icon-image));\n display: var(--ag-icon-image-display-tree-open, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-tree-open, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-unlinked {\n font-family: var(--ag-icon-font-family-unlinked, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-unlinked, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-unlinked, var(--ag-icon-font-color));\n}\n\n.ag-icon-unlinked::before {\n content: var(--ag-icon-font-code-unlinked, "\\f133");\n display: var(--ag-icon-font-display-unlinked, var(--ag-icon-font-display));\n}\n\n.ag-icon-unlinked::after {\n background-image: var(--ag-icon-image-unlinked, var(--ag-icon-image));\n display: var(--ag-icon-image-display-unlinked, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-unlinked, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-up {\n font-family: var(--ag-icon-font-family-up, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-up, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-up, var(--ag-icon-font-color));\n}\n\n.ag-icon-up::before {\n content: var(--ag-icon-font-code-up, "\\f134");\n display: var(--ag-icon-font-display-up, var(--ag-icon-font-display));\n}\n\n.ag-icon-up::after {\n background-image: var(--ag-icon-image-up, var(--ag-icon-image));\n display: var(--ag-icon-image-display-up, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-up, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-down {\n font-family: var(--ag-icon-font-family-down, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-down, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-down, var(--ag-icon-font-color));\n}\n\n.ag-icon-down::before {\n content: var(--ag-icon-font-code-down, "\\f135");\n display: var(--ag-icon-font-display-down, var(--ag-icon-font-display));\n}\n\n.ag-icon-down::after {\n background-image: var(--ag-icon-image-down, var(--ag-icon-image));\n display: var(--ag-icon-image-display-down, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-down, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-plus {\n font-family: var(--ag-icon-font-family-plus, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-plus, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-plus, var(--ag-icon-font-color));\n}\n\n.ag-icon-plus::before {\n content: var(--ag-icon-font-code-plus, "\\f136");\n display: var(--ag-icon-font-display-plus, var(--ag-icon-font-display));\n}\n\n.ag-icon-plus::after {\n background-image: var(--ag-icon-image-plus, var(--ag-icon-image));\n display: var(--ag-icon-image-display-plus, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-plus, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-minus {\n font-family: var(--ag-icon-font-family-minus, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-minus, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-minus, var(--ag-icon-font-color));\n}\n\n.ag-icon-minus::before {\n content: var(--ag-icon-font-code-minus, "\\f137");\n display: var(--ag-icon-font-display-minus, var(--ag-icon-font-display));\n}\n\n.ag-icon-minus::after {\n background-image: var(--ag-icon-image-minus, var(--ag-icon-image));\n display: var(--ag-icon-image-display-minus, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-minus, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-menu-alt {\n font-family: var(--ag-icon-font-family-menu-alt, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-menu-alt, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-menu-alt, var(--ag-icon-font-color));\n}\n\n.ag-icon-menu-alt::before {\n content: var(--ag-icon-font-code-menu-alt, "\\f138");\n display: var(--ag-icon-font-display-menu-alt, var(--ag-icon-font-display));\n}\n\n.ag-icon-menu-alt::after {\n background-image: var(--ag-icon-image-menu-alt, var(--ag-icon-image));\n display: var(--ag-icon-image-display-menu-alt, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-menu-alt, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-settings {\n font-family: var(--ag-icon-font-family-settings, var(--ag-icon-font-family));\n font-weight: var(--ag-icon-font-weight-settings, var(--ag-icon-font-weight));\n color: var(--ag-icon-font-color-settings, var(--ag-icon-font-color));\n}\n\n.ag-icon-settings::before {\n content: var(--ag-icon-font-code-settings, "\\f139");\n display: var(--ag-icon-font-display-settings, var(--ag-icon-font-display));\n}\n\n.ag-icon-settings::after {\n background-image: var(--ag-icon-image-settings, var(--ag-icon-image));\n display: var(--ag-icon-image-display-settings, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-settings, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-icon-row-drag::before {\n content: var(--ag-icon-font-code-grip);\n}\n\n.ag-left-arrow::before {\n content: var(--ag-icon-font-code-left);\n}\n\n.ag-right-arrow::before {\n content: var(--ag-icon-font-code-right);\n}\n\n[class*=ag-theme-] {\n --ag-foreground-color: #000;\n --ag-data-color: var(--ag-foreground-color);\n --ag-secondary-foreground-color: var(--ag-foreground-color);\n --ag-header-foreground-color: var(--ag-secondary-foreground-color);\n --ag-disabled-foreground-color: rgba(0, 0, 0, 0.5);\n --ag-background-color: #fff;\n --ag-header-background-color: transparent;\n --ag-tooltip-background-color: transparent;\n --ag-subheader-background-color: transparent;\n --ag-subheader-toolbar-background-color: transparent;\n --ag-control-panel-background-color: transparent;\n --ag-side-button-selected-background-color: var(--ag-control-panel-background-color);\n --ag-selected-row-background-color: #BBB;\n --ag-odd-row-background-color: var(--ag-background-color);\n --ag-modal-overlay-background-color: rgba(255, 255, 255, 0.66);\n --ag-menu-background-color: var(--ag-background-color);\n --ag-menu-border-color: var(--ag-border-color);\n --ag-panel-background-color: var(--ag-background-color);\n --ag-panel-border-color: var(--ag-border-color);\n --ag-row-hover-color: transparent;\n --ag-column-hover-color: transparent;\n --ag-range-selection-border-color: var(--ag-foreground-color);\n --ag-range-selection-border-style: solid;\n --ag-range-selection-background-color: rgba(0, 0, 0, 0.2);\n --ag-range-selection-background-color-2: var(--ag-range-selection-background-color);\n --ag-range-selection-background-color-3: var(--ag-range-selection-background-color);\n --ag-range-selection-background-color-4: var(--ag-range-selection-background-color);\n --ag-range-selection-highlight-color: var(--ag-range-selection-border-color);\n --ag-selected-tab-underline-color: var(--ag-range-selection-border-color);\n --ag-selected-tab-underline-width: 0;\n --ag-selected-tab-underline-transition-speed: 0s;\n --ag-range-selection-chart-category-background-color: rgba(0, 255, 132, 0.1);\n --ag-range-selection-chart-background-color: rgba(0, 88, 255, 0.1);\n --ag-header-cell-hover-background-color: transparent;\n --ag-header-cell-moving-background-color: var(--ag-background-color);\n --ag-value-change-value-highlight-background-color: rgba(22, 160, 133, 0.5);\n --ag-value-change-delta-up-color: #43a047;\n --ag-value-change-delta-down-color: #e53935;\n --ag-row-loading-skeleton-effect-color: rgba(66, 66, 66, 0.2);\n --ag-chip-background-color: transparent;\n --ag-chip-border-color: var(--ag-chip-background-color);\n --ag-borders: solid 1px;\n --ag-border-color: rgba(0, 0, 0, 0.25);\n --ag-borders-critical: var(--ag-borders);\n --ag-borders-secondary: var(--ag-borders);\n --ag-secondary-border-color: var(--ag-border-color);\n --ag-row-border-style: solid;\n --ag-row-border-color: var(--ag-secondary-border-color);\n --ag-row-border-width: 1px;\n --ag-cell-horizontal-border: solid transparent;\n --ag-borders-input: var(--ag-borders-secondary);\n --ag-input-border-color: var(--ag-secondary-border-color);\n --ag-borders-input-invalid: solid 2px;\n --ag-input-border-color-invalid: var(--ag-invalid-color);\n --ag-borders-side-button: var(--ag-borders);\n --ag-border-radius: 0px;\n --ag-wrapper-border-radius: var(--ag-border-radius);\n --ag-row-border-color: var(--ag-secondary-border-color);\n --ag-header-column-separator-display: none;\n --ag-header-column-separator-height: 100%;\n --ag-header-column-separator-width: 1px;\n --ag-header-column-separator-color: var(--ag-secondary-border-color);\n --ag-header-column-resize-handle-display: none;\n --ag-header-column-resize-handle-height: 50%;\n --ag-header-column-resize-handle-width: 1px;\n --ag-header-column-resize-handle-color: var(--ag-secondary-border-color);\n --ag-invalid-color: red;\n --ag-input-disabled-border-color: var(--ag-input-border-color);\n --ag-input-disabled-background-color: transparent;\n --ag-checkbox-background-color: transparent;\n --ag-checkbox-border-radius: var(--ag-border-radius);\n --ag-checkbox-checked-color: var(--ag-foreground-color);\n --ag-checkbox-unchecked-color: var(--ag-foreground-color);\n --ag-checkbox-indeterminate-color: var(--ag-checkbox-unchecked-color);\n --ag-toggle-button-off-border-color: var(--ag-checkbox-unchecked-color);\n --ag-toggle-button-off-background-color: var(--ag-checkbox-unchecked-color);\n --ag-toggle-button-on-border-color: var(--ag-checkbox-checked-color);\n --ag-toggle-button-on-background-color: var(--ag-checkbox-checked-color);\n --ag-toggle-button-switch-background-color: var(--ag-background-color);\n --ag-toggle-button-switch-border-color: var(--ag-toggle-button-off-border-color);\n --ag-toggle-button-border-width: 1px;\n --ag-toggle-button-height: var(--ag-icon-size);\n --ag-toggle-button-width: calc(var(--ag-toggle-button-height) * 2);\n --ag-input-focus-box-shadow: none;\n --ag-input-focus-border-color: none;\n --ag-minichart-selected-chart-color: var(--ag-checkbox-checked-color);\n --ag-minichart-selected-page-color: var(--ag-checkbox-checked-color);\n --ag-grid-size: 4px;\n --ag-icon-size: 12px;\n --ag-icon-font-weight: normal;\n --ag-icon-font-color: var(--ag-foreground-color);\n --ag-icon-image-display: block;\n --ag-widget-container-horizontal-padding: calc(var(--ag-grid-size) * 1.5);\n --ag-widget-container-vertical-padding: calc(var(--ag-grid-size) * 1.5);\n --ag-widget-horizontal-spacing: calc(var(--ag-grid-size) * 2);\n --ag-widget-vertical-spacing: var(--ag-grid-size);\n --ag-cell-horizontal-padding: calc(var(--ag-grid-size) * 3);\n --ag-cell-widget-spacing: var(--ag-cell-horizontal-padding);\n --ag-row-height: calc(var(--ag-grid-size) * 6 + 1px);\n --ag-header-height: var(--ag-row-height);\n --ag-list-item-height: calc(var(--ag-grid-size) * 5);\n --ag-column-select-indent-size: calc(var(--ag-grid-size) + var(--ag-icon-size));\n --ag-set-filter-indent-size: calc(var(--ag-grid-size) + var(--ag-icon-size));\n --ag-advanced-filter-builder-indent-size: calc(var(--ag-grid-size) * 2 + var(--ag-icon-size));\n --ag-row-group-indent-size: calc(var(--ag-cell-widget-spacing) + var(--ag-icon-size));\n --ag-filter-tool-panel-group-indent: 16px;\n --ag-tab-min-width: 220px;\n --ag-menu-min-width: 181px;\n --ag-side-bar-panel-width: 200px;\n --ag-font-family: "Helvetica Neue", sans-serif;\n --ag-font-size: 14px;\n --ag-card-radius: var(--ag-border-radius);\n --ag-card-shadow: none;\n --ag-popup-shadow: 5px 5px 10px rgba(0, 0, 0, 0.3);\n --ag-advanced-filter-join-pill-color: #f08e8d;\n --ag-advanced-filter-column-pill-color: #a6e194;\n --ag-advanced-filter-option-pill-color: #f3c08b;\n --ag-advanced-filter-value-pill-color: #85c0e4;\n}\n\n.ag-root-wrapper, .ag-sticky-top, .ag-sticky-bottom, .ag-dnd-ghost {\n background-color: var(--ag-background-color);\n}\n\n[class*=ag-theme-] {\n -webkit-font-smoothing: antialiased;\n font-family: var(--ag-font-family);\n font-size: var(--ag-font-size);\n line-height: normal;\n color: var(--ag-foreground-color);\n}\n\nag-grid, ag-grid-angular, ag-grid-ng2, ag-grid-polymer, ag-grid-aurelia {\n display: block;\n}\n\n.ag-aria-description-container {\n z-index: 9999;\n border: 0px;\n clip: rect(1px, 1px, 1px, 1px);\n height: 1px;\n width: 1px;\n position: absolute;\n overflow: hidden;\n padding: 0px;\n white-space: nowrap;\n}\n\n.ag-hidden {\n display: none !important;\n}\n\n.ag-invisible {\n visibility: hidden !important;\n}\n\n.ag-no-transition {\n transition: none !important;\n}\n\n.ag-drag-handle {\n cursor: grab;\n}\n\n.ag-column-drop-wrapper {\n display: flex;\n}\n\n.ag-column-drop-horizontal-half-width {\n display: inline-block;\n width: 50% !important;\n}\n\n.ag-unselectable {\n -moz-user-select: none;\n -webkit-user-select: none;\n user-select: none;\n}\n\n.ag-selectable {\n -moz-user-select: text;\n -webkit-user-select: text;\n user-select: text;\n}\n\n.ag-tab {\n position: relative;\n}\n\n.ag-tab-guard {\n position: absolute;\n width: 0;\n height: 0;\n display: block;\n}\n\n.ag-select-agg-func-popup {\n position: absolute;\n}\n\n.ag-input-wrapper, .ag-picker-field-wrapper {\n display: flex;\n flex: 1 1 auto;\n align-items: center;\n line-height: normal;\n position: relative;\n}\n\n.ag-shake-left-to-right {\n animation-direction: alternate;\n animation-duration: 0.2s;\n animation-iteration-count: infinite;\n animation-name: ag-shake-left-to-right;\n}\n\n@keyframes ag-shake-left-to-right {\n from {\n padding-left: 6px;\n padding-right: 2px;\n }\n to {\n padding-left: 2px;\n padding-right: 6px;\n }\n}\n.ag-root-wrapper {\n cursor: default;\n position: relative;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n white-space: normal;\n}\n.ag-root-wrapper.ag-layout-normal {\n height: 100%;\n}\n\n.ag-watermark {\n position: absolute;\n bottom: 20px;\n right: 25px;\n opacity: 0.7;\n transition: opacity 1s ease-out 3s;\n color: #9B9B9B;\n}\n.ag-watermark::before {\n content: "";\n background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjA5IiBoZWlnaHQ9IjM2IiB2aWV3Qm94PSIwIDAgMjA5IDM2IiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgo8cGF0aCBkPSJNMTkyLjk5MyAyMy42NTgyVjE1LjcxMTdIMTc5LjQ1MkwxNzEuNTA1IDIzLjY1ODJIMTkyLjk5M1oiIGZpbGw9IiM5QjlCOUIiLz4KPHBhdGggZD0iTTIwOC4yNSAzLjk1MDgxSDE5MS4yNzZMMTgzLjI2NiAxMS44OTczSDIwOC4yNVYzLjk1MDgxWiIgZmlsbD0iIzlCOUI5QiIvPgo8cGF0aCBkPSJNMTYzLjYyMiAzMS42MDQ4TDE2Ny42OTEgMjcuNTM2MUgxODEuNDIzVjM1LjQ4MjdIMTYzLjYyMlYzMS42MDQ4WiIgZmlsbD0iIzlCOUI5QiIvPgo8cGF0aCBkPSJNMTY2LjYxIDE5Ljc4MDNIMTc1LjM4M0wxODMuMzkzIDExLjgzMzdIMTY2LjYxVjE5Ljc4MDNaIiBmaWxsPSIjOUI5QjlCIi8+CjxwYXRoIGQ9Ik0xNTcuMDExIDMxLjYwNDdIMTYzLjYyMkwxNzEuNTA1IDIzLjY1ODJIMTU3LjAxMVYzMS42MDQ3WiIgZmlsbD0iIzlCOUI5QiIvPgo8cGF0aCBkPSJNMTkxLjI3NiAzLjk1MDgxTDE4Ny4yMDggOC4wMTk0MUgxNjEuMjdWMC4wNzI4NzZIMTkxLjI3NlYzLjk1MDgxWiIgZmlsbD0iIzlCOUI5QiIvPgo8cGF0aCBkPSJNMjAuODM5MSAzMC4yMDYxSDguMzc4OTJMNi4yMTc0NSAzNS41NDYySDAuNzUwMjQ0TDEyLjI1NjggOC41OTE1NUgxNy4wMjQ3TDI4LjUzMTMgMzUuNTQ2MkgyMy4wMDA1TDIwLjgzOTEgMzAuMjA2MVpNMTkuMTIyNyAyNS45NDY4TDE0LjYwOSAxNC45NDg4TDEwLjA5NTQgMjUuOTQ2OEgxOS4xMjI3WiIgZmlsbD0iIzlCOUI5QiIvPgo8cGF0aCBkPSJNMTA0LjQzNyAxOC41MDg5QzEwNi4wMjYgMTYuMTU2NyAxMTAuMDMxIDE1LjkwMjQgMTExLjY4NCAxNS45MDI0VjIwLjQ3OTZDMTA5LjY1IDIwLjQ3OTYgMTA3LjYxNSAyMC41NDMyIDEwNi40MDcgMjEuNDMzMkMxMDUuMiAyMi4zMjMyIDEwNC41NjQgMjMuNTMxMSAxMDQuNTY0IDI0Ljk5MzJWMzUuNTQ2Mkg5OS42MDUxVjE1LjkwMjRIMTA0LjM3M0wxMDQuNDM3IDE4LjUwODlaIiBmaWxsPSIjOUI5QjlCIi8+CjxwYXRoIGQ9Ik0xMTkuMzc2IDE1LjkwMjRIMTE0LjQxOFYzNS41NDYySDExOS4zNzZWMTUuOTAyNFoiIGZpbGw9IiM5QjlCOUIiLz4KPHBhdGggZD0iTTExOS4zNzYgNy4xMjkzOUgxMTQuNDE4VjEyLjk3OEgxMTkuMzc2VjcuMTI5MzlaIiBmaWxsPSIjOUI5QjlCIi8+CjxwYXRoIGQ9Ik0xNDMuOTc5IDcuMTI5MzlWMzUuNTQ2MkgxMzkuMjExTDEzOS4wODQgMzIuNTU4M0MxMzguMzg0IDMzLjU3NTUgMTM3LjQ5NCAzNC40MDE5IDEzNi40MTQgMzUuMDM3NkMxMzUuMzMzIDM1LjYwOTggMTMzLjk5OCAzNS45Mjc2IDEzMi40NzIgMzUuOTI3NkMxMzEuMTM3IDM1LjkyNzYgMTI5Ljg2NiAzNS42NzMzIDEyOC43ODUgMzUuMjI4M0MxMjcuNjQxIDM0LjcxOTcgMTI2LjYyMyAzNC4wODQgMTI1Ljc5NyAzMy4xOTRDMTI0Ljk3MSAzMi4zMDQgMTI0LjI3MSAzMS4yMjMzIDEyMy44MjYgMzAuMDE1NEMxMjMuMzE4IDI4LjgwNzUgMTIzLjEyNyAyNy40MDkgMTIzLjEyNyAyNS44ODMyQzEyMy4xMjcgMjQuMzU3NSAxMjMuMzgxIDIyLjk1ODkgMTIzLjgyNiAyMS42ODc0QzEyNC4zMzUgMjAuNDE2IDEyNC45NzEgMTkuMzM1MyAxMjUuNzk3IDE4LjQ0NTNDMTI2LjYyMyAxNy41NTUyIDEyNy42NDEgMTYuODU2IDEyOC43ODUgMTYuMzQ3NEMxMjkuOTI5IDE1LjgzODggMTMxLjEzNyAxNS41ODQ1IDEzMi40NzIgMTUuNTg0NUMxMzMuOTk4IDE1LjU4NDUgMTM1LjI2OSAxNS44Mzg4IDEzNi4zNSAxNi40MTA5QzEzNy40MzEgMTYuOTgzMSAxMzguMzIxIDE3Ljc0NTkgMTM5LjAyIDE4LjgyNjdWNy4xOTI5NUgxNDMuOTc5VjcuMTI5MzlaTTEzMy41NTMgMzEuNjY4M0MxMzUuMjA2IDMxLjY2ODMgMTM2LjQ3NyAzMS4wOTYyIDEzNy40OTQgMzAuMDE1NEMxMzguNTExIDI4LjkzNDcgMTM5LjAyIDI3LjQ3MjUgMTM5LjAyIDI1LjY5MjVDMTM5LjAyIDIzLjkxMjUgMTM4LjUxMSAyMi41MTM5IDEzNy40OTQgMjEuMzY5NkMxMzYuNDc3IDIwLjI4ODggMTM1LjIwNiAxOS43MTY3IDEzMy41NTMgMTkuNzE2N0MxMzEuOTYzIDE5LjcxNjcgMTMwLjYyOCAyMC4yODg4IDEyOS42NzUgMjEuMzY5NkMxMjguNjU4IDIyLjQ1MDMgMTI4LjE0OSAyMy45MTI1IDEyOC4xNDkgMjUuNjkyNUMxMjguMTQ5IDI3LjQ3MjUgMTI4LjY1OCAyOC44NzExIDEyOS42NzUgMjkuOTUxOEMxMzAuNjkyIDMxLjA5NjEgMTMxLjk2MyAzMS42NjgzIDEzMy41NTMgMzEuNjY4M1oiIGZpbGw9IiM5QjlCOUIiLz4KPHBhdGggZD0iTTU3LjIwMjQgMjAuMzUyNUg0NC45MzNWMjQuNjExOEg1MS45MjU5QzUxLjczNTIgMjYuNzczMyA1MC45MDg4IDI4LjQyNjEgNDkuNTEwMiAyOS43NjExQzQ4LjExMTYgMzEuMDMyNiA0Ni4zMzE1IDMxLjY2ODMgNDQuMDQyOSAzMS42NjgzQzQyLjc3MTUgMzEuNjY4MyA0MS41NjM2IDMxLjQxNCA0MC41NDY1IDMwLjk2OUMzOS40NjU3IDMwLjUyNCAzOC41NzU3IDI5Ljg4ODMgMzcuODEyOSAyOC45OTgzQzM3LjA1IDI4LjE3MTggMzYuNDc3OCAyNy4xNTQ3IDM2LjAzMjggMjUuOTQ2OEMzNS41ODc4IDI0LjczODkgMzUuMzk3MSAyMy40Njc1IDM1LjM5NzEgMjIuMDA1M0MzNS4zOTcxIDIwLjU0MzIgMzUuNTg3OCAxOS4yNzE3IDM2LjAzMjggMTguMDYzOEMzNi40MTQzIDE2Ljg1NiAzNy4wNSAxNS45MDI0IDM3LjgxMjkgMTUuMDEyNEMzOC41NzU3IDE0LjE4NTkgMzkuNDY1NyAxMy41NTAyIDQwLjU0NjUgMTMuMDQxNkM0MS42MjcyIDEyLjU5NjYgNDIuNzcxNSAxMi4zNDIzIDQ0LjEwNjUgMTIuMzQyM0M0Ni43NzY2IDEyLjM0MjMgNDguODEwOSAxMi45NzggNTAuMjA5NSAxNC4yNDk1TDUzLjUxNTIgMTAuOTQzOEM1MS4wMzU5IDkuMDM2NTkgNDcuODU3MyA4LjAxOTQxIDQ0LjEwNjUgOC4wMTk0MUM0Mi4wMDg2IDguMDE5NDEgNDAuMTAxNSA4LjMzNzI5IDM4LjM4NSA5LjAzNjU5QzM2LjY2ODYgOS43MzU4OCAzNS4yMDY0IDEwLjYyNTkgMzMuOTk4NSAxMS44MzM3QzMyLjc5MDYgMTMuMDQxNiAzMS44MzcxIDE0LjUwMzggMzEuMjAxNCAxNi4yMjAzQzMwLjU2NTYgMTcuOTM2NyAzMC4yNDc4IDE5Ljg0MzggMzAuMjQ3OCAyMS44NzgyQzMwLjI0NzggMjMuOTEyNSAzMC41NjU2IDI1LjgxOTcgMzEuMjY0OSAyNy41MzYxQzMxLjk2NDIgMjkuMjUyNiAzMi44NTQyIDMwLjcxNDcgMzQuMDYyMSAzMS45MjI2QzM1LjI3IDMzLjEzMDUgMzYuNzMyMSAzNC4wODQxIDM4LjQ0ODYgMzQuNzE5OEM0MC4xNjUgMzUuNDE5MSA0Mi4wNzIyIDM1LjczNyA0NC4xMDY1IDM1LjczN0M0Ni4xNDA4IDM1LjczNyA0Ny45ODQ0IDM1LjQxOTEgNDkuNjM3MyAzNC43MTk4QzUxLjI5MDIgMzQuMDIwNSA1Mi42ODg4IDMzLjEzMDUgNTMuODMzMSAzMS45MjI2QzU0Ljk3NzQgMzAuNzE0NyA1NS44Njc0IDI5LjI1MjYgNTYuNTAzMSAyNy41MzYxQzU3LjEzODggMjUuODE5NyA1Ny40NTY3IDIzLjkxMjUgNTcuNDU2NyAyMS44NzgyVjIxLjA1MTdDNTcuMjY2IDIwLjkyNDYgNTcuMjAyNCAyMC42MDY3IDU3LjIwMjQgMjAuMzUyNVoiIGZpbGw9IiM5QjlCOUIiLz4KPHBhdGggZD0iTTk1Ljk4MTUgMjAuMzUyNUg4My43MTIxVjI0LjYxMThIOTAuNzA1QzkwLjUxNDMgMjYuNzczMyA4OS42ODc5IDI4LjQyNjEgODguMjg5MyAyOS43NjExQzg2Ljg5MDcgMzEuMDMyNiA4NS4xMTA2IDMxLjY2ODMgODIuODIyIDMxLjY2ODNDODEuNTUwNiAzMS42NjgzIDgwLjM0MjcgMzEuNDE0IDc5LjMyNTYgMzAuOTY5Qzc4LjI0NDggMzAuNTI0IDc3LjM1NDggMjkuODg4MyA3Ni41OTIgMjguOTk4M0M3NS44MjkxIDI4LjE3MTggNzUuMjU3IDI3LjE1NDcgNzQuODExOSAyNS45NDY4Qzc0LjM2NjkgMjQuNzM4OSA3NC4xNzYyIDIzLjQ2NzUgNzQuMTc2MiAyMi4wMDUzQzc0LjE3NjIgMjAuNTQzMiA3NC4zNjY5IDE5LjI3MTcgNzQuODExOSAxOC4wNjM4Qzc1LjE5MzQgMTYuODU2IDc1LjgyOTEgMTUuOTAyNCA3Ni41OTIgMTUuMDEyNEM3Ny4zNTQ4IDE0LjE4NTkgNzguMjQ0OCAxMy41NTAyIDc5LjMyNTYgMTMuMDQxNkM4MC40MDYzIDEyLjU5NjYgODEuNTUwNiAxMi4zNDIzIDgyLjg4NTYgMTIuMzQyM0M4NS41NTU3IDEyLjM0MjMgODcuNTkgMTIuOTc4IDg4Ljk4ODYgMTQuMjQ5NUw5Mi4yOTQzIDEwLjk0MzhDODkuODE1IDkuMDM2NTkgODYuNjM2NCA4LjAxOTQxIDgyLjg4NTYgOC4wMTk0MUM4MC43ODc4IDguMDE5NDEgNzguODgwNiA4LjMzNzI5IDc3LjE2NDEgOS4wMzY1OUM3NS40NDc3IDkuNzM1ODggNzMuOTg1NSAxMC42MjU5IDcyLjc3NzYgMTEuODMzN0M3MS41Njk4IDEzLjA0MTYgNzAuNjE2MiAxNC41MDM4IDY5Ljk4MDUgMTYuMjIwM0M2OS4zNDQ3IDE3LjkzNjcgNjkuMDI2OSAxOS44NDM4IDY5LjAyNjkgMjEuODc4MkM2OS4wMjY5IDIzLjkxMjUgNjkuMzQ0NyAyNS44MTk3IDcwLjA0NCAyNy41MzYxQzcwLjc0MzMgMjkuMjUyNiA3MS42MzM0IDMwLjcxNDcgNzIuODQxMiAzMS45MjI2Qzc0LjA0OTEgMzMuMTMwNSA3NS41MTEyIDM0LjA4NDEgNzcuMjI3NyAzNC43MTk4Qzc4Ljk0NDEgMzUuNDE5MSA4MC44NTEzIDM1LjczNyA4Mi44ODU2IDM1LjczN0M4NC45MiAzNS43MzcgODYuNzYzNiAzNS40MTkxIDg4LjQxNjQgMzQuNzE5OEM5MC4wNjkzIDM0LjAyMDUgOTEuNDY3OSAzMy4xMzA1IDkyLjYxMjIgMzEuOTIyNkM5My43NTY1IDMwLjcxNDcgOTQuNjQ2NSAyOS4yNTI2IDk1LjI4MjIgMjcuNTM2MUM5NS45MTggMjUuODE5NyA5Ni4yMzU4IDIzLjkxMjUgOTYuMjM1OCAyMS44NzgyVjIxLjA1MTdDOTYuMDQ1MSAyMC45MjQ2IDk1Ljk4MTUgMjAuNjA2NyA5NS45ODE1IDIwLjM1MjVaIiBmaWxsPSIjOUI5QjlCIi8+Cjwvc3ZnPgo=);\n background-repeat: no-repeat;\n background-size: 170px 40px;\n display: block;\n height: 40px;\n width: 170px;\n}\n\n.ag-watermark-text {\n opacity: 0.5;\n font-weight: bold;\n font-family: Impact, sans-serif;\n font-size: 19px;\n padding-left: 0.7rem;\n}\n\n.ag-root-wrapper-body {\n display: flex;\n flex-direction: row;\n}\n.ag-root-wrapper-body.ag-layout-normal {\n flex: 1 1 auto;\n height: 0;\n min-height: 0;\n}\n\n.ag-root {\n position: relative;\n display: flex;\n flex-direction: column;\n}\n.ag-root.ag-layout-normal, .ag-root.ag-layout-auto-height {\n overflow: hidden;\n flex: 1 1 auto;\n width: 0;\n}\n.ag-root.ag-layout-normal {\n height: 100%;\n}\n\n.ag-header-viewport,\n.ag-floating-top-viewport,\n.ag-body-viewport,\n.ag-center-cols-viewport,\n.ag-floating-bottom-viewport,\n.ag-body-horizontal-scroll-viewport,\n.ag-body-vertical-scroll-viewport,\n.ag-virtual-list-viewport,\n.ag-sticky-top-viewport,\n.ag-sticky-bottom-viewport {\n position: relative;\n height: 100%;\n min-width: 0px;\n overflow: hidden;\n flex: 1 1 auto;\n}\n\n.ag-body-viewport, .ag-center-cols-viewport {\n -ms-overflow-style: none !important;\n scrollbar-width: none !important;\n}\n.ag-body-viewport::-webkit-scrollbar, .ag-center-cols-viewport::-webkit-scrollbar {\n display: none !important;\n}\n\n.ag-body-viewport {\n display: flex;\n}\n.ag-body-viewport.ag-layout-normal {\n overflow-y: auto;\n -webkit-overflow-scrolling: touch;\n}\n\n.ag-center-cols-viewport {\n min-height: 100%;\n width: 100%;\n overflow-x: auto;\n}\n\n.ag-body-horizontal-scroll-viewport {\n overflow-x: scroll;\n}\n\n.ag-body-vertical-scroll-viewport {\n overflow-y: scroll;\n}\n\n.ag-virtual-list-viewport {\n overflow: auto;\n width: 100%;\n}\n\n.ag-header-container,\n.ag-floating-top-container,\n.ag-body-container,\n.ag-pinned-right-cols-container,\n.ag-center-cols-container,\n.ag-pinned-left-cols-container,\n.ag-floating-bottom-container,\n.ag-body-horizontal-scroll-container,\n.ag-body-vertical-scroll-container,\n.ag-full-width-container,\n.ag-floating-bottom-full-width-container,\n.ag-virtual-list-container,\n.ag-sticky-top-container,\n.ag-sticky-bottom-container {\n position: relative;\n}\n\n.ag-header-container,\n.ag-floating-top-container,\n.ag-floating-bottom-container,\n.ag-sticky-top-container,\n.ag-sticky-bottom-container {\n height: 100%;\n white-space: nowrap;\n}\n\n.ag-center-cols-container {\n display: block;\n}\n\n.ag-pinned-right-cols-container {\n display: block;\n}\n\n.ag-body-horizontal-scroll-container {\n height: 100%;\n}\n\n.ag-body-vertical-scroll-container {\n width: 100%;\n}\n\n.ag-full-width-container,\n.ag-floating-top-full-width-container,\n.ag-floating-bottom-full-width-container,\n.ag-sticky-top-full-width-container,\n.ag-sticky-bottom-full-width-container {\n position: absolute;\n top: 0px;\n pointer-events: none;\n}\n.ag-ltr .ag-full-width-container,\n.ag-ltr .ag-floating-top-full-width-container,\n.ag-ltr .ag-floating-bottom-full-width-container,\n.ag-ltr .ag-sticky-top-full-width-container,\n.ag-ltr .ag-sticky-bottom-full-width-container {\n left: 0;\n}\n.ag-rtl .ag-full-width-container,\n.ag-rtl .ag-floating-top-full-width-container,\n.ag-rtl .ag-floating-bottom-full-width-container,\n.ag-rtl .ag-sticky-top-full-width-container,\n.ag-rtl .ag-sticky-bottom-full-width-container {\n right: 0;\n}\n\n.ag-full-width-container {\n width: 100%;\n}\n\n.ag-floating-bottom-full-width-container, .ag-floating-top-full-width-container {\n display: inline-block;\n overflow: hidden;\n height: 100%;\n width: 100%;\n}\n\n.ag-virtual-list-container {\n overflow: hidden;\n}\n\n.ag-body {\n position: relative;\n display: flex;\n flex: 1 1 auto;\n flex-direction: row !important;\n min-height: 0;\n}\n\n.ag-body-horizontal-scroll,\n.ag-body-vertical-scroll {\n min-height: 0;\n min-width: 0;\n display: flex;\n position: relative;\n}\n.ag-body-horizontal-scroll.ag-scrollbar-invisible,\n.ag-body-vertical-scroll.ag-scrollbar-invisible {\n position: absolute;\n bottom: 0;\n}\n.ag-body-horizontal-scroll.ag-scrollbar-invisible.ag-apple-scrollbar,\n.ag-body-vertical-scroll.ag-scrollbar-invisible.ag-apple-scrollbar {\n opacity: 0;\n transition: opacity 400ms;\n visibility: hidden;\n}\n.ag-body-horizontal-scroll.ag-scrollbar-invisible.ag-apple-scrollbar.ag-scrollbar-scrolling, .ag-body-horizontal-scroll.ag-scrollbar-invisible.ag-apple-scrollbar.ag-scrollbar-active,\n.ag-body-vertical-scroll.ag-scrollbar-invisible.ag-apple-scrollbar.ag-scrollbar-scrolling,\n.ag-body-vertical-scroll.ag-scrollbar-invisible.ag-apple-scrollbar.ag-scrollbar-active {\n visibility: visible;\n opacity: 1;\n}\n\n.ag-body-horizontal-scroll {\n width: 100%;\n}\n.ag-body-horizontal-scroll.ag-scrollbar-invisible {\n left: 0;\n right: 0;\n}\n\n.ag-body-vertical-scroll {\n height: 100%;\n}\n.ag-body-vertical-scroll.ag-scrollbar-invisible {\n top: 0;\n z-index: 10;\n}\n.ag-ltr .ag-body-vertical-scroll.ag-scrollbar-invisible {\n right: 0;\n}\n.ag-rtl .ag-body-vertical-scroll.ag-scrollbar-invisible {\n left: 0;\n}\n\n.ag-force-vertical-scroll {\n overflow-y: scroll !important;\n}\n\n.ag-horizontal-left-spacer, .ag-horizontal-right-spacer {\n height: 100%;\n min-width: 0;\n overflow-x: scroll;\n}\n.ag-horizontal-left-spacer.ag-scroller-corner, .ag-horizontal-right-spacer.ag-scroller-corner {\n overflow-x: hidden;\n}\n\n.ag-header, .ag-pinned-left-header, .ag-pinned-right-header {\n display: inline-block;\n overflow: hidden;\n position: relative;\n}\n\n.ag-header-cell-sortable .ag-header-cell-label {\n cursor: pointer;\n}\n\n.ag-header {\n display: flex;\n width: 100%;\n white-space: nowrap;\n}\n\n.ag-pinned-left-header {\n height: 100%;\n}\n\n.ag-pinned-right-header {\n height: 100%;\n}\n\n.ag-header-row {\n position: absolute;\n}\n\n.ag-header-row:not(.ag-header-row-column-group) {\n overflow: hidden;\n}\n\n.ag-header.ag-header-allow-overflow .ag-header-row {\n overflow: visible;\n}\n\n.ag-header-cell {\n display: inline-flex;\n align-items: center;\n position: absolute;\n height: 100%;\n}\n\n.ag-header-cell.ag-header-active .ag-header-cell-menu-button, .ag-header-cell-filter-button {\n opacity: 1;\n}\n\n.ag-header-cell-menu-button:not(.ag-header-menu-always-show) {\n transition: opacity 0.2s;\n opacity: 0;\n}\n\n.ag-header-group-cell-label, .ag-header-cell-label {\n display: flex;\n flex: 1 1 auto;\n align-self: stretch;\n align-items: center;\n}\n\n.ag-header-cell-label {\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.ag-header-group-cell-label.ag-sticky-label {\n position: sticky;\n flex: none;\n max-width: 100%;\n}\n\n.ag-header-group-text {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.ag-header-cell-text {\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.ag-header-cell:not(.ag-header-cell-auto-height) .ag-header-cell-comp-wrapper {\n height: 100%;\n display: flex;\n align-items: center;\n}\n\n.ag-header-cell-comp-wrapper {\n width: 100%;\n}\n\n.ag-header-cell-wrap-text .ag-header-cell-comp-wrapper {\n white-space: normal;\n}\n\n.ag-right-aligned-header .ag-header-cell-label {\n flex-direction: row-reverse;\n}\n\n.ag-header-cell-resize {\n position: absolute;\n z-index: 2;\n height: 100%;\n width: 8px;\n top: 0;\n cursor: ew-resize;\n}\n.ag-ltr .ag-header-cell-resize {\n right: -4px;\n}\n.ag-rtl .ag-header-cell-resize {\n left: -4px;\n}\n\n.ag-pinned-left-header .ag-header-cell-resize {\n right: -4px;\n}\n\n.ag-pinned-right-header .ag-header-cell-resize {\n left: -4px;\n}\n\n.ag-header-select-all {\n display: flex;\n}\n\n.ag-header-cell-menu-button,\n.ag-header-cell-filter-button,\n.ag-side-button-button,\n.ag-panel-title-bar-button,\n.ag-floating-filter-button-button {\n cursor: pointer;\n}\n\n.ag-column-moving .ag-cell {\n transition: left 0.2s;\n}\n.ag-column-moving .ag-header-cell {\n transition: left 0.2s;\n}\n.ag-column-moving .ag-header-group-cell {\n transition: left 0.2s, width 0.2s;\n}\n\n.ag-column-panel {\n display: flex;\n flex-direction: column;\n overflow: hidden;\n flex: 1 1 auto;\n}\n\n.ag-column-select {\n position: relative;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n flex: 3 1 0px;\n}\n\n.ag-column-select-header {\n position: relative;\n display: flex;\n flex: none;\n}\n\n.ag-column-select-header-icon {\n position: relative;\n}\n\n.ag-column-select-header-filter-wrapper {\n flex: 1 1 auto;\n}\n\n.ag-column-select-header-filter {\n width: 100%;\n}\n\n.ag-column-select-list {\n flex: 1 1 0px;\n overflow: hidden;\n}\n\n.ag-column-drop {\n position: relative;\n display: inline-flex;\n align-items: center;\n overflow: auto;\n width: 100%;\n}\n\n.ag-column-drop-list {\n display: flex;\n align-items: center;\n}\n\n.ag-column-drop-cell {\n position: relative;\n display: flex;\n align-items: center;\n}\n\n.ag-column-drop-cell-text {\n overflow: hidden;\n flex: 1 1 auto;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.ag-column-drop-vertical {\n display: flex;\n flex-direction: column;\n overflow: hidden;\n align-items: stretch;\n flex: 1 1 0px;\n}\n\n.ag-column-drop-vertical-title-bar {\n display: flex;\n align-items: center;\n flex: none;\n}\n\n.ag-column-drop-vertical-list {\n position: relative;\n align-items: stretch;\n flex-grow: 1;\n flex-direction: column;\n overflow-x: auto;\n}\n.ag-column-drop-vertical-list > * {\n flex: none;\n}\n\n.ag-column-drop-empty .ag-column-drop-vertical-list {\n overflow: hidden;\n}\n\n.ag-column-drop-vertical-empty-message {\n display: block;\n}\n\n.ag-column-drop.ag-column-drop-horizontal {\n white-space: nowrap;\n overflow: hidden;\n}\n\n.ag-column-drop-cell-button {\n cursor: pointer;\n}\n\n.ag-filter-toolpanel {\n flex: 1 1 0px;\n min-width: 0;\n}\n\n.ag-filter-toolpanel-header {\n position: relative;\n}\n\n.ag-filter-toolpanel-header, .ag-filter-toolpanel-search {\n display: flex;\n align-items: center;\n}\n.ag-filter-toolpanel-header > *, .ag-filter-toolpanel-search > * {\n display: flex;\n align-items: center;\n}\n\n.ag-filter-apply-panel {\n display: flex;\n justify-content: flex-end;\n overflow: hidden;\n}\n\n.ag-row-animation .ag-row {\n transition: transform 0.4s, top 0.4s;\n}\n\n.ag-row-animation .ag-row.ag-after-created {\n transition: transform 0.4s, top 0.4s, height 0.4s;\n}\n\n.ag-row-no-animation .ag-row {\n transition: none;\n}\n\n.ag-row {\n white-space: nowrap;\n width: 100%;\n}\n\n.ag-row-loading {\n display: flex;\n align-items: center;\n}\n\n.ag-row-position-absolute {\n position: absolute;\n}\n\n.ag-row-position-relative {\n position: relative;\n}\n\n.ag-full-width-row {\n overflow: hidden;\n pointer-events: all;\n}\n\n.ag-row-inline-editing {\n z-index: 1;\n}\n\n.ag-row-dragging {\n z-index: 2;\n}\n\n.ag-stub-cell {\n display: flex;\n align-items: center;\n}\n\n.ag-cell {\n display: inline-block;\n position: absolute;\n white-space: nowrap;\n height: 100%;\n}\n\n.ag-cell-value {\n flex: 1 1 auto;\n}\n\n.ag-cell-value, .ag-group-value {\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.ag-cell-wrap-text {\n white-space: normal;\n}\n\n.ag-cell-wrapper {\n display: flex;\n align-items: center;\n}\n.ag-cell-wrapper.ag-row-group {\n align-items: flex-start;\n}\n\n.ag-sparkline-wrapper {\n position: absolute;\n height: 100%;\n width: 100%;\n left: 0;\n top: 0;\n}\n\n.ag-full-width-row .ag-cell-wrapper.ag-row-group {\n height: 100%;\n align-items: center;\n}\n\n.ag-cell-inline-editing {\n z-index: 1;\n}\n.ag-cell-inline-editing .ag-cell-wrapper,\n.ag-cell-inline-editing .ag-cell-edit-wrapper,\n.ag-cell-inline-editing .ag-cell-editor,\n.ag-cell-inline-editing .ag-cell-editor .ag-wrapper,\n.ag-cell-inline-editing .ag-cell-editor input {\n height: 100%;\n width: 100%;\n line-height: normal;\n}\n\n.ag-cell .ag-icon {\n display: inline-block;\n vertical-align: middle;\n}\n\n.ag-set-filter-item {\n display: flex;\n align-items: center;\n height: 100%;\n}\n\n.ag-set-filter-item-checkbox {\n display: flex;\n width: 100%;\n height: 100%;\n}\n\n.ag-set-filter-group-icons {\n display: block;\n}\n.ag-set-filter-group-icons > * {\n cursor: pointer;\n}\n\n.ag-filter-body-wrapper {\n display: flex;\n flex-direction: column;\n}\n\n.ag-filter-filter {\n flex: 1 1 0px;\n}\n\n.ag-filter-condition {\n display: flex;\n justify-content: center;\n}\n\n.ag-floating-filter-body {\n position: relative;\n display: flex;\n flex: 1 1 auto;\n height: 100%;\n}\n\n.ag-floating-filter-full-body {\n display: flex;\n flex: 1 1 auto;\n height: 100%;\n width: 100%;\n align-items: center;\n overflow: hidden;\n}\n\n.ag-floating-filter-full-body > div {\n flex: 1 1 auto;\n}\n\n.ag-floating-filter-input {\n align-items: center;\n display: flex;\n width: 100%;\n}\n.ag-floating-filter-input > * {\n flex: 1 1 auto;\n}\n\n.ag-floating-filter-button {\n display: flex;\n flex: none;\n}\n\n.ag-set-floating-filter-input input[disabled] {\n pointer-events: none;\n}\n\n.ag-dnd-ghost {\n position: absolute;\n display: inline-flex;\n align-items: center;\n cursor: move;\n white-space: nowrap;\n z-index: 9999;\n}\n\n.ag-overlay {\n height: 100%;\n left: 0;\n pointer-events: none;\n position: absolute;\n top: 0;\n width: 100%;\n z-index: 2;\n}\n\n.ag-overlay-panel {\n display: flex;\n height: 100%;\n width: 100%;\n}\n\n.ag-overlay-wrapper {\n display: flex;\n flex: none;\n width: 100%;\n height: 100%;\n align-items: center;\n justify-content: center;\n text-align: center;\n}\n\n.ag-overlay-loading-wrapper {\n pointer-events: all;\n}\n\n.ag-popup-child {\n z-index: 5;\n top: 0;\n}\n\n.ag-popup-editor {\n position: absolute;\n -moz-user-select: none;\n -webkit-user-select: none;\n user-select: none;\n}\n\n.ag-large-text-input {\n display: block;\n}\n\n.ag-virtual-list-item {\n position: absolute;\n width: 100%;\n}\n\n.ag-floating-top {\n overflow: hidden;\n white-space: nowrap;\n width: 100%;\n position: relative;\n display: flex;\n}\n\n.ag-pinned-left-floating-top {\n display: inline-block;\n overflow: hidden;\n position: relative;\n min-width: 0px;\n}\n\n.ag-pinned-right-floating-top {\n display: inline-block;\n overflow: hidden;\n position: relative;\n min-width: 0px;\n}\n\n.ag-floating-bottom {\n overflow: hidden;\n white-space: nowrap;\n width: 100%;\n position: relative;\n display: flex;\n}\n\n.ag-pinned-left-floating-bottom {\n display: inline-block;\n overflow: hidden;\n position: relative;\n min-width: 0px;\n}\n\n.ag-pinned-right-floating-bottom {\n display: inline-block;\n overflow: hidden;\n position: relative;\n min-width: 0px;\n}\n\n.ag-sticky-top,\n.ag-sticky-bottom {\n position: absolute;\n display: flex;\n width: 100%;\n}\n\n.ag-pinned-left-sticky-top,\n.ag-pinned-right-sticky-top {\n position: relative;\n height: 100%;\n overflow: hidden;\n}\n\n.ag-sticky-top-full-width-container,\n.ag-sticky-bottom-full-width-container {\n overflow: hidden;\n width: 100%;\n height: 100%;\n}\n\n.ag-dialog, .ag-panel {\n display: flex;\n flex-direction: column;\n position: relative;\n overflow: hidden;\n}\n\n.ag-panel-title-bar {\n display: flex;\n flex: none;\n align-items: center;\n cursor: default;\n}\n\n.ag-panel-title-bar-title {\n flex: 1 1 auto;\n}\n\n.ag-panel-title-bar-buttons {\n display: flex;\n}\n\n.ag-panel-title-bar-button {\n cursor: pointer;\n}\n\n.ag-panel-content-wrapper {\n display: flex;\n flex: 1 1 auto;\n position: relative;\n overflow: hidden;\n}\n\n.ag-dialog {\n position: absolute;\n}\n\n.ag-resizer {\n position: absolute;\n pointer-events: none;\n z-index: 1;\n -moz-user-select: none;\n -webkit-user-select: none;\n user-select: none;\n}\n.ag-resizer.ag-resizer-topLeft {\n top: 0;\n left: 0;\n height: 5px;\n width: 5px;\n cursor: nwse-resize;\n}\n.ag-resizer.ag-resizer-top {\n top: 0;\n left: 5px;\n right: 5px;\n height: 5px;\n cursor: ns-resize;\n}\n.ag-resizer.ag-resizer-topRight {\n top: 0;\n right: 0;\n height: 5px;\n width: 5px;\n cursor: nesw-resize;\n}\n.ag-resizer.ag-resizer-right {\n top: 5px;\n right: 0;\n bottom: 5px;\n width: 5px;\n cursor: ew-resize;\n}\n.ag-resizer.ag-resizer-bottomRight {\n bottom: 0;\n right: 0;\n height: 5px;\n width: 5px;\n cursor: nwse-resize;\n}\n.ag-resizer.ag-resizer-bottom {\n bottom: 0;\n left: 5px;\n right: 5px;\n height: 5px;\n cursor: ns-resize;\n}\n.ag-resizer.ag-resizer-bottomLeft {\n bottom: 0;\n left: 0;\n height: 5px;\n width: 5px;\n cursor: nesw-resize;\n}\n.ag-resizer.ag-resizer-left {\n left: 0;\n top: 5px;\n bottom: 5px;\n width: 5px;\n cursor: ew-resize;\n}\n\n.ag-tooltip {\n position: absolute;\n z-index: 99999;\n}\n\n.ag-tooltip-custom {\n position: absolute;\n z-index: 99999;\n}\n\n.ag-tooltip:not(.ag-tooltip-interactive),\n.ag-tooltip-custom:not(.ag-tooltip-interactive) {\n pointer-events: none;\n}\n\n.ag-value-slide-out {\n margin-right: 5px;\n opacity: 1;\n transition: opacity 3s, margin-right 3s;\n transition-timing-function: linear;\n}\n\n.ag-value-slide-out-end {\n margin-right: 10px;\n opacity: 0;\n}\n\n.ag-opacity-zero {\n opacity: 0 !important;\n}\n\n.ag-menu {\n max-height: 100%;\n overflow-y: auto;\n position: absolute;\n -moz-user-select: none;\n -webkit-user-select: none;\n user-select: none;\n}\n\n.ag-menu-column-select-wrapper {\n height: 265px;\n overflow: auto;\n}\n.ag-menu-column-select-wrapper .ag-column-select {\n height: 100%;\n}\n\n.ag-dialog .ag-panel-content-wrapper .ag-column-select {\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n}\n\n.ag-menu-list {\n display: table;\n width: 100%;\n}\n\n.ag-menu-option, .ag-menu-separator {\n display: table-row;\n}\n\n.ag-menu-option-part, .ag-menu-separator-part {\n display: table-cell;\n vertical-align: middle;\n}\n\n.ag-menu-option-text {\n white-space: nowrap;\n}\n\n.ag-menu-option-custom {\n display: contents;\n}\n\n.ag-compact-menu-option {\n width: 100%;\n display: flex;\n flex-wrap: nowrap;\n}\n\n.ag-compact-menu-option-text {\n white-space: nowrap;\n flex: 1 1 auto;\n}\n\n.ag-rich-select {\n cursor: default;\n outline: none;\n height: 100%;\n}\n\n.ag-rich-select-value {\n display: flex;\n align-items: center;\n height: 100%;\n}\n.ag-rich-select-value .ag-picker-field-display {\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.ag-rich-select-value .ag-picker-field-display.ag-display-as-placeholder {\n opacity: 0.5;\n}\n\n.ag-rich-select-list {\n position: relative;\n}\n.ag-rich-select-list .ag-loading-text {\n min-height: 2rem;\n}\n\n.ag-rich-select-row {\n display: flex;\n flex: 1 1 auto;\n align-items: center;\n white-space: nowrap;\n overflow: hidden;\n height: 100%;\n}\n\n.ag-rich-select-field-input {\n flex: 1 1 auto;\n}\n.ag-rich-select-field-input .ag-input-field-input {\n padding: 0 !important;\n border: none !important;\n box-shadow: none !important;\n text-overflow: ellipsis;\n}\n.ag-rich-select-field-input .ag-input-field-input::-moz-placeholder {\n opacity: 0.8;\n}\n.ag-rich-select-field-input .ag-input-field-input::placeholder {\n opacity: 0.8;\n}\n\n.ag-autocomplete {\n align-items: center;\n display: flex;\n}\n.ag-autocomplete > * {\n flex: 1 1 auto;\n}\n\n.ag-autocomplete-list-popup {\n position: absolute;\n -moz-user-select: none;\n -webkit-user-select: none;\n user-select: none;\n}\n\n.ag-autocomplete-list {\n position: relative;\n}\n\n.ag-autocomplete-virtual-list-item {\n display: flex;\n}\n\n.ag-autocomplete-row {\n display: flex;\n flex: 1 1 auto;\n align-items: center;\n overflow: hidden;\n}\n\n.ag-autocomplete-row-label {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.ag-paging-panel {\n align-items: center;\n display: flex;\n justify-content: flex-end;\n}\n\n.ag-paging-page-summary-panel {\n display: flex;\n align-items: center;\n}\n\n.ag-paging-button {\n position: relative;\n}\n\n.ag-disabled .ag-paging-page-summary-panel {\n pointer-events: none;\n}\n\n.ag-tool-panel-wrapper {\n display: flex;\n overflow-y: auto;\n overflow-x: hidden;\n cursor: default;\n -moz-user-select: none;\n -webkit-user-select: none;\n user-select: none;\n}\n\n.ag-column-select-column,\n.ag-column-select-column-group,\n.ag-select-agg-func-item {\n position: relative;\n align-items: center;\n display: flex;\n flex-direction: row;\n flex-wrap: nowrap;\n height: 100%;\n}\n.ag-column-select-column > *,\n.ag-column-select-column-group > *,\n.ag-select-agg-func-item > * {\n flex: none;\n}\n\n.ag-select-agg-func-item,\n.ag-column-select-column-label {\n flex: 1 1 auto;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.ag-column-select-checkbox {\n display: flex;\n}\n\n.ag-tool-panel-horizontal-resize {\n cursor: ew-resize;\n height: 100%;\n position: absolute;\n top: 0;\n width: 5px;\n z-index: 1;\n}\n\n.ag-ltr .ag-side-bar-left .ag-tool-panel-horizontal-resize {\n right: -3px;\n}\n.ag-rtl .ag-side-bar-left .ag-tool-panel-horizontal-resize {\n left: -3px;\n}\n\n.ag-ltr .ag-side-bar-right .ag-tool-panel-horizontal-resize {\n left: -3px;\n}\n.ag-rtl .ag-side-bar-right .ag-tool-panel-horizontal-resize {\n right: -3px;\n}\n\n.ag-details-row {\n width: 100%;\n}\n\n.ag-details-row-fixed-height {\n height: 100%;\n}\n\n.ag-details-grid {\n width: 100%;\n}\n\n.ag-details-grid-fixed-height {\n height: 100%;\n}\n\n.ag-header-group-cell {\n display: flex;\n align-items: center;\n height: 100%;\n position: absolute;\n}\n\n.ag-header-group-cell-no-group.ag-header-span-height .ag-header-cell-resize {\n display: none;\n}\n\n.ag-cell-label-container {\n display: flex;\n justify-content: space-between;\n flex-direction: row-reverse;\n align-items: center;\n height: 100%;\n width: 100%;\n padding: 5px 0px;\n}\n\n.ag-right-aligned-header .ag-cell-label-container {\n flex-direction: row;\n}\n.ag-right-aligned-header .ag-header-cell-text {\n text-align: end;\n}\n\n.ag-side-bar {\n display: flex;\n flex-direction: row-reverse;\n}\n\n.ag-side-bar-left {\n order: -1;\n flex-direction: row;\n}\n\n.ag-side-button-button {\n position: relative;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n flex-wrap: nowrap;\n white-space: nowrap;\n outline: none;\n cursor: pointer;\n}\n\n.ag-side-button-label {\n writing-mode: vertical-lr;\n}\n\n.ag-status-bar {\n display: flex;\n justify-content: space-between;\n overflow: hidden;\n}\n\n.ag-status-panel {\n display: inline-flex;\n}\n\n.ag-status-name-value {\n white-space: nowrap;\n}\n\n.ag-status-bar-left {\n display: inline-flex;\n}\n\n.ag-status-bar-center {\n display: inline-flex;\n}\n\n.ag-status-bar-right {\n display: inline-flex;\n}\n\n.ag-icon {\n display: block;\n speak: none;\n}\n\n.ag-group {\n position: relative;\n width: 100%;\n}\n\n.ag-group-title-bar {\n display: flex;\n align-items: center;\n}\n\n.ag-group-title {\n display: inline;\n min-width: 0;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n\n.ag-group-title-bar .ag-group-title {\n cursor: default;\n}\n\n.ag-group-toolbar {\n display: flex;\n align-items: center;\n}\n\n.ag-group-container {\n display: flex;\n}\n\n.ag-disabled .ag-group-container {\n pointer-events: none;\n}\n\n.ag-group-container-horizontal {\n flex-direction: row;\n flex-wrap: wrap;\n}\n\n.ag-group-container-vertical {\n flex-direction: column;\n}\n\n.ag-column-group-icons {\n display: block;\n}\n.ag-column-group-icons > * {\n cursor: pointer;\n}\n\n.ag-group-item-alignment-stretch .ag-group-item {\n align-items: stretch;\n}\n\n.ag-group-item-alignment-start .ag-group-item {\n align-items: flex-start;\n}\n\n.ag-group-item-alignment-end .ag-group-item {\n align-items: flex-end;\n}\n\n.ag-toggle-button-icon {\n transition: right 0.3s;\n position: absolute;\n top: -1px;\n}\n\n.ag-input-field, .ag-select {\n display: flex;\n flex-direction: row;\n align-items: center;\n}\n\n.ag-input-field-input {\n flex: 1 1 auto;\n}\n\n.ag-floating-filter-input .ag-input-field-input[type=date] {\n width: 1px;\n}\n\n.ag-range-field {\n display: flex;\n align-items: center;\n}\n\n.ag-angle-select {\n display: flex;\n align-items: center;\n}\n\n.ag-angle-select-wrapper {\n display: flex;\n}\n\n.ag-angle-select-parent-circle {\n display: block;\n position: relative;\n}\n\n.ag-angle-select-child-circle {\n position: absolute;\n}\n\n.ag-slider-wrapper {\n display: flex;\n}\n.ag-slider-wrapper .ag-input-field {\n flex: 1 1 auto;\n}\n\n.ag-picker-field-display {\n flex: 1 1 auto;\n}\n\n.ag-picker-field {\n display: flex;\n align-items: center;\n}\n\n.ag-picker-field-icon {\n display: flex;\n border: 0;\n padding: 0;\n margin: 0;\n cursor: pointer;\n}\n\n.ag-picker-field-wrapper {\n overflow: hidden;\n}\n\n.ag-label-align-right .ag-label {\n order: 1;\n}\n.ag-label-align-right > * {\n flex: none;\n}\n\n.ag-label-align-top {\n flex-direction: column;\n align-items: flex-start;\n}\n.ag-label-align-top > * {\n align-self: stretch;\n}\n\n.ag-label-ellipsis {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n flex: 1;\n}\n\n.ag-color-panel {\n width: 100%;\n display: flex;\n flex-direction: column;\n text-align: center;\n}\n\n.ag-spectrum-color {\n flex: 1 1 auto;\n position: relative;\n overflow: hidden;\n cursor: default;\n}\n\n.ag-spectrum-fill {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n}\n\n.ag-spectrum-val {\n cursor: pointer;\n}\n\n.ag-spectrum-dragger {\n position: absolute;\n pointer-events: none;\n cursor: pointer;\n}\n\n.ag-spectrum-hue {\n cursor: default;\n background: linear-gradient(to left, #ff0000 3%, #ffff00 17%, #00ff00 33%, #00ffff 50%, #0000ff 67%, #ff00ff 83%, #ff0000 100%);\n}\n\n.ag-spectrum-alpha {\n cursor: default;\n}\n\n.ag-spectrum-hue-background {\n width: 100%;\n height: 100%;\n}\n\n.ag-spectrum-alpha-background {\n background-image: linear-gradient(to right, rgba(0, 0, 0, 0), rgb(0, 0, 0));\n width: 100%;\n height: 100%;\n}\n\n.ag-spectrum-tool {\n cursor: pointer;\n}\n\n.ag-spectrum-slider {\n position: absolute;\n pointer-events: none;\n}\n\n.ag-recent-colors {\n display: flex;\n}\n\n.ag-recent-color {\n cursor: pointer;\n}\n\n.ag-ltr .ag-column-select-indent-1 {\n padding-left: 20px;\n}\n.ag-rtl .ag-column-select-indent-1 {\n padding-right: 20px;\n}\n\n.ag-ltr .ag-set-filter-indent-1 {\n padding-left: 20px;\n}\n.ag-rtl .ag-set-filter-indent-1 {\n padding-right: 20px;\n}\n\n.ag-ltr .ag-row-group-indent-1 {\n padding-left: 20px;\n}\n.ag-rtl .ag-row-group-indent-1 {\n padding-right: 20px;\n}\n\n.ag-ltr .ag-column-select-indent-2 {\n padding-left: 40px;\n}\n.ag-rtl .ag-column-select-indent-2 {\n padding-right: 40px;\n}\n\n.ag-ltr .ag-set-filter-indent-2 {\n padding-left: 40px;\n}\n.ag-rtl .ag-set-filter-indent-2 {\n padding-right: 40px;\n}\n\n.ag-ltr .ag-row-group-indent-2 {\n padding-left: 40px;\n}\n.ag-rtl .ag-row-group-indent-2 {\n padding-right: 40px;\n}\n\n.ag-ltr .ag-column-select-indent-3 {\n padding-left: 60px;\n}\n.ag-rtl .ag-column-select-indent-3 {\n padding-right: 60px;\n}\n\n.ag-ltr .ag-set-filter-indent-3 {\n padding-left: 60px;\n}\n.ag-rtl .ag-set-filter-indent-3 {\n padding-right: 60px;\n}\n\n.ag-ltr .ag-row-group-indent-3 {\n padding-left: 60px;\n}\n.ag-rtl .ag-row-group-indent-3 {\n padding-right: 60px;\n}\n\n.ag-ltr .ag-column-select-indent-4 {\n padding-left: 80px;\n}\n.ag-rtl .ag-column-select-indent-4 {\n padding-right: 80px;\n}\n\n.ag-ltr .ag-set-filter-indent-4 {\n padding-left: 80px;\n}\n.ag-rtl .ag-set-filter-indent-4 {\n padding-right: 80px;\n}\n\n.ag-ltr .ag-row-group-indent-4 {\n padding-left: 80px;\n}\n.ag-rtl .ag-row-group-indent-4 {\n padding-right: 80px;\n}\n\n.ag-ltr .ag-column-select-indent-5 {\n padding-left: 100px;\n}\n.ag-rtl .ag-column-select-indent-5 {\n padding-right: 100px;\n}\n\n.ag-ltr .ag-set-filter-indent-5 {\n padding-left: 100px;\n}\n.ag-rtl .ag-set-filter-indent-5 {\n padding-right: 100px;\n}\n\n.ag-ltr .ag-row-group-indent-5 {\n padding-left: 100px;\n}\n.ag-rtl .ag-row-group-indent-5 {\n padding-right: 100px;\n}\n\n.ag-ltr .ag-column-select-indent-6 {\n padding-left: 120px;\n}\n.ag-rtl .ag-column-select-indent-6 {\n padding-right: 120px;\n}\n\n.ag-ltr .ag-set-filter-indent-6 {\n padding-left: 120px;\n}\n.ag-rtl .ag-set-filter-indent-6 {\n padding-right: 120px;\n}\n\n.ag-ltr .ag-row-group-indent-6 {\n padding-left: 120px;\n}\n.ag-rtl .ag-row-group-indent-6 {\n padding-right: 120px;\n}\n\n.ag-ltr .ag-column-select-indent-7 {\n padding-left: 140px;\n}\n.ag-rtl .ag-column-select-indent-7 {\n padding-right: 140px;\n}\n\n.ag-ltr .ag-set-filter-indent-7 {\n padding-left: 140px;\n}\n.ag-rtl .ag-set-filter-indent-7 {\n padding-right: 140px;\n}\n\n.ag-ltr .ag-row-group-indent-7 {\n padding-left: 140px;\n}\n.ag-rtl .ag-row-group-indent-7 {\n padding-right: 140px;\n}\n\n.ag-ltr .ag-column-select-indent-8 {\n padding-left: 160px;\n}\n.ag-rtl .ag-column-select-indent-8 {\n padding-right: 160px;\n}\n\n.ag-ltr .ag-set-filter-indent-8 {\n padding-left: 160px;\n}\n.ag-rtl .ag-set-filter-indent-8 {\n padding-right: 160px;\n}\n\n.ag-ltr .ag-row-group-indent-8 {\n padding-left: 160px;\n}\n.ag-rtl .ag-row-group-indent-8 {\n padding-right: 160px;\n}\n\n.ag-ltr .ag-column-select-indent-9 {\n padding-left: 180px;\n}\n.ag-rtl .ag-column-select-indent-9 {\n padding-right: 180px;\n}\n\n.ag-ltr .ag-set-filter-indent-9 {\n padding-left: 180px;\n}\n.ag-rtl .ag-set-filter-indent-9 {\n padding-right: 180px;\n}\n\n.ag-ltr .ag-row-group-indent-9 {\n padding-left: 180px;\n}\n.ag-rtl .ag-row-group-indent-9 {\n padding-right: 180px;\n}\n\n.ag-pill-select {\n display: flex;\n flex-direction: column;\n}\n.ag-pill-select .ag-column-drop {\n flex: unset;\n}\n\n.ag-ltr {\n direction: ltr;\n}\n.ag-ltr .ag-body, .ag-ltr .ag-floating-top, .ag-ltr .ag-floating-bottom, .ag-ltr .ag-header, .ag-ltr .ag-sticky-top, .ag-ltr .ag-sticky-bottom, .ag-ltr .ag-body-viewport, .ag-ltr .ag-body-horizontal-scroll {\n flex-direction: row;\n}\n\n.ag-rtl {\n direction: rtl;\n}\n.ag-rtl .ag-body, .ag-rtl .ag-floating-top, .ag-rtl .ag-floating-bottom, .ag-rtl .ag-header, .ag-rtl .ag-sticky-top, .ag-rtl .ag-sticky-bottom, .ag-rtl .ag-body-viewport, .ag-rtl .ag-body-horizontal-scroll {\n flex-direction: row-reverse;\n}\n.ag-rtl .ag-icon-contracted,\n.ag-rtl .ag-icon-expanded,\n.ag-rtl .ag-icon-tree-closed {\n display: block;\n transform: rotate(180deg);\n}\n\n.ag-body .ag-body-viewport {\n -webkit-overflow-scrolling: touch;\n}\n\n.ag-layout-print.ag-body {\n display: block;\n height: unset;\n}\n.ag-layout-print.ag-root-wrapper {\n display: inline-block;\n}\n.ag-layout-print .ag-body-vertical-scroll {\n display: none;\n}\n.ag-layout-print .ag-body-horizontal-scroll {\n display: none;\n}\n.ag-layout-print.ag-force-vertical-scroll {\n overflow-y: visible !important;\n}\n\n@media print {\n .ag-root-wrapper.ag-layout-print {\n display: table;\n }\n .ag-root-wrapper.ag-layout-print .ag-root-wrapper-body,\n .ag-root-wrapper.ag-layout-print .ag-root,\n .ag-root-wrapper.ag-layout-print .ag-body-viewport,\n .ag-root-wrapper.ag-layout-print .ag-center-cols-container,\n .ag-root-wrapper.ag-layout-print .ag-center-cols-viewport,\n .ag-root-wrapper.ag-layout-print .ag-body-horizontal-scroll-viewport,\n .ag-root-wrapper.ag-layout-print .ag-virtual-list-viewport {\n height: auto !important;\n overflow: hidden !important;\n display: block !important;\n }\n .ag-root-wrapper.ag-layout-print .ag-row, .ag-root-wrapper.ag-layout-print .ag-cell {\n -moz-column-break-inside: avoid;\n break-inside: avoid;\n }\n}\n[class^=ag-], [class^=ag-]:focus, [class^=ag-]:after, [class^=ag-]:before {\n box-sizing: border-box;\n outline: none;\n}\n\n[class^=ag-]::-ms-clear {\n display: none;\n}\n\n.ag-checkbox .ag-input-wrapper,\n.ag-radio-button .ag-input-wrapper {\n overflow: visible;\n}\n\n.ag-range-field .ag-input-wrapper {\n height: 100%;\n}\n\n.ag-toggle-button {\n flex: none;\n width: unset;\n min-width: unset;\n}\n\n.ag-button {\n border-radius: 0px;\n color: var(--ag-foreground-color);\n}\n\n.ag-button:hover {\n background-color: transparent;\n}\n\n.ag-ltr .ag-label-align-right .ag-label {\n margin-left: var(--ag-grid-size);\n}\n.ag-rtl .ag-label-align-right .ag-label {\n margin-right: var(--ag-grid-size);\n}\n\ninput[class^=ag-] {\n margin: 0;\n background-color: var(--ag-background-color);\n}\n\ntextarea[class^=ag-],\nselect[class^=ag-] {\n background-color: var(--ag-background-color);\n}\n\ninput[class^=ag-]:not([type]),\ninput[class^=ag-][type=text],\ninput[class^=ag-][type=number],\ninput[class^=ag-][type=tel],\ninput[class^=ag-][type=date],\ninput[class^=ag-][type=datetime-local],\ntextarea[class^=ag-] {\n font-size: inherit;\n line-height: inherit;\n color: inherit;\n font-family: inherit;\n border: var(--ag-borders-input) var(--ag-input-border-color);\n}\ninput[class^=ag-]:not([type]):disabled,\ninput[class^=ag-][type=text]:disabled,\ninput[class^=ag-][type=number]:disabled,\ninput[class^=ag-][type=tel]:disabled,\ninput[class^=ag-][type=date]:disabled,\ninput[class^=ag-][type=datetime-local]:disabled,\ntextarea[class^=ag-]:disabled {\n color: var(--ag-disabled-foreground-color);\n background-color: var(--ag-input-disabled-background-color);\n border-color: var(--ag-input-disabled-border-color);\n}\ninput[class^=ag-]:not([type]):focus,\ninput[class^=ag-][type=text]:focus,\ninput[class^=ag-][type=number]:focus,\ninput[class^=ag-][type=tel]:focus,\ninput[class^=ag-][type=date]:focus,\ninput[class^=ag-][type=datetime-local]:focus,\ntextarea[class^=ag-]:focus {\n outline: none;\n box-shadow: var(--ag-input-focus-box-shadow);\n border-color: var(--ag-input-focus-border-color);\n}\ninput[class^=ag-]:not([type]):invalid,\ninput[class^=ag-][type=text]:invalid,\ninput[class^=ag-][type=number]:invalid,\ninput[class^=ag-][type=tel]:invalid,\ninput[class^=ag-][type=date]:invalid,\ninput[class^=ag-][type=datetime-local]:invalid,\ntextarea[class^=ag-]:invalid {\n border: var(--ag-borders-input-invalid) var(--ag-input-border-color-invalid);\n}\n\ninput[class^=ag-][type=number]:not(.ag-number-field-input-stepper) {\n -moz-appearance: textfield;\n}\ninput[class^=ag-][type=number]:not(.ag-number-field-input-stepper)::-webkit-outer-spin-button, input[class^=ag-][type=number]:not(.ag-number-field-input-stepper)::-webkit-inner-spin-button {\n -webkit-appearance: none;\n margin: 0;\n}\n\ninput[class^=ag-][type=range] {\n padding: 0;\n}\n\ninput[class^=ag-][type=button]:focus, button[class^=ag-]:focus {\n box-shadow: var(--ag-input-focus-box-shadow);\n}\n\n.ag-drag-handle {\n color: var(--ag-secondary-foreground-color);\n}\n\n.ag-list-item, .ag-virtual-list-item {\n height: var(--ag-list-item-height);\n}\n\n.ag-virtual-list-item:focus-visible {\n outline: none;\n}\n.ag-virtual-list-item:focus-visible::after {\n content: "";\n position: absolute;\n background-color: transparent;\n pointer-events: none;\n top: 4px;\n left: 4px;\n display: block;\n width: calc(100% - 8px);\n height: calc(100% - 8px);\n border: 1px solid;\n border-color: var(--ag-input-focus-border-color);\n}\n\n.ag-select-list {\n background-color: var(--ag-background-color);\n overflow-y: auto;\n overflow-x: hidden;\n border-radius: var(--ag-border-radius);\n border: var(--ag-borders) var(--ag-border-color);\n}\n\n.ag-list-item {\n display: flex;\n align-items: center;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.ag-list-item.ag-active-item {\n background-color: var(--ag-row-hover-color);\n}\n\n.ag-select-list-item {\n -moz-user-select: none;\n -webkit-user-select: none;\n user-select: none;\n cursor: default;\n}\n.ag-ltr .ag-select-list-item {\n padding-left: calc(var(--ag-cell-horizontal-padding) / 2);\n}\n.ag-rtl .ag-select-list-item {\n padding-right: calc(var(--ag-cell-horizontal-padding) / 2);\n}\n.ag-select-list-item span {\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n}\n\n.ag-row-drag,\n.ag-selection-checkbox,\n.ag-group-expanded,\n.ag-group-contracted {\n color: var(--ag-secondary-foreground-color);\n}\n.ag-ltr .ag-row-drag,\n.ag-ltr .ag-selection-checkbox,\n.ag-ltr .ag-group-expanded,\n.ag-ltr .ag-group-contracted {\n margin-right: var(--ag-cell-widget-spacing);\n}\n.ag-rtl .ag-row-drag,\n.ag-rtl .ag-selection-checkbox,\n.ag-rtl .ag-group-expanded,\n.ag-rtl .ag-group-contracted {\n margin-left: var(--ag-cell-widget-spacing);\n}\n\n.ag-cell-wrapper > *:not(.ag-cell-value):not(.ag-group-value) {\n --ag-internal-calculated-line-height: var(--ag-line-height, calc(var(--ag-row-height) - var(--ag-row-border-width)));\n --ag-internal-padded-row-height: calc(var(--ag-row-height) - var(--ag-row-border-width));\n height: min(var(--ag-internal-calculated-line-height), var(--ag-internal-padded-row-height));\n display: flex;\n align-items: center;\n flex: none;\n}\n\n.ag-group-expanded,\n.ag-group-contracted {\n cursor: pointer;\n}\n\n.ag-group-title-bar-icon {\n cursor: pointer;\n flex: none;\n color: var(--ag-secondary-foreground-color);\n}\n\n.ag-ltr .ag-group-child-count {\n margin-left: 2px;\n}\n.ag-rtl .ag-group-child-count {\n margin-right: 2px;\n}\n\n.ag-group-title-bar {\n background-color: var(--ag-subheader-background-color);\n padding: var(--ag-grid-size);\n}\n\n.ag-group-toolbar {\n padding: var(--ag-grid-size);\n background-color: var(--ag-subheader-toolbar-background-color);\n}\n\n.ag-disabled-group-title-bar, .ag-disabled-group-container {\n opacity: 0.5;\n}\n\n.group-item {\n margin: calc(var(--ag-grid-size) * 0.5) 0;\n}\n\n.ag-label {\n white-space: nowrap;\n}\n.ag-ltr .ag-label {\n margin-right: var(--ag-grid-size);\n}\n.ag-rtl .ag-label {\n margin-left: var(--ag-grid-size);\n}\n\n.ag-label-align-top .ag-label {\n margin-bottom: calc(var(--ag-grid-size) * 0.5);\n}\n\n.ag-angle-select[disabled] {\n color: var(--ag-disabled-foreground-color);\n pointer-events: none;\n}\n.ag-angle-select[disabled] .ag-angle-select-field {\n opacity: 0.4;\n}\n\n.ag-ltr .ag-slider-field,\n.ag-ltr .ag-angle-select-field {\n margin-right: calc(var(--ag-grid-size) * 2);\n}\n.ag-rtl .ag-slider-field,\n.ag-rtl .ag-angle-select-field {\n margin-left: calc(var(--ag-grid-size) * 2);\n}\n\n.ag-angle-select-parent-circle {\n width: 24px;\n height: 24px;\n border-radius: 12px;\n border: solid 1px;\n border-color: var(--ag-border-color);\n background-color: var(--ag-background-color);\n}\n\n.ag-angle-select-child-circle {\n top: 4px;\n left: 12px;\n width: 6px;\n height: 6px;\n margin-left: -3px;\n margin-top: -4px;\n border-radius: 3px;\n background-color: var(--ag-secondary-foreground-color);\n}\n\n.ag-picker-field-wrapper {\n border: var(--ag-borders);\n border-color: var(--ag-border-color);\n border-radius: 5px;\n background-color: var(--ag-background-color);\n}\n.ag-picker-field-wrapper:disabled {\n color: var(--ag-disabled-foreground-color);\n background-color: var(--ag-input-disabled-background-color);\n border-color: var(--ag-input-disabled-border-color);\n}\n.ag-picker-field-wrapper.ag-picker-has-focus, .ag-picker-field-wrapper:focus-within {\n outline: none;\n box-shadow: var(--ag-input-focus-box-shadow);\n border-color: var(--ag-input-focus-border-color);\n}\n\n.ag-picker-field-button {\n background-color: var(--ag-background-color);\n color: var(--ag-secondary-foreground-color);\n}\n\n.ag-dialog.ag-color-dialog {\n border-radius: 5px;\n}\n\n.ag-color-picker .ag-picker-field-display {\n height: var(--ag-icon-size);\n}\n\n.ag-color-picker .ag-picker-field-wrapper {\n max-width: 45px;\n min-width: 45px;\n}\n\n.ag-color-panel {\n padding: var(--ag-grid-size);\n}\n\n.ag-spectrum-color {\n background-color: rgb(255, 0, 0);\n border-radius: 2px;\n}\n\n.ag-spectrum-tools {\n padding: 10px;\n}\n\n.ag-spectrum-sat {\n background-image: linear-gradient(to right, white, rgba(204, 154, 129, 0));\n}\n\n.ag-spectrum-val {\n background-image: linear-gradient(to top, black, rgba(204, 154, 129, 0));\n}\n\n.ag-spectrum-dragger {\n border-radius: 12px;\n height: 12px;\n width: 12px;\n border: 1px solid white;\n background: black;\n box-shadow: 0 0 2px 0px rgba(0, 0, 0, 0.24);\n}\n\n.ag-spectrum-hue-background {\n border-radius: 2px;\n}\n\n.ag-spectrum-alpha-background {\n border-radius: 2px;\n}\n\n.ag-spectrum-tool {\n margin-bottom: 10px;\n height: 11px;\n border-radius: 2px;\n}\n\n.ag-spectrum-slider {\n margin-top: -12px;\n width: 13px;\n height: 13px;\n border-radius: 13px;\n background-color: rgb(248, 248, 248);\n box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.37);\n}\n\n.ag-recent-color {\n margin: 0 3px;\n}\n.ag-recent-color:first-child {\n margin-left: 0;\n}\n.ag-recent-color:last-child {\n margin-right: 0;\n}\n\n.ag-spectrum-color:focus-visible:not(:disabled):not([readonly]),\n.ag-spectrum-slider:focus-visible:not(:disabled):not([readonly]),\n.ag-recent-color:focus-visible:not(:disabled):not([readonly]) {\n box-shadow: var(--ag-input-focus-box-shadow);\n}\n\n.ag-dnd-ghost {\n border: var(--ag-borders) var(--ag-border-color);\n background: var(--ag-background-color);\n border-radius: var(--ag-card-radius);\n box-shadow: var(--ag-card-shadow);\n padding: var(--ag-grid-size);\n overflow: hidden;\n text-overflow: ellipsis;\n border: var(--ag-borders-secondary) var(--ag-secondary-border-color);\n color: var(--ag-secondary-foreground-color);\n height: var(--ag-header-height) !important;\n line-height: var(--ag-header-height);\n margin: 0;\n padding: 0 calc(var(--ag-grid-size) * 2);\n transform: translateY(calc(var(--ag-grid-size) * 2));\n}\n\n.ag-dnd-ghost-icon {\n margin-right: var(--ag-grid-size);\n color: var(--ag-foreground-color);\n}\n\n.ag-popup-child:not(.ag-tooltip-custom) {\n box-shadow: var(--ag-popup-shadow);\n}\n\n.ag-select .ag-picker-field-wrapper {\n min-height: var(--ag-list-item-height);\n cursor: default;\n}\n.ag-ltr .ag-select .ag-picker-field-wrapper {\n padding-left: calc(var(--ag-cell-horizontal-padding) / 2);\n}\n.ag-rtl .ag-select .ag-picker-field-wrapper {\n padding-right: calc(var(--ag-cell-horizontal-padding) / 2);\n}\n.ag-ltr .ag-select .ag-picker-field-wrapper {\n padding-right: var(--ag-grid-size);\n}\n.ag-rtl .ag-select .ag-picker-field-wrapper {\n padding-left: var(--ag-grid-size);\n}\n.ag-select.ag-disabled .ag-picker-field-wrapper:focus {\n box-shadow: none;\n}\n.ag-select:not(.ag-cell-editor, .ag-label-align-top) {\n min-height: var(--ag-list-item-height);\n}\n.ag-select .ag-picker-field-display {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.ag-select .ag-picker-field-icon {\n display: flex;\n align-items: center;\n}\n.ag-select.ag-disabled {\n opacity: 0.5;\n}\n\n.ag-rich-select-value,\n.ag-rich-select-list {\n background-color: var(--ag-background-color);\n}\n\n.ag-rich-select-list {\n width: 100%;\n height: auto;\n border-radius: var(--ag-border-radius);\n border: var(--ag-borders) var(--ag-border-color);\n}\n.ag-rich-select-list .ag-loading-text {\n padding: var(--ag-widget-vertical-spacing) var(--ag-widget-horizontal-spacing);\n}\n\n.ag-rich-select-value {\n border-bottom: var(--ag-borders-secondary) var(--ag-secondary-border-color);\n padding-top: 0;\n padding-bottom: 0;\n}\n.ag-ltr .ag-rich-select-value {\n padding-left: calc(var(--ag-cell-horizontal-padding) / 2);\n}\n.ag-rtl .ag-rich-select-value {\n padding-right: calc(var(--ag-cell-horizontal-padding) / 2);\n}\n.ag-ltr .ag-rich-select-value {\n padding-right: var(--ag-grid-size);\n}\n.ag-rtl .ag-rich-select-value {\n padding-left: var(--ag-grid-size);\n}\n\n.ag-ltr .ag-rich-select-field-input {\n left: calc(var(--ag-cell-horizontal-padding));\n}\n.ag-rtl .ag-rich-select-field-input {\n right: calc(var(--ag-cell-horizontal-padding));\n}\n\n.ag-popup-editor .ag-rich-select-value {\n height: var(--ag-row-height);\n min-width: 200px;\n}\n\n.ag-rich-select-virtual-list-item {\n cursor: default;\n height: var(--ag-list-item-height);\n}\n.ag-rich-select-virtual-list-item:focus-visible::after {\n content: none;\n}\n.ag-rich-select-virtual-list-item:hover {\n background-color: var(--ag-row-hover-color);\n}\n\n.ag-ltr .ag-rich-select-row {\n padding-left: calc(var(--ag-cell-horizontal-padding) / 2);\n}\n.ag-rtl .ag-rich-select-row {\n padding-right: calc(var(--ag-cell-horizontal-padding) / 2);\n}\n\n.ag-rich-select-row-selected {\n background-color: var(--ag-selected-row-background-color);\n}\n\n.ag-rich-select-row-text-highlight {\n font-weight: bold;\n}\n\n.ag-autocomplete {\n width: 100%;\n}\n\n.ag-autocomplete-list {\n width: 100%;\n min-width: 200px;\n height: calc(var(--ag-row-height) * 6.5);\n}\n\n.ag-autocomplete-virtual-list-item {\n cursor: default;\n height: var(--ag-list-item-height);\n}\n.ag-autocomplete-virtual-list-item:focus-visible::after {\n content: none;\n}\n.ag-autocomplete-virtual-list-item:hover {\n background-color: var(--ag-row-hover-color);\n}\n\n.ag-autocomplete-row-label {\n margin: 0px var(--ag-widget-container-horizontal-padding);\n}\n\n.ag-autocomplete-row-selected {\n background-color: var(--ag-selected-row-background-color);\n}\n\n.ag-dragging-range-handle .ag-dialog,\n.ag-dragging-fill-handle .ag-dialog {\n opacity: 0.7;\n pointer-events: none;\n}\n\n.ag-dialog {\n border-radius: var(--ag-border-radius);\n border: var(--ag-borders) var(--ag-border-color);\n box-shadow: var(--ag-popup-shadow);\n}\n\n.ag-panel {\n background-color: var(--ag-panel-background-color);\n border-color: var(--ag-panel-border-color);\n}\n\n.ag-panel-title-bar {\n color: var(--ag-header-foreground-color);\n height: var(--ag-header-height);\n padding: var(--ag-grid-size) var(--ag-cell-horizontal-padding);\n border-bottom: var(--ag-borders) var(--ag-border-color);\n}\n\n.ag-ltr .ag-panel-title-bar-button {\n margin-left: var(--ag-grid-size);\n}\n.ag-rtl .ag-panel-title-bar-button {\n margin-right: var(--ag-grid-size);\n}\n\n.ag-tooltip {\n background-color: var(--ag-tooltip-background-color);\n color: var(--ag-foreground-color);\n padding: var(--ag-grid-size);\n border: var(--ag-borders) var(--ag-border-color);\n border-radius: var(--ag-card-radius);\n white-space: normal;\n}\n\n.ag-tooltip.ag-tooltip-animate,\n.ag-tooltip-custom.ag-tooltip-animate {\n transition: opacity 1s;\n}\n.ag-tooltip.ag-tooltip-animate.ag-tooltip-hiding,\n.ag-tooltip-custom.ag-tooltip-animate.ag-tooltip-hiding {\n opacity: 0;\n}\n\n.ag-ltr .ag-column-select-indent-1 {\n padding-left: calc(1 * var(--ag-column-select-indent-size));\n}\n.ag-rtl .ag-column-select-indent-1 {\n padding-right: calc(1 * var(--ag-column-select-indent-size));\n}\n\n.ag-ltr .ag-column-select-indent-2 {\n padding-left: calc(2 * var(--ag-column-select-indent-size));\n}\n.ag-rtl .ag-column-select-indent-2 {\n padding-right: calc(2 * var(--ag-column-select-indent-size));\n}\n\n.ag-ltr .ag-column-select-indent-3 {\n padding-left: calc(3 * var(--ag-column-select-indent-size));\n}\n.ag-rtl .ag-column-select-indent-3 {\n padding-right: calc(3 * var(--ag-column-select-indent-size));\n}\n\n.ag-ltr .ag-column-select-indent-4 {\n padding-left: calc(4 * var(--ag-column-select-indent-size));\n}\n.ag-rtl .ag-column-select-indent-4 {\n padding-right: calc(4 * var(--ag-column-select-indent-size));\n}\n\n.ag-ltr .ag-column-select-indent-5 {\n padding-left: calc(5 * var(--ag-column-select-indent-size));\n}\n.ag-rtl .ag-column-select-indent-5 {\n padding-right: calc(5 * var(--ag-column-select-indent-size));\n}\n\n.ag-ltr .ag-column-select-indent-6 {\n padding-left: calc(6 * var(--ag-column-select-indent-size));\n}\n.ag-rtl .ag-column-select-indent-6 {\n padding-right: calc(6 * var(--ag-column-select-indent-size));\n}\n\n.ag-ltr .ag-column-select-indent-7 {\n padding-left: calc(7 * var(--ag-column-select-indent-size));\n}\n.ag-rtl .ag-column-select-indent-7 {\n padding-right: calc(7 * var(--ag-column-select-indent-size));\n}\n\n.ag-ltr .ag-column-select-indent-8 {\n padding-left: calc(8 * var(--ag-column-select-indent-size));\n}\n.ag-rtl .ag-column-select-indent-8 {\n padding-right: calc(8 * var(--ag-column-select-indent-size));\n}\n\n.ag-ltr .ag-column-select-indent-9 {\n padding-left: calc(9 * var(--ag-column-select-indent-size));\n}\n.ag-rtl .ag-column-select-indent-9 {\n padding-right: calc(9 * var(--ag-column-select-indent-size));\n}\n\n.ag-column-select-header-icon {\n cursor: pointer;\n}\n\n.ag-column-select-header-icon:focus-visible {\n outline: none;\n}\n.ag-column-select-header-icon:focus-visible::after {\n content: "";\n position: absolute;\n background-color: transparent;\n pointer-events: none;\n top: 0px;\n left: 0px;\n display: block;\n width: calc(100% - 0px);\n height: calc(100% - 0px);\n border: 1px solid;\n border-color: var(--ag-input-focus-border-color);\n}\n\n.ag-ltr .ag-column-group-icons:not(:last-child),\n.ag-ltr .ag-column-select-header-icon:not(:last-child),\n.ag-ltr .ag-column-select-header-checkbox:not(:last-child),\n.ag-ltr .ag-column-select-header-filter-wrapper:not(:last-child),\n.ag-ltr .ag-column-select-checkbox:not(:last-child),\n.ag-ltr .ag-column-select-column-drag-handle:not(:last-child),\n.ag-ltr .ag-column-select-column-group-drag-handle:not(:last-child),\n.ag-ltr .ag-column-select-column-label:not(:last-child) {\n margin-right: var(--ag-widget-horizontal-spacing);\n}\n.ag-rtl .ag-column-group-icons:not(:last-child),\n.ag-rtl .ag-column-select-header-icon:not(:last-child),\n.ag-rtl .ag-column-select-header-checkbox:not(:last-child),\n.ag-rtl .ag-column-select-header-filter-wrapper:not(:last-child),\n.ag-rtl .ag-column-select-checkbox:not(:last-child),\n.ag-rtl .ag-column-select-column-drag-handle:not(:last-child),\n.ag-rtl .ag-column-select-column-group-drag-handle:not(:last-child),\n.ag-rtl .ag-column-select-column-label:not(:last-child) {\n margin-left: var(--ag-widget-horizontal-spacing);\n}\n\n.ag-column-select-virtual-list-item:focus-visible {\n outline: none;\n}\n.ag-column-select-virtual-list-item:focus-visible::after {\n content: "";\n position: absolute;\n background-color: transparent;\n pointer-events: none;\n top: 1px;\n left: 1px;\n display: block;\n width: calc(100% - 2px);\n height: calc(100% - 2px);\n border: 1px solid;\n border-color: var(--ag-input-focus-border-color);\n}\n\n.ag-column-select-column-group:not(:last-child),\n.ag-column-select-column:not(:last-child) {\n margin-bottom: var(--ag-widget-vertical-spacing);\n}\n\n.ag-column-select-column-readonly,\n.ag-column-select-column-group-readonly {\n color: var(--ag-disabled-foreground-color);\n pointer-events: none;\n}\n\n.ag-ltr .ag-column-select-add-group-indent {\n margin-left: calc(var(--ag-icon-size) + var(--ag-grid-size) * 2);\n}\n.ag-rtl .ag-column-select-add-group-indent {\n margin-right: calc(var(--ag-icon-size) + var(--ag-grid-size) * 2);\n}\n\n.ag-column-select-virtual-list-viewport {\n padding: calc(var(--ag-widget-container-vertical-padding) * 0.5) 0px;\n}\n\n.ag-column-select-virtual-list-item {\n padding: 0 var(--ag-widget-container-horizontal-padding);\n}\n\n.ag-checkbox-edit {\n padding-left: var(--ag-cell-horizontal-padding);\n padding-right: var(--ag-cell-horizontal-padding);\n}\n\n.ag-pill-select .ag-column-drop {\n border-bottom: 0;\n min-height: unset;\n}\n.ag-pill-select .ag-column-drop-list {\n padding: 0;\n}\n.ag-pill-select .ag-select {\n padding-top: var(--ag-grid-size);\n}\n.ag-pill-select .ag-picker-field-wrapper {\n background-color: transparent;\n border: 0;\n}\n.ag-pill-select .ag-picker-field-display {\n cursor: pointer;\n}\n\n.ag-rtl {\n text-align: right;\n}\n\n.ag-root-wrapper {\n border-radius: var(--ag-wrapper-border-radius);\n border: var(--ag-borders) var(--ag-border-color);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-1 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 1);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-1 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 1);\n}\n\n.ag-ltr .ag-row-group-indent-1 {\n padding-left: calc(1 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-1 {\n padding-right: calc(1 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-1 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-1 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-2 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 2);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-2 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 2);\n}\n\n.ag-ltr .ag-row-group-indent-2 {\n padding-left: calc(2 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-2 {\n padding-right: calc(2 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-2 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-2 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-3 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 3);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-3 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 3);\n}\n\n.ag-ltr .ag-row-group-indent-3 {\n padding-left: calc(3 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-3 {\n padding-right: calc(3 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-3 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-3 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-4 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 4);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-4 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 4);\n}\n\n.ag-ltr .ag-row-group-indent-4 {\n padding-left: calc(4 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-4 {\n padding-right: calc(4 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-4 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-4 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-5 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 5);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-5 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 5);\n}\n\n.ag-ltr .ag-row-group-indent-5 {\n padding-left: calc(5 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-5 {\n padding-right: calc(5 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-5 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-5 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-6 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 6);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-6 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 6);\n}\n\n.ag-ltr .ag-row-group-indent-6 {\n padding-left: calc(6 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-6 {\n padding-right: calc(6 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-6 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-6 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-7 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 7);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-7 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 7);\n}\n\n.ag-ltr .ag-row-group-indent-7 {\n padding-left: calc(7 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-7 {\n padding-right: calc(7 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-7 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-7 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-8 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 8);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-8 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 8);\n}\n\n.ag-ltr .ag-row-group-indent-8 {\n padding-left: calc(8 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-8 {\n padding-right: calc(8 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-8 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-8 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-9 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 9);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-9 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 9);\n}\n\n.ag-ltr .ag-row-group-indent-9 {\n padding-left: calc(9 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-9 {\n padding-right: calc(9 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-9 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-9 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-10 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 10);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-10 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 10);\n}\n\n.ag-ltr .ag-row-group-indent-10 {\n padding-left: calc(10 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-10 {\n padding-right: calc(10 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-10 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-10 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-11 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 11);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-11 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 11);\n}\n\n.ag-ltr .ag-row-group-indent-11 {\n padding-left: calc(11 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-11 {\n padding-right: calc(11 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-11 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-11 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-12 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 12);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-12 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 12);\n}\n\n.ag-ltr .ag-row-group-indent-12 {\n padding-left: calc(12 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-12 {\n padding-right: calc(12 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-12 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-12 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-13 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 13);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-13 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 13);\n}\n\n.ag-ltr .ag-row-group-indent-13 {\n padding-left: calc(13 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-13 {\n padding-right: calc(13 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-13 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-13 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-14 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 14);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-14 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 14);\n}\n\n.ag-ltr .ag-row-group-indent-14 {\n padding-left: calc(14 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-14 {\n padding-right: calc(14 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-14 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-14 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-15 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 15);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-15 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 15);\n}\n\n.ag-ltr .ag-row-group-indent-15 {\n padding-left: calc(15 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-15 {\n padding-right: calc(15 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-15 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-15 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-16 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 16);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-16 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 16);\n}\n\n.ag-ltr .ag-row-group-indent-16 {\n padding-left: calc(16 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-16 {\n padding-right: calc(16 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-16 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-16 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-17 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 17);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-17 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 17);\n}\n\n.ag-ltr .ag-row-group-indent-17 {\n padding-left: calc(17 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-17 {\n padding-right: calc(17 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-17 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-17 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-18 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 18);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-18 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 18);\n}\n\n.ag-ltr .ag-row-group-indent-18 {\n padding-left: calc(18 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-18 {\n padding-right: calc(18 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-18 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-18 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-19 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 19);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-19 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 19);\n}\n\n.ag-ltr .ag-row-group-indent-19 {\n padding-left: calc(19 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-19 {\n padding-right: calc(19 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-19 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-19 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-20 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 20);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-20 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 20);\n}\n\n.ag-ltr .ag-row-group-indent-20 {\n padding-left: calc(20 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-20 {\n padding-right: calc(20 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-20 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-20 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-21 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 21);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-21 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 21);\n}\n\n.ag-ltr .ag-row-group-indent-21 {\n padding-left: calc(21 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-21 {\n padding-right: calc(21 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-21 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-21 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-22 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 22);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-22 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 22);\n}\n\n.ag-ltr .ag-row-group-indent-22 {\n padding-left: calc(22 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-22 {\n padding-right: calc(22 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-22 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-22 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-23 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 23);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-23 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 23);\n}\n\n.ag-ltr .ag-row-group-indent-23 {\n padding-left: calc(23 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-23 {\n padding-right: calc(23 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-23 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-23 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-24 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 24);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-24 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 24);\n}\n\n.ag-ltr .ag-row-group-indent-24 {\n padding-left: calc(24 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-24 {\n padding-right: calc(24 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-24 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-24 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-25 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 25);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-25 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 25);\n}\n\n.ag-ltr .ag-row-group-indent-25 {\n padding-left: calc(25 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-25 {\n padding-right: calc(25 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-25 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-25 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-26 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 26);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-26 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 26);\n}\n\n.ag-ltr .ag-row-group-indent-26 {\n padding-left: calc(26 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-26 {\n padding-right: calc(26 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-26 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-26 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-27 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 27);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-27 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 27);\n}\n\n.ag-ltr .ag-row-group-indent-27 {\n padding-left: calc(27 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-27 {\n padding-right: calc(27 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-27 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-27 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-28 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 28);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-28 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 28);\n}\n\n.ag-ltr .ag-row-group-indent-28 {\n padding-left: calc(28 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-28 {\n padding-right: calc(28 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-28 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-28 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-29 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 29);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-29 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 29);\n}\n\n.ag-ltr .ag-row-group-indent-29 {\n padding-left: calc(29 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-29 {\n padding-right: calc(29 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-29 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-29 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-30 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 30);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-30 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 30);\n}\n\n.ag-ltr .ag-row-group-indent-30 {\n padding-left: calc(30 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-30 {\n padding-right: calc(30 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-30 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-30 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-31 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 31);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-31 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 31);\n}\n\n.ag-ltr .ag-row-group-indent-31 {\n padding-left: calc(31 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-31 {\n padding-right: calc(31 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-31 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-31 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-32 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 32);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-32 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 32);\n}\n\n.ag-ltr .ag-row-group-indent-32 {\n padding-left: calc(32 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-32 {\n padding-right: calc(32 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-32 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-32 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-33 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 33);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-33 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 33);\n}\n\n.ag-ltr .ag-row-group-indent-33 {\n padding-left: calc(33 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-33 {\n padding-right: calc(33 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-33 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-33 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-34 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 34);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-34 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 34);\n}\n\n.ag-ltr .ag-row-group-indent-34 {\n padding-left: calc(34 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-34 {\n padding-right: calc(34 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-34 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-34 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-35 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 35);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-35 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 35);\n}\n\n.ag-ltr .ag-row-group-indent-35 {\n padding-left: calc(35 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-35 {\n padding-right: calc(35 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-35 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-35 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-36 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 36);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-36 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 36);\n}\n\n.ag-ltr .ag-row-group-indent-36 {\n padding-left: calc(36 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-36 {\n padding-right: calc(36 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-36 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-36 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-37 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 37);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-37 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 37);\n}\n\n.ag-ltr .ag-row-group-indent-37 {\n padding-left: calc(37 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-37 {\n padding-right: calc(37 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-37 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-37 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-38 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 38);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-38 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 38);\n}\n\n.ag-ltr .ag-row-group-indent-38 {\n padding-left: calc(38 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-38 {\n padding-right: calc(38 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-38 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-38 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-39 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 39);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-39 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 39);\n}\n\n.ag-ltr .ag-row-group-indent-39 {\n padding-left: calc(39 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-39 {\n padding-right: calc(39 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-39 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-39 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-40 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 40);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-40 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 40);\n}\n\n.ag-ltr .ag-row-group-indent-40 {\n padding-left: calc(40 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-40 {\n padding-right: calc(40 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-40 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-40 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-41 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 41);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-41 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 41);\n}\n\n.ag-ltr .ag-row-group-indent-41 {\n padding-left: calc(41 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-41 {\n padding-right: calc(41 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-41 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-41 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-42 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 42);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-42 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 42);\n}\n\n.ag-ltr .ag-row-group-indent-42 {\n padding-left: calc(42 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-42 {\n padding-right: calc(42 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-42 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-42 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-43 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 43);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-43 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 43);\n}\n\n.ag-ltr .ag-row-group-indent-43 {\n padding-left: calc(43 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-43 {\n padding-right: calc(43 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-43 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-43 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-44 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 44);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-44 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 44);\n}\n\n.ag-ltr .ag-row-group-indent-44 {\n padding-left: calc(44 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-44 {\n padding-right: calc(44 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-44 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-44 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-45 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 45);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-45 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 45);\n}\n\n.ag-ltr .ag-row-group-indent-45 {\n padding-left: calc(45 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-45 {\n padding-right: calc(45 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-45 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-45 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-46 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 46);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-46 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 46);\n}\n\n.ag-ltr .ag-row-group-indent-46 {\n padding-left: calc(46 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-46 {\n padding-right: calc(46 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-46 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-46 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-47 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 47);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-47 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 47);\n}\n\n.ag-ltr .ag-row-group-indent-47 {\n padding-left: calc(47 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-47 {\n padding-right: calc(47 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-47 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-47 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-48 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 48);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-48 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 48);\n}\n\n.ag-ltr .ag-row-group-indent-48 {\n padding-left: calc(48 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-48 {\n padding-right: calc(48 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-48 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-48 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-49 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 49);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-49 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 49);\n}\n\n.ag-ltr .ag-row-group-indent-49 {\n padding-left: calc(49 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-49 {\n padding-right: calc(49 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-49 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-49 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-50 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 50);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-50 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 50);\n}\n\n.ag-ltr .ag-row-group-indent-50 {\n padding-left: calc(50 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-50 {\n padding-right: calc(50 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-50 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-50 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-51 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 51);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-51 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 51);\n}\n\n.ag-ltr .ag-row-group-indent-51 {\n padding-left: calc(51 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-51 {\n padding-right: calc(51 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-51 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-51 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-52 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 52);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-52 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 52);\n}\n\n.ag-ltr .ag-row-group-indent-52 {\n padding-left: calc(52 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-52 {\n padding-right: calc(52 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-52 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-52 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-53 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 53);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-53 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 53);\n}\n\n.ag-ltr .ag-row-group-indent-53 {\n padding-left: calc(53 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-53 {\n padding-right: calc(53 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-53 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-53 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-54 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 54);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-54 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 54);\n}\n\n.ag-ltr .ag-row-group-indent-54 {\n padding-left: calc(54 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-54 {\n padding-right: calc(54 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-54 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-54 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-55 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 55);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-55 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 55);\n}\n\n.ag-ltr .ag-row-group-indent-55 {\n padding-left: calc(55 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-55 {\n padding-right: calc(55 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-55 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-55 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-56 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 56);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-56 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 56);\n}\n\n.ag-ltr .ag-row-group-indent-56 {\n padding-left: calc(56 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-56 {\n padding-right: calc(56 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-56 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-56 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-57 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 57);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-57 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 57);\n}\n\n.ag-ltr .ag-row-group-indent-57 {\n padding-left: calc(57 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-57 {\n padding-right: calc(57 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-57 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-57 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-58 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 58);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-58 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 58);\n}\n\n.ag-ltr .ag-row-group-indent-58 {\n padding-left: calc(58 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-58 {\n padding-right: calc(58 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-58 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-58 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-59 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 59);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-59 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 59);\n}\n\n.ag-ltr .ag-row-group-indent-59 {\n padding-left: calc(59 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-59 {\n padding-right: calc(59 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-59 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-59 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-60 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 60);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-60 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 60);\n}\n\n.ag-ltr .ag-row-group-indent-60 {\n padding-left: calc(60 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-60 {\n padding-right: calc(60 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-60 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-60 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-61 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 61);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-61 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 61);\n}\n\n.ag-ltr .ag-row-group-indent-61 {\n padding-left: calc(61 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-61 {\n padding-right: calc(61 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-61 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-61 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-62 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 62);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-62 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 62);\n}\n\n.ag-ltr .ag-row-group-indent-62 {\n padding-left: calc(62 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-62 {\n padding-right: calc(62 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-62 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-62 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-63 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 63);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-63 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 63);\n}\n\n.ag-ltr .ag-row-group-indent-63 {\n padding-left: calc(63 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-63 {\n padding-right: calc(63 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-63 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-63 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-64 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 64);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-64 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 64);\n}\n\n.ag-ltr .ag-row-group-indent-64 {\n padding-left: calc(64 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-64 {\n padding-right: calc(64 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-64 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-64 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-65 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 65);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-65 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 65);\n}\n\n.ag-ltr .ag-row-group-indent-65 {\n padding-left: calc(65 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-65 {\n padding-right: calc(65 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-65 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-65 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-66 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 66);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-66 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 66);\n}\n\n.ag-ltr .ag-row-group-indent-66 {\n padding-left: calc(66 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-66 {\n padding-right: calc(66 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-66 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-66 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-67 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 67);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-67 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 67);\n}\n\n.ag-ltr .ag-row-group-indent-67 {\n padding-left: calc(67 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-67 {\n padding-right: calc(67 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-67 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-67 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-68 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 68);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-68 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 68);\n}\n\n.ag-ltr .ag-row-group-indent-68 {\n padding-left: calc(68 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-68 {\n padding-right: calc(68 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-68 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-68 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-69 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 69);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-69 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 69);\n}\n\n.ag-ltr .ag-row-group-indent-69 {\n padding-left: calc(69 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-69 {\n padding-right: calc(69 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-69 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-69 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-70 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 70);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-70 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 70);\n}\n\n.ag-ltr .ag-row-group-indent-70 {\n padding-left: calc(70 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-70 {\n padding-right: calc(70 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-70 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-70 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-71 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 71);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-71 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 71);\n}\n\n.ag-ltr .ag-row-group-indent-71 {\n padding-left: calc(71 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-71 {\n padding-right: calc(71 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-71 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-71 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-72 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 72);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-72 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 72);\n}\n\n.ag-ltr .ag-row-group-indent-72 {\n padding-left: calc(72 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-72 {\n padding-right: calc(72 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-72 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-72 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-73 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 73);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-73 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 73);\n}\n\n.ag-ltr .ag-row-group-indent-73 {\n padding-left: calc(73 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-73 {\n padding-right: calc(73 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-73 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-73 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-74 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 74);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-74 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 74);\n}\n\n.ag-ltr .ag-row-group-indent-74 {\n padding-left: calc(74 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-74 {\n padding-right: calc(74 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-74 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-74 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-75 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 75);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-75 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 75);\n}\n\n.ag-ltr .ag-row-group-indent-75 {\n padding-left: calc(75 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-75 {\n padding-right: calc(75 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-75 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-75 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-76 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 76);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-76 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 76);\n}\n\n.ag-ltr .ag-row-group-indent-76 {\n padding-left: calc(76 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-76 {\n padding-right: calc(76 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-76 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-76 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-77 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 77);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-77 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 77);\n}\n\n.ag-ltr .ag-row-group-indent-77 {\n padding-left: calc(77 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-77 {\n padding-right: calc(77 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-77 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-77 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-78 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 78);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-78 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 78);\n}\n\n.ag-ltr .ag-row-group-indent-78 {\n padding-left: calc(78 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-78 {\n padding-right: calc(78 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-78 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-78 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-79 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 79);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-79 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 79);\n}\n\n.ag-ltr .ag-row-group-indent-79 {\n padding-left: calc(79 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-79 {\n padding-right: calc(79 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-79 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-79 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-80 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 80);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-80 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 80);\n}\n\n.ag-ltr .ag-row-group-indent-80 {\n padding-left: calc(80 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-80 {\n padding-right: calc(80 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-80 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-80 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-81 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 81);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-81 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 81);\n}\n\n.ag-ltr .ag-row-group-indent-81 {\n padding-left: calc(81 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-81 {\n padding-right: calc(81 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-81 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-81 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-82 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 82);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-82 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 82);\n}\n\n.ag-ltr .ag-row-group-indent-82 {\n padding-left: calc(82 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-82 {\n padding-right: calc(82 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-82 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-82 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-83 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 83);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-83 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 83);\n}\n\n.ag-ltr .ag-row-group-indent-83 {\n padding-left: calc(83 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-83 {\n padding-right: calc(83 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-83 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-83 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-84 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 84);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-84 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 84);\n}\n\n.ag-ltr .ag-row-group-indent-84 {\n padding-left: calc(84 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-84 {\n padding-right: calc(84 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-84 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-84 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-85 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 85);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-85 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 85);\n}\n\n.ag-ltr .ag-row-group-indent-85 {\n padding-left: calc(85 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-85 {\n padding-right: calc(85 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-85 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-85 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-86 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 86);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-86 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 86);\n}\n\n.ag-ltr .ag-row-group-indent-86 {\n padding-left: calc(86 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-86 {\n padding-right: calc(86 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-86 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-86 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-87 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 87);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-87 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 87);\n}\n\n.ag-ltr .ag-row-group-indent-87 {\n padding-left: calc(87 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-87 {\n padding-right: calc(87 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-87 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-87 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-88 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 88);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-88 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 88);\n}\n\n.ag-ltr .ag-row-group-indent-88 {\n padding-left: calc(88 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-88 {\n padding-right: calc(88 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-88 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-88 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-89 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 89);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-89 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 89);\n}\n\n.ag-ltr .ag-row-group-indent-89 {\n padding-left: calc(89 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-89 {\n padding-right: calc(89 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-89 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-89 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-90 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 90);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-90 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 90);\n}\n\n.ag-ltr .ag-row-group-indent-90 {\n padding-left: calc(90 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-90 {\n padding-right: calc(90 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-90 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-90 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-91 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 91);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-91 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 91);\n}\n\n.ag-ltr .ag-row-group-indent-91 {\n padding-left: calc(91 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-91 {\n padding-right: calc(91 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-91 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-91 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-92 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 92);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-92 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 92);\n}\n\n.ag-ltr .ag-row-group-indent-92 {\n padding-left: calc(92 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-92 {\n padding-right: calc(92 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-92 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-92 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-93 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 93);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-93 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 93);\n}\n\n.ag-ltr .ag-row-group-indent-93 {\n padding-left: calc(93 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-93 {\n padding-right: calc(93 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-93 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-93 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-94 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 94);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-94 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 94);\n}\n\n.ag-ltr .ag-row-group-indent-94 {\n padding-left: calc(94 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-94 {\n padding-right: calc(94 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-94 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-94 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-95 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 95);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-95 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 95);\n}\n\n.ag-ltr .ag-row-group-indent-95 {\n padding-left: calc(95 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-95 {\n padding-right: calc(95 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-95 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-95 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-96 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 96);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-96 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 96);\n}\n\n.ag-ltr .ag-row-group-indent-96 {\n padding-left: calc(96 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-96 {\n padding-right: calc(96 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-96 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-96 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-97 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 97);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-97 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 97);\n}\n\n.ag-ltr .ag-row-group-indent-97 {\n padding-left: calc(97 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-97 {\n padding-right: calc(97 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-97 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-97 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-98 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 98);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-98 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 98);\n}\n\n.ag-ltr .ag-row-group-indent-98 {\n padding-left: calc(98 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-98 {\n padding-right: calc(98 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-98 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-98 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row > .ag-cell-wrapper.ag-row-group-indent-99 {\n padding-left: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 99);\n}\n.ag-rtl .ag-row > .ag-cell-wrapper.ag-row-group-indent-99 {\n padding-right: calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size) * 99);\n}\n\n.ag-ltr .ag-row-group-indent-99 {\n padding-left: calc(99 * var(--ag-row-group-indent-size));\n}\n.ag-rtl .ag-row-group-indent-99 {\n padding-right: calc(99 * var(--ag-row-group-indent-size));\n}\n\n.ag-ltr .ag-row-level-99 .ag-pivot-leaf-group {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-level-99 .ag-pivot-leaf-group {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-ltr .ag-row-group-leaf-indent {\n margin-left: var(--ag-row-group-indent-size);\n}\n.ag-rtl .ag-row-group-leaf-indent {\n margin-right: var(--ag-row-group-indent-size);\n}\n\n.ag-value-change-delta {\n padding-right: 2px;\n}\n\n.ag-value-change-delta-up {\n color: var(--ag-value-change-delta-up-color);\n}\n\n.ag-value-change-delta-down {\n color: var(--ag-value-change-delta-down-color);\n}\n\n.ag-value-change-value {\n background-color: transparent;\n border-radius: 1px;\n padding-left: 1px;\n padding-right: 1px;\n transition: background-color 1s;\n}\n\n.ag-value-change-value-highlight {\n background-color: var(--ag-value-change-value-highlight-background-color);\n transition: background-color 0.1s;\n}\n\n.ag-cell-data-changed {\n background-color: var(--ag-value-change-value-highlight-background-color) !important;\n}\n\n.ag-cell-data-changed-animation {\n background-color: transparent;\n}\n\n.ag-cell-highlight {\n background-color: var(--ag-range-selection-highlight-color) !important;\n}\n\n.ag-row {\n height: var(--ag-row-height);\n background-color: var(--ag-background-color);\n color: var(--ag-data-color);\n border-bottom: var(--ag-row-border-style) var(--ag-row-border-color) var(--ag-row-border-width);\n}\n\n.ag-sticky-bottom .ag-row {\n border-bottom: none;\n border-top: var(--ag-row-border-style) var(--ag-row-border-color) var(--ag-row-border-width);\n}\n\n.ag-row-highlight-above::after, .ag-row-highlight-below::after {\n content: "";\n position: absolute;\n width: calc(100% - 1px);\n height: 1px;\n background-color: var(--ag-range-selection-border-color);\n left: 1px;\n}\n\n.ag-row-highlight-above::after {\n top: -1px;\n}\n\n.ag-row-highlight-above.ag-row-first::after {\n top: 0;\n}\n\n.ag-row-highlight-below::after {\n bottom: 0px;\n}\n\n.ag-row-odd {\n background-color: var(--ag-odd-row-background-color);\n}\n\n.ag-body-horizontal-scroll:not(.ag-scrollbar-invisible) .ag-horizontal-left-spacer:not(.ag-scroller-corner) {\n border-right: var(--ag-borders-critical) var(--ag-border-color);\n}\n.ag-body-horizontal-scroll:not(.ag-scrollbar-invisible) .ag-horizontal-right-spacer:not(.ag-scroller-corner) {\n border-left: var(--ag-borders-critical) var(--ag-border-color);\n}\n\n.ag-row-selected::before {\n content: "";\n background-color: var(--ag-selected-row-background-color);\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n}\n\n.ag-row-hover:not(.ag-full-width-row)::before,\n.ag-row-hover.ag-full-width-row.ag-row-group::before {\n content: "";\n background-color: var(--ag-row-hover-color);\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n pointer-events: none;\n}\n\n.ag-row-hover.ag-full-width-row.ag-row-group > * {\n position: relative;\n}\n\n.ag-row-hover.ag-row-selected::before {\n background-color: var(--ag-row-hover-color);\n background-image: linear-gradient(var(--ag-selected-row-background-color), var(--ag-selected-row-background-color));\n}\n\n.ag-column-hover {\n background-color: var(--ag-column-hover-color);\n}\n\n.ag-ltr .ag-right-aligned-cell {\n text-align: right;\n}\n.ag-rtl .ag-right-aligned-cell {\n text-align: left;\n}\n\n.ag-ltr .ag-right-aligned-cell .ag-cell-value,\n.ag-ltr .ag-right-aligned-cell .ag-group-value {\n margin-left: auto;\n}\n.ag-rtl .ag-right-aligned-cell .ag-cell-value,\n.ag-rtl .ag-right-aligned-cell .ag-group-value {\n margin-right: auto;\n}\n\n.ag-cell, .ag-full-width-row .ag-cell-wrapper.ag-row-group {\n --ag-internal-calculated-line-height: var(--ag-line-height, calc(var(--ag-row-height) - var(--ag-row-border-width)));\n --ag-internal-padded-row-height: calc(var(--ag-row-height) - var(--ag-row-border-width));\n border: 1px solid transparent;\n line-height: min(var(--ag-internal-calculated-line-height), var(--ag-internal-padded-row-height));\n padding-left: calc(var(--ag-cell-horizontal-padding) - 1px);\n padding-right: calc(var(--ag-cell-horizontal-padding) - 1px);\n -webkit-font-smoothing: subpixel-antialiased;\n}\n\n.ag-row > .ag-cell-wrapper {\n padding-left: calc(var(--ag-cell-horizontal-padding) - 1px);\n padding-right: calc(var(--ag-cell-horizontal-padding) - 1px);\n}\n\n.ag-row-dragging {\n cursor: move;\n opacity: 0.5;\n}\n\n.ag-cell-inline-editing {\n border: 1px solid var(--ag-border-color);\n border-radius: var(--ag-card-radius);\n box-shadow: var(--ag-card-shadow);\n padding: 0;\n background-color: var(--ag-control-panel-background-color);\n}\n\n.ag-popup-editor .ag-large-text,\n.ag-autocomplete-list-popup {\n border: var(--ag-borders) var(--ag-border-color);\n background: var(--ag-background-color);\n border-radius: var(--ag-card-radius);\n box-shadow: var(--ag-card-shadow);\n padding: var(--ag-grid-size);\n background-color: var(--ag-control-panel-background-color);\n padding: 0;\n}\n\n.ag-large-text-input {\n height: auto;\n padding: var(--ag-cell-horizontal-padding);\n}\n\n.ag-rtl .ag-large-text-input textarea {\n resize: none;\n}\n\n.ag-details-row {\n padding: calc(var(--ag-grid-size) * 5);\n background-color: var(--ag-background-color);\n}\n\n.ag-layout-auto-height .ag-center-cols-viewport, .ag-layout-auto-height .ag-center-cols-container, .ag-layout-print .ag-center-cols-viewport, .ag-layout-print .ag-center-cols-container {\n min-height: 50px;\n}\n\n.ag-overlay-loading-wrapper {\n background-color: var(--ag-modal-overlay-background-color);\n}\n\n.ag-overlay-loading-center {\n border: var(--ag-borders) var(--ag-border-color);\n background: var(--ag-background-color);\n border-radius: var(--ag-card-radius);\n box-shadow: var(--ag-card-shadow);\n padding: var(--ag-grid-size);\n}\n\n.ag-overlay-no-rows-wrapper.ag-layout-auto-height {\n padding-top: 30px;\n}\n\n.ag-skeleton-container {\n width: 100%;\n height: 100%;\n align-content: center;\n}\n\n.ag-skeleton-effect {\n background-color: var(--ag-row-loading-skeleton-effect-color);\n width: 100%;\n height: 1em;\n border-radius: 0.25rem;\n animation: ag-skeleton-loading 1.5s ease-in-out 0.5s infinite;\n}\n\n@keyframes ag-skeleton-loading {\n 0% {\n opacity: 1;\n }\n 50% {\n opacity: 0.4;\n }\n 100% {\n opacity: 1;\n }\n}\n.ag-loading {\n display: flex;\n height: 100%;\n align-items: center;\n}\n.ag-ltr .ag-loading {\n padding-left: var(--ag-cell-horizontal-padding);\n}\n.ag-rtl .ag-loading {\n padding-right: var(--ag-cell-horizontal-padding);\n}\n\n.ag-ltr .ag-loading-icon {\n padding-right: var(--ag-cell-widget-spacing);\n}\n.ag-rtl .ag-loading-icon {\n padding-left: var(--ag-cell-widget-spacing);\n}\n\n.ag-icon-loading {\n animation-name: spin;\n animation-duration: 1000ms;\n animation-iteration-count: infinite;\n animation-timing-function: linear;\n}\n\n@keyframes spin {\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(360deg);\n }\n}\n.ag-floating-top {\n border-bottom: var(--ag-borders-critical) var(--ag-border-color);\n}\n\n.ag-floating-bottom {\n border-top: var(--ag-borders-critical) var(--ag-border-color);\n}\n\n.ag-ltr .ag-cell {\n border-right: var(--ag-cell-horizontal-border);\n}\n.ag-rtl .ag-cell {\n border-left: var(--ag-cell-horizontal-border);\n}\n.ag-ltr .ag-cell {\n border-right-width: 1px;\n}\n.ag-rtl .ag-cell {\n border-left-width: 1px;\n}\n\n.ag-cell.ag-cell-first-right-pinned:not(.ag-cell-range-left):not(.ag-cell-range-single-cell) {\n border-left: var(--ag-borders-critical) var(--ag-border-color);\n}\n\n.ag-cell.ag-cell-last-left-pinned:not(.ag-cell-range-right):not(.ag-cell-range-single-cell) {\n border-right: var(--ag-borders-critical) var(--ag-border-color);\n}\n\n.ag-cell-range-selected:not(.ag-cell-focus),\n.ag-body-viewport:not(.ag-has-focus) .ag-cell-range-single-cell:not(.ag-cell-inline-editing) {\n background-color: var(--ag-range-selection-background-color);\n}\n.ag-cell-range-selected:not(.ag-cell-focus).ag-cell-range-chart,\n.ag-body-viewport:not(.ag-has-focus) .ag-cell-range-single-cell:not(.ag-cell-inline-editing).ag-cell-range-chart {\n background-color: var(--ag-range-selection-chart-background-color) !important;\n}\n.ag-cell-range-selected:not(.ag-cell-focus).ag-cell-range-chart.ag-cell-range-chart-category,\n.ag-body-viewport:not(.ag-has-focus) .ag-cell-range-single-cell:not(.ag-cell-inline-editing).ag-cell-range-chart.ag-cell-range-chart-category {\n background-color: var(--ag-range-selection-chart-category-background-color) !important;\n}\n\n.ag-cell-range-selected-1:not(.ag-cell-focus),\n.ag-root:not(.ag-context-menu-open) .ag-body-viewport:not(.ag-has-focus) .ag-cell-range-selected-1:not(.ag-cell-inline-editing) {\n background-color: var(--ag-range-selection-background-color);\n}\n\n.ag-cell-range-selected-2:not(.ag-cell-focus),\n.ag-body-viewport:not(.ag-has-focus) .ag-cell-range-selected-2 {\n background-color: var(--ag-range-selection-background-color-2);\n}\n\n.ag-cell-range-selected-3:not(.ag-cell-focus),\n.ag-body-viewport:not(.ag-has-focus) .ag-cell-range-selected-3 {\n background-color: var(--ag-range-selection-background-color-3);\n}\n\n.ag-cell-range-selected-4:not(.ag-cell-focus),\n.ag-body-viewport:not(.ag-has-focus) .ag-cell-range-selected-4 {\n background-color: var(--ag-range-selection-background-color-4);\n}\n\n.ag-cell.ag-cell-range-selected:not(.ag-cell-range-single-cell).ag-cell-range-top {\n border-top-color: var(--ag-range-selection-border-color);\n border-top-style: var(--ag-range-selection-border-style);\n}\n.ag-cell.ag-cell-range-selected:not(.ag-cell-range-single-cell).ag-cell-range-right {\n border-right-color: var(--ag-range-selection-border-color);\n border-right-style: var(--ag-range-selection-border-style);\n}\n.ag-cell.ag-cell-range-selected:not(.ag-cell-range-single-cell).ag-cell-range-bottom {\n border-bottom-color: var(--ag-range-selection-border-color);\n border-bottom-style: var(--ag-range-selection-border-style);\n}\n.ag-cell.ag-cell-range-selected:not(.ag-cell-range-single-cell).ag-cell-range-left {\n border-left-color: var(--ag-range-selection-border-color);\n border-left-style: var(--ag-range-selection-border-style);\n}\n\n.ag-ltr .ag-cell-focus:not(.ag-cell-range-selected):focus-within,\n.ag-ltr .ag-context-menu-open .ag-cell-focus:not(.ag-cell-range-selected),\n.ag-ltr .ag-full-width-row.ag-row-focus:focus .ag-cell-wrapper.ag-row-group,\n.ag-ltr .ag-cell-range-single-cell,\n.ag-ltr .ag-cell-range-single-cell.ag-cell-range-handle, .ag-rtl .ag-cell-focus:not(.ag-cell-range-selected):focus-within,\n.ag-rtl .ag-context-menu-open .ag-cell-focus:not(.ag-cell-range-selected),\n.ag-rtl .ag-full-width-row.ag-row-focus:focus .ag-cell-wrapper.ag-row-group,\n.ag-rtl .ag-cell-range-single-cell,\n.ag-rtl .ag-cell-range-single-cell.ag-cell-range-handle {\n border: 1px solid;\n border-color: var(--ag-range-selection-border-color);\n border-style: var(--ag-range-selection-border-style);\n outline: initial;\n}\n\n.ag-cell.ag-selection-fill-top,\n.ag-cell.ag-selection-fill-top.ag-cell-range-selected {\n border-top: 1px dashed;\n border-top-color: var(--ag-range-selection-border-color);\n}\n\n.ag-ltr .ag-cell.ag-selection-fill-right,\n.ag-ltr .ag-cell.ag-selection-fill-right.ag-cell-range-selected {\n border-right: 1px dashed var(--ag-range-selection-border-color) !important;\n}\n.ag-rtl .ag-cell.ag-selection-fill-right,\n.ag-rtl .ag-cell.ag-selection-fill-right.ag-cell-range-selected {\n border-left: 1px dashed var(--ag-range-selection-border-color) !important;\n}\n\n.ag-cell.ag-selection-fill-bottom,\n.ag-cell.ag-selection-fill-bottom.ag-cell-range-selected {\n border-bottom: 1px dashed;\n border-bottom-color: var(--ag-range-selection-border-color);\n}\n\n.ag-ltr .ag-cell.ag-selection-fill-left,\n.ag-ltr .ag-cell.ag-selection-fill-left.ag-cell-range-selected {\n border-left: 1px dashed var(--ag-range-selection-border-color) !important;\n}\n.ag-rtl .ag-cell.ag-selection-fill-left,\n.ag-rtl .ag-cell.ag-selection-fill-left.ag-cell-range-selected {\n border-right: 1px dashed var(--ag-range-selection-border-color) !important;\n}\n\n.ag-fill-handle, .ag-range-handle {\n position: absolute;\n width: 6px;\n height: 6px;\n bottom: -1px;\n background-color: var(--ag-range-selection-border-color);\n}\n.ag-ltr .ag-fill-handle, .ag-ltr .ag-range-handle {\n right: -1px;\n}\n.ag-rtl .ag-fill-handle, .ag-rtl .ag-range-handle {\n left: -1px;\n}\n\n.ag-fill-handle {\n cursor: cell;\n}\n\n.ag-range-handle {\n cursor: nwse-resize;\n}\n\n.ag-cell-inline-editing {\n border-color: var(--ag-input-focus-border-color) !important;\n}\n\n.ag-menu {\n border: var(--ag-borders) var(--ag-border-color);\n background: var(--ag-background-color);\n border-radius: var(--ag-card-radius);\n box-shadow: var(--ag-card-shadow);\n padding: var(--ag-grid-size);\n background-color: var(--ag-menu-background-color);\n border-color: var(--ag-menu-border-color);\n padding: 0;\n}\n\n.ag-menu-list {\n cursor: default;\n padding: var(--ag-grid-size) 0;\n}\n\n.ag-menu-separator {\n height: calc(var(--ag-grid-size) * 2 + 1px);\n}\n\n.ag-menu-separator-part::after {\n content: "";\n display: block;\n border-top: var(--ag-borders-critical) var(--ag-border-color);\n}\n\n.ag-menu-option-active, .ag-compact-menu-option-active {\n background-color: var(--ag-row-hover-color);\n}\n\n.ag-menu-option-part, .ag-compact-menu-option-part {\n line-height: var(--ag-icon-size);\n padding: calc(var(--ag-grid-size) + 2px) 0;\n}\n\n.ag-menu-option-disabled, .ag-compact-menu-option-disabled {\n opacity: 0.5;\n}\n\n.ag-menu-option-icon, .ag-compact-menu-option-icon {\n width: var(--ag-icon-size);\n}\n.ag-ltr .ag-menu-option-icon, .ag-ltr .ag-compact-menu-option-icon {\n padding-left: calc(var(--ag-grid-size) * 2);\n}\n.ag-rtl .ag-menu-option-icon, .ag-rtl .ag-compact-menu-option-icon {\n padding-right: calc(var(--ag-grid-size) * 2);\n}\n\n.ag-menu-option-text, .ag-compact-menu-option-text {\n padding-left: calc(var(--ag-grid-size) * 2);\n padding-right: calc(var(--ag-grid-size) * 2);\n}\n\n.ag-ltr .ag-menu-option-shortcut, .ag-ltr .ag-compact-menu-option-shortcut {\n padding-right: var(--ag-grid-size);\n}\n.ag-rtl .ag-menu-option-shortcut, .ag-rtl .ag-compact-menu-option-shortcut {\n padding-left: var(--ag-grid-size);\n}\n\n.ag-ltr .ag-menu-option-popup-pointer, .ag-ltr .ag-compact-menu-option-popup-pointer {\n padding-right: var(--ag-grid-size);\n}\n.ag-rtl .ag-menu-option-popup-pointer, .ag-rtl .ag-compact-menu-option-popup-pointer {\n padding-left: var(--ag-grid-size);\n}\n\n.ag-tabs {\n min-width: var(--ag-tab-min-width);\n}\n\n.ag-tabs-header {\n display: flex;\n}\n\n.ag-tabs-header-wrapper {\n display: flex;\n}\n.ag-tabs-header-wrapper .ag-tabs-header {\n flex: 1;\n}\n\n.ag-tabs-close-button-wrapper {\n border: 0;\n border-right: var(--ag-borders) var(--ag-border-color);\n padding: var(--ag-grid-size);\n}\n\n.ag-tabs-close-button {\n border: 0;\n background-color: unset;\n cursor: pointer;\n padding: 0;\n}\n\n.ag-tab {\n border-bottom: var(--ag-selected-tab-underline-width) solid transparent;\n transition: border-bottom var(--ag-selected-tab-underline-transition-speed);\n display: flex;\n flex: none;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n}\n\n.ag-tab:focus-visible {\n outline: none;\n}\n.ag-tab:focus-visible::after {\n content: "";\n position: absolute;\n background-color: transparent;\n pointer-events: none;\n top: 4px;\n left: 4px;\n display: block;\n width: calc(100% - 8px);\n height: calc(100% - 8px);\n border: 1px solid;\n border-color: var(--ag-input-focus-border-color);\n}\n\n.ag-tab-selected {\n border-bottom-color: var(--ag-selected-tab-underline-color);\n}\n\n.ag-menu-header {\n color: var(--ag-secondary-foreground-color);\n}\n\n.ag-filter-separator {\n border-top: var(--ag-borders-critical) var(--ag-border-color);\n}\n\n.ag-filter-select .ag-picker-field-wrapper {\n width: 0;\n}\n\n.ag-filter-condition-operator {\n height: 17px;\n}\n\n.ag-ltr .ag-filter-condition-operator-or {\n margin-left: calc(var(--ag-grid-size) * 2);\n}\n.ag-rtl .ag-filter-condition-operator-or {\n margin-right: calc(var(--ag-grid-size) * 2);\n}\n\n.ag-set-filter-select-all {\n padding-top: var(--ag-widget-container-vertical-padding);\n}\n\n.ag-set-filter-list, .ag-filter-no-matches {\n height: calc(var(--ag-list-item-height) * 6);\n}\n\n.ag-set-filter-tree-list {\n height: calc(var(--ag-list-item-height) * 10);\n}\n\n.ag-set-filter-filter {\n margin-top: var(--ag-widget-container-vertical-padding);\n margin-left: var(--ag-widget-container-horizontal-padding);\n margin-right: var(--ag-widget-container-horizontal-padding);\n}\n\n.ag-filter-to {\n margin-top: var(--ag-widget-vertical-spacing);\n}\n\n.ag-mini-filter {\n margin: var(--ag-widget-container-vertical-padding) var(--ag-widget-container-horizontal-padding);\n}\n\n.ag-set-filter-item {\n padding: 0px var(--ag-widget-container-horizontal-padding);\n}\n\n.ag-ltr .ag-set-filter-indent-1 {\n padding-left: calc(var(--ag-widget-container-horizontal-padding) + 1 * var(--ag-set-filter-indent-size));\n}\n.ag-rtl .ag-set-filter-indent-1 {\n padding-right: calc(var(--ag-widget-container-horizontal-padding) + 1 * var(--ag-set-filter-indent-size));\n}\n\n.ag-ltr .ag-set-filter-indent-2 {\n padding-left: calc(var(--ag-widget-container-horizontal-padding) + 2 * var(--ag-set-filter-indent-size));\n}\n.ag-rtl .ag-set-filter-indent-2 {\n padding-right: calc(var(--ag-widget-container-horizontal-padding) + 2 * var(--ag-set-filter-indent-size));\n}\n\n.ag-ltr .ag-set-filter-indent-3 {\n padding-left: calc(var(--ag-widget-container-horizontal-padding) + 3 * var(--ag-set-filter-indent-size));\n}\n.ag-rtl .ag-set-filter-indent-3 {\n padding-right: calc(var(--ag-widget-container-horizontal-padding) + 3 * var(--ag-set-filter-indent-size));\n}\n\n.ag-ltr .ag-set-filter-indent-4 {\n padding-left: calc(var(--ag-widget-container-horizontal-padding) + 4 * var(--ag-set-filter-indent-size));\n}\n.ag-rtl .ag-set-filter-indent-4 {\n padding-right: calc(var(--ag-widget-container-horizontal-padding) + 4 * var(--ag-set-filter-indent-size));\n}\n\n.ag-ltr .ag-set-filter-indent-5 {\n padding-left: calc(var(--ag-widget-container-horizontal-padding) + 5 * var(--ag-set-filter-indent-size));\n}\n.ag-rtl .ag-set-filter-indent-5 {\n padding-right: calc(var(--ag-widget-container-horizontal-padding) + 5 * var(--ag-set-filter-indent-size));\n}\n\n.ag-ltr .ag-set-filter-indent-6 {\n padding-left: calc(var(--ag-widget-container-horizontal-padding) + 6 * var(--ag-set-filter-indent-size));\n}\n.ag-rtl .ag-set-filter-indent-6 {\n padding-right: calc(var(--ag-widget-container-horizontal-padding) + 6 * var(--ag-set-filter-indent-size));\n}\n\n.ag-ltr .ag-set-filter-indent-7 {\n padding-left: calc(var(--ag-widget-container-horizontal-padding) + 7 * var(--ag-set-filter-indent-size));\n}\n.ag-rtl .ag-set-filter-indent-7 {\n padding-right: calc(var(--ag-widget-container-horizontal-padding) + 7 * var(--ag-set-filter-indent-size));\n}\n\n.ag-ltr .ag-set-filter-indent-8 {\n padding-left: calc(var(--ag-widget-container-horizontal-padding) + 8 * var(--ag-set-filter-indent-size));\n}\n.ag-rtl .ag-set-filter-indent-8 {\n padding-right: calc(var(--ag-widget-container-horizontal-padding) + 8 * var(--ag-set-filter-indent-size));\n}\n\n.ag-ltr .ag-set-filter-indent-9 {\n padding-left: calc(var(--ag-widget-container-horizontal-padding) + 9 * var(--ag-set-filter-indent-size));\n}\n.ag-rtl .ag-set-filter-indent-9 {\n padding-right: calc(var(--ag-widget-container-horizontal-padding) + 9 * var(--ag-set-filter-indent-size));\n}\n\n.ag-ltr .ag-set-filter-add-group-indent {\n margin-left: calc(var(--ag-icon-size) + var(--ag-widget-container-horizontal-padding));\n}\n.ag-rtl .ag-set-filter-add-group-indent {\n margin-right: calc(var(--ag-icon-size) + var(--ag-widget-container-horizontal-padding));\n}\n\n.ag-ltr .ag-set-filter-group-icons {\n margin-right: var(--ag-widget-container-horizontal-padding);\n}\n.ag-rtl .ag-set-filter-group-icons {\n margin-left: var(--ag-widget-container-horizontal-padding);\n}\n\n.ag-filter-menu .ag-set-filter-list {\n min-width: 200px;\n}\n\n.ag-filter-virtual-list-item:focus-visible {\n outline: none;\n}\n.ag-filter-virtual-list-item:focus-visible::after {\n content: "";\n position: absolute;\n background-color: transparent;\n pointer-events: none;\n top: 1px;\n left: 1px;\n display: block;\n width: calc(100% - 2px);\n height: calc(100% - 2px);\n border: 1px solid;\n border-color: var(--ag-input-focus-border-color);\n}\n\n.ag-filter-apply-panel {\n padding: var(--ag-widget-container-vertical-padding) var(--ag-widget-container-horizontal-padding);\n border-top: var(--ag-borders-secondary) var(--ag-secondary-border-color);\n}\n\n.ag-filter-apply-panel-button {\n line-height: 1.5;\n}\n.ag-ltr .ag-filter-apply-panel-button {\n margin-left: calc(var(--ag-grid-size) * 2);\n}\n.ag-rtl .ag-filter-apply-panel-button {\n margin-right: calc(var(--ag-grid-size) * 2);\n}\n\n.ag-simple-filter-body-wrapper {\n padding: var(--ag-widget-container-vertical-padding) var(--ag-widget-container-horizontal-padding);\n padding-bottom: calc(var(--ag-widget-container-vertical-padding) - var(--ag-widget-vertical-spacing));\n overflow-y: auto;\n min-height: calc(var(--ag-list-item-height) + var(--ag-widget-container-vertical-padding) + var(--ag-widget-vertical-spacing));\n}\n.ag-simple-filter-body-wrapper > * {\n margin-bottom: var(--ag-widget-vertical-spacing);\n}\n.ag-simple-filter-body-wrapper .ag-resizer-wrapper {\n margin: 0;\n}\n\n.ag-menu:not(.ag-tabs) .ag-filter .ag-simple-filter-body-wrapper,\n.ag-menu:not(.ag-tabs) .ag-filter > *:not(.ag-filter-wrapper) {\n min-width: calc(var(--ag-menu-min-width) - 2px);\n}\n\n.ag-filter-no-matches {\n padding: var(--ag-widget-container-vertical-padding) var(--ag-widget-container-horizontal-padding);\n}\n\n.ag-multi-filter-menu-item {\n margin: var(--ag-grid-size) 0;\n}\n\n.ag-multi-filter-group-title-bar {\n padding: calc(var(--ag-grid-size) * 2) var(--ag-grid-size);\n background-color: transparent;\n}\n\n.ag-group-filter-field-select-wrapper {\n padding: var(--ag-widget-container-vertical-padding) var(--ag-widget-container-horizontal-padding);\n padding-bottom: calc(var(--ag-widget-container-vertical-padding) - var(--ag-widget-vertical-spacing));\n}\n.ag-group-filter-field-select-wrapper > * {\n margin-bottom: var(--ag-widget-vertical-spacing);\n}\n\n.ag-multi-filter-group-title-bar:focus-visible {\n outline: none;\n}\n.ag-multi-filter-group-title-bar:focus-visible::after {\n content: "";\n position: absolute;\n background-color: transparent;\n pointer-events: none;\n top: 4px;\n left: 4px;\n display: block;\n width: calc(100% - 8px);\n height: calc(100% - 8px);\n border: 1px solid;\n border-color: var(--ag-input-focus-border-color);\n}\n\n.ag-side-bar {\n position: relative;\n}\n\n.ag-tool-panel-wrapper {\n width: var(--ag-side-bar-panel-width);\n background-color: var(--ag-control-panel-background-color);\n}\n\n.ag-side-buttons {\n padding-top: calc(var(--ag-grid-size) * 4);\n width: calc(var(--ag-icon-size) + 4px);\n position: relative;\n overflow: hidden;\n}\n\nbutton.ag-side-button-button {\n color: inherit;\n font-family: inherit;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n background: transparent;\n padding: calc(var(--ag-grid-size) * 2) 0 calc(var(--ag-grid-size) * 2) 0;\n width: 100%;\n margin: 0;\n min-height: calc(var(--ag-grid-size) * 18);\n background-position-y: center;\n background-position-x: center;\n background-repeat: no-repeat;\n border: none;\n border-top: var(--ag-borders-side-button) var(--ag-border-color);\n border-bottom: var(--ag-borders-side-button) var(--ag-border-color);\n}\nbutton.ag-side-button-button:focus {\n box-shadow: none;\n}\n\n.ag-side-button-button:focus-visible {\n outline: none;\n}\n.ag-side-button-button:focus-visible::after {\n content: "";\n position: absolute;\n background-color: transparent;\n pointer-events: none;\n top: 4px;\n left: 4px;\n display: block;\n width: calc(100% - 8px);\n height: calc(100% - 8px);\n border: 1px solid;\n border-color: var(--ag-input-focus-border-color);\n}\n\n.ag-selected button.ag-side-button-button {\n background-color: var(--ag-side-button-selected-background-color);\n}\n\n.ag-side-button-icon-wrapper {\n margin-bottom: 3px;\n}\n\n.ag-ltr .ag-side-bar-left,\n.ag-rtl .ag-side-bar-right {\n border-right: var(--ag-borders) var(--ag-border-color);\n}\n.ag-ltr .ag-side-bar-left .ag-tool-panel-wrapper,\n.ag-rtl .ag-side-bar-right .ag-tool-panel-wrapper {\n border-left: var(--ag-borders) var(--ag-border-color);\n}\n.ag-ltr .ag-side-bar-left .ag-side-button-button,\n.ag-rtl .ag-side-bar-right .ag-side-button-button {\n border-right: var(--ag-selected-tab-underline-width) solid transparent;\n transition: border-right var(--ag-selected-tab-underline-transition-speed);\n}\n.ag-ltr .ag-side-bar-left .ag-selected .ag-side-button-button,\n.ag-rtl .ag-side-bar-right .ag-selected .ag-side-button-button {\n border-right-color: var(--ag-selected-tab-underline-color);\n}\n\n.ag-rtl .ag-side-bar-left,\n.ag-ltr .ag-side-bar-right {\n border-left: var(--ag-borders) var(--ag-border-color);\n}\n.ag-rtl .ag-side-bar-left .ag-tool-panel-wrapper,\n.ag-ltr .ag-side-bar-right .ag-tool-panel-wrapper {\n border-right: var(--ag-borders) var(--ag-border-color);\n}\n.ag-rtl .ag-side-bar-left .ag-side-button-button,\n.ag-ltr .ag-side-bar-right .ag-side-button-button {\n border-left: var(--ag-selected-tab-underline-width) solid transparent;\n transition: border-left var(--ag-selected-tab-underline-transition-speed);\n}\n.ag-rtl .ag-side-bar-left .ag-selected .ag-side-button-button,\n.ag-ltr .ag-side-bar-right .ag-selected .ag-side-button-button {\n border-left-color: var(--ag-selected-tab-underline-color);\n}\n\n.ag-filter-toolpanel-header {\n height: calc(var(--ag-grid-size) * 6);\n}\n\n.ag-filter-toolpanel-header,\n.ag-filter-toolpanel-search {\n padding: 0 var(--ag-grid-size);\n}\n\n.ag-filter-toolpanel-header:focus-visible {\n outline: none;\n}\n.ag-filter-toolpanel-header:focus-visible::after {\n content: "";\n position: absolute;\n background-color: transparent;\n pointer-events: none;\n top: 4px;\n left: 4px;\n display: block;\n width: calc(100% - 8px);\n height: calc(100% - 8px);\n border: 1px solid;\n border-color: var(--ag-input-focus-border-color);\n}\n\n.ag-filter-toolpanel-group:not(.ag-has-filter) > .ag-group-title-bar .ag-filter-toolpanel-group-instance-header-icon {\n display: none;\n}\n\n.ag-filter-toolpanel-group-level-0-header {\n height: calc(var(--ag-grid-size) * 8);\n}\n\n.ag-filter-toolpanel-group-item {\n margin-top: calc(var(--ag-grid-size) * 0.5);\n margin-bottom: calc(var(--ag-grid-size) * 0.5);\n}\n\n.ag-filter-toolpanel-search {\n height: var(--ag-header-height);\n}\n\n.ag-filter-toolpanel-search-input {\n flex-grow: 1;\n height: calc(var(--ag-grid-size) * 4);\n}\n.ag-ltr .ag-filter-toolpanel-search-input {\n margin-right: var(--ag-grid-size);\n}\n.ag-rtl .ag-filter-toolpanel-search-input {\n margin-left: var(--ag-grid-size);\n}\n\n.ag-filter-toolpanel-group-level-0 {\n border-top: var(--ag-borders-secondary) var(--ag-secondary-border-color);\n}\n\n.ag-ltr .ag-filter-toolpanel-expand,\n.ag-ltr .ag-filter-toolpanel-group-title-bar-icon {\n margin-right: var(--ag-grid-size);\n}\n.ag-rtl .ag-filter-toolpanel-expand,\n.ag-rtl .ag-filter-toolpanel-group-title-bar-icon {\n margin-left: var(--ag-grid-size);\n}\n\n.ag-filter-toolpanel-group-level-1 .ag-filter-toolpanel-group-level-1-header.ag-filter-toolpanel-group-title-bar {\n background-color: transparent;\n}\n.ag-ltr .ag-filter-toolpanel-group-level-1 .ag-filter-toolpanel-group-level-2-header {\n padding-left: calc(var(--ag-filter-tool-panel-group-indent) * 1 + var(--ag-grid-size));\n}\n.ag-rtl .ag-filter-toolpanel-group-level-1 .ag-filter-toolpanel-group-level-2-header {\n padding-right: calc(var(--ag-filter-tool-panel-group-indent) * 1 + var(--ag-grid-size));\n}\n\n.ag-filter-toolpanel-group-level-2 .ag-filter-toolpanel-group-level-2-header.ag-filter-toolpanel-group-title-bar {\n background-color: transparent;\n}\n.ag-ltr .ag-filter-toolpanel-group-level-2 .ag-filter-toolpanel-group-level-3-header {\n padding-left: calc(var(--ag-filter-tool-panel-group-indent) * 2 + var(--ag-grid-size));\n}\n.ag-rtl .ag-filter-toolpanel-group-level-2 .ag-filter-toolpanel-group-level-3-header {\n padding-right: calc(var(--ag-filter-tool-panel-group-indent) * 2 + var(--ag-grid-size));\n}\n\n.ag-filter-toolpanel-group-level-3 .ag-filter-toolpanel-group-level-3-header.ag-filter-toolpanel-group-title-bar {\n background-color: transparent;\n}\n.ag-ltr .ag-filter-toolpanel-group-level-3 .ag-filter-toolpanel-group-level-4-header {\n padding-left: calc(var(--ag-filter-tool-panel-group-indent) * 3 + var(--ag-grid-size));\n}\n.ag-rtl .ag-filter-toolpanel-group-level-3 .ag-filter-toolpanel-group-level-4-header {\n padding-right: calc(var(--ag-filter-tool-panel-group-indent) * 3 + var(--ag-grid-size));\n}\n\n.ag-filter-toolpanel-group-level-4 .ag-filter-toolpanel-group-level-4-header.ag-filter-toolpanel-group-title-bar {\n background-color: transparent;\n}\n.ag-ltr .ag-filter-toolpanel-group-level-4 .ag-filter-toolpanel-group-level-5-header {\n padding-left: calc(var(--ag-filter-tool-panel-group-indent) * 4 + var(--ag-grid-size));\n}\n.ag-rtl .ag-filter-toolpanel-group-level-4 .ag-filter-toolpanel-group-level-5-header {\n padding-right: calc(var(--ag-filter-tool-panel-group-indent) * 4 + var(--ag-grid-size));\n}\n\n.ag-filter-toolpanel-group-level-5 .ag-filter-toolpanel-group-level-5-header.ag-filter-toolpanel-group-title-bar {\n background-color: transparent;\n}\n.ag-ltr .ag-filter-toolpanel-group-level-5 .ag-filter-toolpanel-group-level-6-header {\n padding-left: calc(var(--ag-filter-tool-panel-group-indent) * 5 + var(--ag-grid-size));\n}\n.ag-rtl .ag-filter-toolpanel-group-level-5 .ag-filter-toolpanel-group-level-6-header {\n padding-right: calc(var(--ag-filter-tool-panel-group-indent) * 5 + var(--ag-grid-size));\n}\n\n.ag-filter-toolpanel-group-level-6 .ag-filter-toolpanel-group-level-6-header.ag-filter-toolpanel-group-title-bar {\n background-color: transparent;\n}\n.ag-ltr .ag-filter-toolpanel-group-level-6 .ag-filter-toolpanel-group-level-7-header {\n padding-left: calc(var(--ag-filter-tool-panel-group-indent) * 6 + var(--ag-grid-size));\n}\n.ag-rtl .ag-filter-toolpanel-group-level-6 .ag-filter-toolpanel-group-level-7-header {\n padding-right: calc(var(--ag-filter-tool-panel-group-indent) * 6 + var(--ag-grid-size));\n}\n\n.ag-filter-toolpanel-group-level-7 .ag-filter-toolpanel-group-level-7-header.ag-filter-toolpanel-group-title-bar {\n background-color: transparent;\n}\n.ag-ltr .ag-filter-toolpanel-group-level-7 .ag-filter-toolpanel-group-level-8-header {\n padding-left: calc(var(--ag-filter-tool-panel-group-indent) * 7 + var(--ag-grid-size));\n}\n.ag-rtl .ag-filter-toolpanel-group-level-7 .ag-filter-toolpanel-group-level-8-header {\n padding-right: calc(var(--ag-filter-tool-panel-group-indent) * 7 + var(--ag-grid-size));\n}\n\n.ag-filter-toolpanel-group-level-8 .ag-filter-toolpanel-group-level-8-header.ag-filter-toolpanel-group-title-bar {\n background-color: transparent;\n}\n.ag-ltr .ag-filter-toolpanel-group-level-8 .ag-filter-toolpanel-group-level-9-header {\n padding-left: calc(var(--ag-filter-tool-panel-group-indent) * 8 + var(--ag-grid-size));\n}\n.ag-rtl .ag-filter-toolpanel-group-level-8 .ag-filter-toolpanel-group-level-9-header {\n padding-right: calc(var(--ag-filter-tool-panel-group-indent) * 8 + var(--ag-grid-size));\n}\n\n.ag-filter-toolpanel-group-level-9 .ag-filter-toolpanel-group-level-9-header.ag-filter-toolpanel-group-title-bar {\n background-color: transparent;\n}\n.ag-ltr .ag-filter-toolpanel-group-level-9 .ag-filter-toolpanel-group-level-10-header {\n padding-left: calc(var(--ag-filter-tool-panel-group-indent) * 9 + var(--ag-grid-size));\n}\n.ag-rtl .ag-filter-toolpanel-group-level-9 .ag-filter-toolpanel-group-level-10-header {\n padding-right: calc(var(--ag-filter-tool-panel-group-indent) * 9 + var(--ag-grid-size));\n}\n\n.ag-filter-toolpanel-group-level-10 .ag-filter-toolpanel-group-level-10-header.ag-filter-toolpanel-group-title-bar {\n background-color: transparent;\n}\n.ag-ltr .ag-filter-toolpanel-group-level-10 .ag-filter-toolpanel-group-level-11-header {\n padding-left: calc(var(--ag-filter-tool-panel-group-indent) * 10 + var(--ag-grid-size));\n}\n.ag-rtl .ag-filter-toolpanel-group-level-10 .ag-filter-toolpanel-group-level-11-header {\n padding-right: calc(var(--ag-filter-tool-panel-group-indent) * 10 + var(--ag-grid-size));\n}\n\n.ag-filter-toolpanel-instance-header.ag-filter-toolpanel-group-level-1-header {\n padding-left: var(--ag-grid-size);\n}\n\n.ag-filter-toolpanel-instance-filter {\n border-bottom: var(--ag-borders) var(--ag-border-color);\n border-top: var(--ag-borders) var(--ag-border-color);\n margin-top: var(--ag-grid-size);\n}\n\n.ag-ltr .ag-filter-toolpanel-group-instance-header-icon,\n.ag-ltr .ag-filter-toolpanel-instance-header-icon {\n margin-left: var(--ag-grid-size);\n}\n.ag-rtl .ag-filter-toolpanel-group-instance-header-icon,\n.ag-rtl .ag-filter-toolpanel-instance-header-icon {\n margin-right: var(--ag-grid-size);\n}\n\n.ag-set-filter-group-icons {\n color: var(--ag-secondary-foreground-color);\n}\n\n.ag-pivot-mode-panel {\n min-height: var(--ag-header-height);\n height: var(--ag-header-height);\n display: flex;\n}\n\n.ag-pivot-mode-select {\n display: flex;\n align-items: center;\n}\n.ag-ltr .ag-pivot-mode-select {\n margin-left: var(--ag-widget-container-horizontal-padding);\n}\n.ag-rtl .ag-pivot-mode-select {\n margin-right: var(--ag-widget-container-horizontal-padding);\n}\n\n.ag-column-select-header:focus-visible {\n outline: none;\n}\n.ag-column-select-header:focus-visible::after {\n content: "";\n position: absolute;\n background-color: transparent;\n pointer-events: none;\n top: 4px;\n left: 4px;\n display: block;\n width: calc(100% - 8px);\n height: calc(100% - 8px);\n border: 1px solid;\n border-color: var(--ag-input-focus-border-color);\n}\n\n.ag-column-select-header {\n height: var(--ag-header-height);\n align-items: center;\n padding: 0 var(--ag-widget-container-horizontal-padding);\n border-bottom: var(--ag-borders-secondary) var(--ag-secondary-border-color);\n}\n\n.ag-column-panel-column-select {\n border-bottom: var(--ag-borders-secondary) var(--ag-secondary-border-color);\n border-top: var(--ag-borders-secondary) var(--ag-secondary-border-color);\n}\n\n.ag-column-group-icons,\n.ag-column-select-header-icon {\n color: var(--ag-secondary-foreground-color);\n}\n\n.ag-column-select-list .ag-list-item-hovered::after {\n content: "";\n position: absolute;\n left: 0;\n right: 0;\n height: 1px;\n background-color: var(--ag-range-selection-border-color);\n}\n.ag-column-select-list .ag-item-highlight-top::after {\n top: 0;\n}\n.ag-column-select-list .ag-item-highlight-bottom::after {\n bottom: 0;\n}\n\n.ag-header, .ag-advanced-filter-header {\n background-color: var(--ag-header-background-color);\n border-bottom: var(--ag-borders-critical) var(--ag-border-color);\n}\n\n.ag-header-row {\n color: var(--ag-header-foreground-color);\n height: var(--ag-header-height);\n}\n\n.ag-pinned-right-header {\n border-left: var(--ag-borders-critical) var(--ag-border-color);\n}\n\n.ag-pinned-left-header {\n border-right: var(--ag-borders-critical) var(--ag-border-color);\n}\n\n.ag-ltr .ag-header-cell:not(.ag-right-aligned-header) .ag-header-label-icon, .ag-ltr .ag-header-cell:not(.ag-right-aligned-header) .ag-header-menu-icon {\n margin-left: var(--ag-grid-size);\n}\n.ag-rtl .ag-header-cell:not(.ag-right-aligned-header) .ag-header-label-icon, .ag-rtl .ag-header-cell:not(.ag-right-aligned-header) .ag-header-menu-icon {\n margin-right: var(--ag-grid-size);\n}\n\n.ag-ltr .ag-header-cell.ag-right-aligned-header .ag-header-label-icon, .ag-ltr .ag-header-cell.ag-right-aligned-header .ag-header-menu-icon {\n margin-right: var(--ag-grid-size);\n}\n.ag-rtl .ag-header-cell.ag-right-aligned-header .ag-header-label-icon, .ag-rtl .ag-header-cell.ag-right-aligned-header .ag-header-menu-icon {\n margin-left: var(--ag-grid-size);\n}\n\n.ag-header-cell,\n.ag-header-group-cell {\n padding-left: var(--ag-cell-horizontal-padding);\n padding-right: var(--ag-cell-horizontal-padding);\n}\n.ag-header-cell.ag-header-cell-moving,\n.ag-header-group-cell.ag-header-cell-moving {\n background-color: var(--ag-header-cell-moving-background-color);\n}\n\n.ag-ltr .ag-header-group-cell-label.ag-sticky-label {\n left: var(--ag-cell-horizontal-padding);\n}\n.ag-rtl .ag-header-group-cell-label.ag-sticky-label {\n right: var(--ag-cell-horizontal-padding);\n}\n\n.ag-header-cell:focus-visible {\n outline: none;\n}\n.ag-header-cell:focus-visible::after {\n content: "";\n position: absolute;\n background-color: transparent;\n pointer-events: none;\n top: 4px;\n left: 4px;\n display: block;\n width: calc(100% - 8px);\n height: calc(100% - 8px);\n border: 1px solid;\n border-color: var(--ag-input-focus-border-color);\n}\n\n.ag-header-group-cell:focus-visible {\n outline: none;\n}\n.ag-header-group-cell:focus-visible::after {\n content: "";\n position: absolute;\n background-color: transparent;\n pointer-events: none;\n top: 4px;\n left: 4px;\n display: block;\n width: calc(100% - 8px);\n height: calc(100% - 8px);\n border: 1px solid;\n border-color: var(--ag-input-focus-border-color);\n}\n\n.ag-advanced-filter-header-cell:focus-visible {\n outline: none;\n}\n.ag-advanced-filter-header-cell:focus-visible::after {\n content: "";\n position: absolute;\n background-color: transparent;\n pointer-events: none;\n top: 4px;\n left: 4px;\n display: block;\n width: calc(100% - 8px);\n height: calc(100% - 8px);\n border: 1px solid;\n border-color: var(--ag-input-focus-border-color);\n}\n\n.ag-header-icon {\n color: var(--ag-secondary-foreground-color);\n}\n\n.ag-header-expand-icon {\n cursor: pointer;\n}\n.ag-ltr .ag-header-expand-icon {\n margin-left: 4px;\n}\n.ag-rtl .ag-header-expand-icon {\n margin-right: 4px;\n}\n\n.ag-header-row:not(:first-child) .ag-header-cell:not(.ag-header-span-height.ag-header-span-total),\n.ag-header-row:not(:first-child) .ag-header-group-cell.ag-header-group-cell-with-group {\n border-top: var(--ag-borders-critical) var(--ag-border-color);\n}\n\n.ag-header-group-cell:not(.ag-column-resizing) + .ag-header-group-cell:not(.ag-column-hover):not(.ag-header-cell-moving):hover, .ag-header-group-cell:not(.ag-column-resizing) + .ag-header-group-cell:not(.ag-column-hover).ag-column-resizing,\n.ag-header-cell:not(.ag-column-resizing) + .ag-header-cell:not(.ag-column-hover):not(.ag-header-cell-moving):hover,\n.ag-header-cell:not(.ag-column-resizing) + .ag-header-cell:not(.ag-column-hover).ag-column-resizing,\n.ag-header-group-cell:first-of-type:not(.ag-header-cell-moving):hover,\n.ag-header-group-cell:first-of-type.ag-column-resizing,\n.ag-header-cell:not(.ag-column-hover):first-of-type:not(.ag-header-cell-moving):hover,\n.ag-header-cell:not(.ag-column-hover):first-of-type.ag-column-resizing {\n background-color: var(--ag-header-cell-hover-background-color);\n}\n\n.ag-header-cell::before,\n.ag-header-group-cell:not(.ag-header-span-height.ag-header-group-cell-no-group)::before {\n content: "";\n position: absolute;\n z-index: 1;\n display: var(--ag-header-column-separator-display);\n width: var(--ag-header-column-separator-width);\n height: var(--ag-header-column-separator-height);\n top: calc(50% - var(--ag-header-column-separator-height) * 0.5);\n background-color: var(--ag-header-column-separator-color);\n}\n.ag-ltr .ag-header-cell::before,\n.ag-ltr .ag-header-group-cell:not(.ag-header-span-height.ag-header-group-cell-no-group)::before {\n right: 0;\n}\n.ag-rtl .ag-header-cell::before,\n.ag-rtl .ag-header-group-cell:not(.ag-header-span-height.ag-header-group-cell-no-group)::before {\n left: 0;\n}\n\n.ag-header-cell-resize {\n display: flex;\n align-items: center;\n}\n\n.ag-header-cell-resize::after {\n content: "";\n position: absolute;\n z-index: 1;\n display: var(--ag-header-column-resize-handle-display);\n width: var(--ag-header-column-resize-handle-width);\n height: var(--ag-header-column-resize-handle-height);\n top: calc(50% - var(--ag-header-column-resize-handle-height) * 0.5);\n background-color: var(--ag-header-column-resize-handle-color);\n}\n.ag-header-cell.ag-header-span-height .ag-header-cell-resize::after {\n height: calc(100% - var(--ag-grid-size) * 4);\n top: calc(var(--ag-grid-size) * 2);\n}\n\n.ag-ltr .ag-header-viewport .ag-header-cell-resize::after {\n left: calc(50% - var(--ag-header-column-resize-handle-width));\n}\n.ag-rtl .ag-header-viewport .ag-header-cell-resize::after {\n right: calc(50% - var(--ag-header-column-resize-handle-width));\n}\n\n.ag-pinned-left-header .ag-header-cell-resize::after {\n left: calc(50% - var(--ag-header-column-resize-handle-width));\n}\n\n.ag-pinned-right-header .ag-header-cell-resize::after {\n left: 50%;\n}\n\n.ag-ltr .ag-header-select-all {\n margin-right: var(--ag-cell-horizontal-padding);\n}\n.ag-rtl .ag-header-select-all {\n margin-left: var(--ag-cell-horizontal-padding);\n}\n\n.ag-ltr .ag-floating-filter-button {\n margin-left: var(--ag-cell-widget-spacing);\n}\n.ag-rtl .ag-floating-filter-button {\n margin-right: var(--ag-cell-widget-spacing);\n}\n\n.ag-floating-filter-button-button {\n color: inherit;\n font-family: inherit;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n background: transparent;\n border: none;\n height: var(--ag-icon-size);\n padding: 0;\n width: var(--ag-icon-size);\n}\n\n.ag-filter-loading {\n background-color: var(--ag-control-panel-background-color);\n height: 100%;\n padding: var(--ag-widget-container-vertical-padding) var(--ag-widget-container-horizontal-padding);\n position: absolute;\n width: 100%;\n z-index: 1;\n}\n\n.ag-paging-panel {\n border-top: 1px solid;\n border-top-color: var(--ag-border-color);\n color: var(--ag-secondary-foreground-color);\n height: var(--ag-header-height);\n}\n.ag-paging-panel > * {\n margin: 0 var(--ag-cell-horizontal-padding);\n}\n.ag-paging-panel > .ag-paging-page-size .ag-wrapper {\n min-width: calc(var(--ag-grid-size) * 10);\n}\n\n.ag-paging-button {\n cursor: pointer;\n}\n\n.ag-paging-button.ag-disabled {\n cursor: default;\n color: var(--ag-disabled-foreground-color);\n}\n\n.ag-paging-button:focus-visible {\n outline: none;\n}\n.ag-paging-button:focus-visible::after {\n content: "";\n position: absolute;\n background-color: transparent;\n pointer-events: none;\n top: 0px;\n left: 0px;\n display: block;\n width: calc(100% - 0px);\n height: calc(100% - 0px);\n border: 1px solid;\n border-color: var(--ag-input-focus-border-color);\n}\n\n.ag-paging-button, .ag-paging-description {\n margin: 0 var(--ag-grid-size);\n}\n\n.ag-status-bar {\n border-top: var(--ag-borders) var(--ag-border-color);\n color: var(--ag-disabled-foreground-color);\n padding-right: calc(var(--ag-grid-size) * 4);\n padding-left: calc(var(--ag-grid-size) * 4);\n line-height: 1.5;\n}\n\n.ag-status-name-value-value {\n color: var(--ag-foreground-color);\n}\n\n.ag-status-bar-center {\n text-align: center;\n}\n\n.ag-status-name-value {\n margin-left: var(--ag-grid-size);\n margin-right: var(--ag-grid-size);\n padding-top: calc(var(--ag-grid-size) * 2);\n padding-bottom: calc(var(--ag-grid-size) * 2);\n}\n\n.ag-column-drop-cell {\n background: var(--ag-chip-background-color);\n border-radius: calc(var(--ag-grid-size) * 4);\n height: calc(var(--ag-grid-size) * 4);\n padding: 0 calc(var(--ag-grid-size) * 0.5);\n border: 1px solid var(--ag-chip-border-color);\n}\n\n.ag-column-drop-cell:focus-visible {\n outline: none;\n}\n.ag-column-drop-cell:focus-visible::after {\n content: "";\n position: absolute;\n background-color: transparent;\n pointer-events: none;\n top: 2px;\n left: 2px;\n display: block;\n width: calc(100% - 4px);\n height: calc(100% - 4px);\n border: 1px solid;\n border-color: var(--ag-input-focus-border-color);\n}\n\n.ag-column-drop-cell-text {\n margin: 0 var(--ag-grid-size);\n}\n\n.ag-column-drop-cell-button {\n min-width: calc(var(--ag-grid-size) * 4);\n margin: 0 calc(var(--ag-grid-size) * 0.5);\n color: var(--ag-secondary-foreground-color);\n}\n\n.ag-column-drop-cell-drag-handle {\n margin-left: calc(var(--ag-grid-size) * 2);\n}\n\n.ag-column-drop-cell-ghost {\n opacity: 0.5;\n}\n\n.ag-column-drop-horizontal {\n background-color: var(--ag-header-background-color);\n color: var(--ag-secondary-foreground-color);\n height: var(--ag-header-height);\n border-bottom: var(--ag-borders) var(--ag-border-color);\n}\n.ag-ltr .ag-column-drop-horizontal {\n padding-left: var(--ag-cell-horizontal-padding);\n}\n.ag-rtl .ag-column-drop-horizontal {\n padding-right: var(--ag-cell-horizontal-padding);\n}\n\n.ag-ltr .ag-column-drop-horizontal-half-width:not(:last-child) {\n border-right: var(--ag-borders) var(--ag-border-color);\n}\n.ag-rtl .ag-column-drop-horizontal-half-width:not(:last-child) {\n border-left: var(--ag-borders) var(--ag-border-color);\n}\n\n.ag-column-drop-horizontal-cell-separator {\n margin: 0 var(--ag-grid-size);\n color: var(--ag-secondary-foreground-color);\n}\n\n.ag-column-drop-horizontal-empty-message {\n color: var(--ag-disabled-foreground-color);\n}\n\n.ag-ltr .ag-column-drop-horizontal-icon {\n margin-right: var(--ag-cell-horizontal-padding);\n}\n.ag-rtl .ag-column-drop-horizontal-icon {\n margin-left: var(--ag-cell-horizontal-padding);\n}\n\n.ag-column-drop-vertical-list {\n padding-bottom: var(--ag-grid-size);\n padding-right: var(--ag-grid-size);\n padding-left: var(--ag-grid-size);\n}\n\n.ag-column-drop-vertical-cell {\n margin-top: var(--ag-grid-size);\n}\n\n.ag-column-drop-vertical {\n min-height: 50px;\n border-bottom: var(--ag-borders-secondary) var(--ag-secondary-border-color);\n}\n.ag-column-drop-vertical.ag-last-column-drop {\n border-bottom: none;\n}\n\n.ag-column-drop-vertical-icon {\n margin-left: var(--ag-grid-size);\n margin-right: var(--ag-grid-size);\n}\n\n.ag-column-drop-vertical-empty-message {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n overflow: hidden;\n color: var(--ag-disabled-foreground-color);\n margin-top: var(--ag-grid-size);\n}\n\n.ag-select-agg-func-popup {\n border: var(--ag-borders) var(--ag-border-color);\n background: var(--ag-background-color);\n border-radius: var(--ag-card-radius);\n box-shadow: var(--ag-card-shadow);\n padding: var(--ag-grid-size);\n background: var(--ag-background-color);\n height: calc(var(--ag-grid-size) * 5 * 3.5);\n padding: 0;\n}\n\n.ag-select-agg-func-virtual-list-item {\n cursor: default;\n}\n.ag-ltr .ag-select-agg-func-virtual-list-item {\n padding-left: calc(var(--ag-grid-size) * 2);\n}\n.ag-rtl .ag-select-agg-func-virtual-list-item {\n padding-right: calc(var(--ag-grid-size) * 2);\n}\n.ag-select-agg-func-virtual-list-item:hover {\n background-color: var(--ag-selected-row-background-color);\n}\n\n.ag-select-agg-func-virtual-list-item:focus-visible {\n outline: none;\n}\n.ag-select-agg-func-virtual-list-item:focus-visible::after {\n content: "";\n position: absolute;\n background-color: transparent;\n pointer-events: none;\n top: 1px;\n left: 1px;\n display: block;\n width: calc(100% - 2px);\n height: calc(100% - 2px);\n border: 1px solid;\n border-color: var(--ag-input-focus-border-color);\n}\n\n.ag-sort-indicator-container {\n display: flex;\n}\n\n.ag-ltr .ag-sort-indicator-icon {\n padding-left: var(--ag-grid-size);\n}\n.ag-rtl .ag-sort-indicator-icon {\n padding-right: var(--ag-grid-size);\n}\n\n.ag-chart {\n position: relative;\n display: flex;\n overflow: hidden;\n width: 100%;\n height: 100%;\n}\n\n.ag-chart-components-wrapper {\n position: relative;\n display: flex;\n flex: 1 1 auto;\n overflow: hidden;\n}\n\n.ag-chart-title-edit {\n position: absolute;\n display: none;\n top: 0;\n left: 0;\n text-align: center;\n}\n\n.ag-chart-title-edit.currently-editing {\n display: inline-block;\n}\n\n.ag-chart-canvas-wrapper {\n position: relative;\n flex: 1 1 auto;\n overflow: hidden;\n}\n\n.ag-charts-canvas {\n display: block;\n}\n\n.ag-chart-menu {\n position: absolute;\n top: 16px;\n display: flex;\n flex-direction: column;\n}\n.ag-ltr .ag-chart-menu {\n right: 20px;\n}\n.ag-rtl .ag-chart-menu {\n left: 20px;\n}\n\n.ag-chart-docked-container {\n position: relative;\n width: 0;\n min-width: 0;\n transition: min-width 0.4s;\n}\n\n.ag-chart-menu-hidden ~ .ag-chart-docked-container {\n max-width: 0;\n overflow: hidden;\n}\n\n.ag-chart-tabbed-menu {\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n}\n\n.ag-chart-tabbed-menu-header {\n flex: none;\n -moz-user-select: none;\n -webkit-user-select: none;\n user-select: none;\n cursor: default;\n}\n\n.ag-chart-tabbed-menu-body {\n display: flex;\n flex: 1 1 auto;\n align-items: stretch;\n overflow: hidden;\n}\n\n.ag-chart-tab {\n width: 100%;\n overflow: hidden;\n overflow-y: auto;\n}\n\n.ag-chart-settings {\n overflow-x: hidden;\n}\n\n.ag-chart-settings-wrapper {\n position: relative;\n flex-direction: column;\n width: 100%;\n height: 100%;\n display: flex;\n overflow: hidden;\n}\n\n.ag-chart-settings-nav-bar {\n display: flex;\n align-items: center;\n width: 100%;\n height: 30px;\n padding: 0 10px;\n -moz-user-select: none;\n -webkit-user-select: none;\n user-select: none;\n}\n\n.ag-chart-settings-card-selector {\n display: flex;\n align-items: center;\n justify-content: space-around;\n flex: 1 1 auto;\n height: 100%;\n padding: 0 10px;\n}\n\n.ag-chart-settings-card-item {\n cursor: pointer;\n width: 10px;\n height: 10px;\n background-color: #000;\n position: relative;\n}\n.ag-chart-settings-card-item.ag-not-selected {\n opacity: 0.2;\n}\n.ag-chart-settings-card-item::before {\n content: " ";\n display: block;\n position: absolute;\n background-color: transparent;\n left: 50%;\n top: 50%;\n margin-left: -10px;\n margin-top: -10px;\n width: 20px;\n height: 20px;\n}\n\n.ag-chart-settings-prev,\n.ag-chart-settings-next {\n position: relative;\n flex: none;\n}\n\n.ag-chart-settings-prev-button,\n.ag-chart-settings-next-button {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n cursor: pointer;\n opacity: 0;\n}\n\n.ag-chart-settings-mini-charts-container {\n position: relative;\n flex: 1 1 auto;\n overflow-x: hidden;\n overflow-y: auto;\n}\n\n.ag-chart-settings-mini-wrapper {\n position: absolute;\n top: 0;\n left: 0;\n display: flex;\n flex-direction: column;\n width: 100%;\n min-height: 100%;\n overflow: hidden;\n}\n.ag-chart-settings-mini-wrapper.ag-animating {\n transition: left 0.3s;\n transition-timing-function: ease-in-out;\n}\n\n.ag-chart-mini-thumbnail {\n cursor: pointer;\n}\n\n.ag-chart-mini-thumbnail-canvas {\n display: block;\n}\n\n.ag-chart-data-wrapper,\n.ag-chart-format-wrapper,\n.ag-chart-advanced-settings-wrapper {\n display: flex;\n flex-direction: column;\n position: relative;\n -moz-user-select: none;\n -webkit-user-select: none;\n user-select: none;\n padding-bottom: 16px;\n}\n\n.ag-chart-data-wrapper,\n.ag-chart-advanced-settings-wrapper {\n height: 100%;\n overflow-y: auto;\n}\n\n.ag-chart-advanced-settings {\n background-color: var(--ag-control-panel-background-color);\n}\n\n.ag-chart-advanced-settings-wrapper, .ag-chart-advanced-settings {\n width: 100%;\n}\n\n.ag-chart-advanced-settings-wrapper {\n padding-bottom: 0;\n}\n\n.ag-chart-data-section,\n.ag-chart-format-section,\n.ag-chart-advanced-settings-section {\n display: flex;\n margin: 0;\n}\n\n.ag-chart-advanced-settings-section {\n border-bottom: 1px solid var(--ag-secondary-border-color);\n padding-top: var(--ag-grid-size);\n padding-bottom: var(--ag-grid-size);\n}\n\n.ag-chart-empty-text {\n display: flex;\n top: 0;\n width: 100%;\n height: 100%;\n align-items: center;\n justify-content: center;\n background-color: var(--ag-background-color);\n}\n\n.ag-chart .ag-chart-menu {\n display: none;\n}\n\n.ag-chart-menu-hidden:hover .ag-chart-menu {\n display: block;\n}\n\n.ag-chart .ag-chart-tool-panel-button-enable .ag-chart-menu, .ag-chart .ag-chart-menu-wrapper .ag-chart-menu {\n display: flex;\n flex-direction: row;\n top: 8px;\n gap: 20px;\n width: auto;\n}\n.ag-ltr .ag-chart .ag-chart-tool-panel-button-enable .ag-chart-menu, .ag-ltr .ag-chart .ag-chart-menu-wrapper .ag-chart-menu {\n right: calc(var(--ag-cell-horizontal-padding) + var(--ag-grid-size) - 4px);\n justify-content: right;\n}\n.ag-rtl .ag-chart .ag-chart-tool-panel-button-enable .ag-chart-menu, .ag-rtl .ag-chart .ag-chart-menu-wrapper .ag-chart-menu {\n left: calc(var(--ag-cell-horizontal-padding) + var(--ag-grid-size) - 4px);\n justify-content: left;\n}\n\n.ag-chart-menu-close {\n display: none;\n}\n\n.ag-chart-tool-panel-button-enable .ag-chart-menu-close {\n position: absolute;\n top: 50%;\n transition: transform 0.33s ease-in-out;\n padding: 0;\n display: block;\n cursor: pointer;\n border: none;\n}\n.ag-ltr .ag-chart-tool-panel-button-enable .ag-chart-menu-close {\n right: 0px;\n}\n.ag-rtl .ag-chart-tool-panel-button-enable .ag-chart-menu-close {\n left: 0px;\n}\n.ag-chart-tool-panel-button-enable .ag-chart-menu-close .ag-icon {\n padding: 14px 5px 14px 2px;\n width: auto;\n height: auto;\n}\n.ag-chart-tool-panel-button-enable .ag-chart-menu-close:before {\n content: "";\n position: absolute;\n top: -40px;\n bottom: -40px;\n}\n.ag-ltr .ag-chart-tool-panel-button-enable .ag-chart-menu-close:before {\n right: 0px;\n}\n.ag-rtl .ag-chart-tool-panel-button-enable .ag-chart-menu-close:before {\n left: 0px;\n}\n.ag-ltr .ag-chart-tool-panel-button-enable .ag-chart-menu-close:before {\n left: -10px;\n}\n.ag-rtl .ag-chart-tool-panel-button-enable .ag-chart-menu-close:before {\n right: -10px;\n}\n.ag-chart-tool-panel-button-enable .ag-icon-menu {\n display: none;\n}\n\n.ag-ltr .ag-chart-tool-panel-button-enable .ag-chart-menu-close {\n transform: translate(3px, -50%);\n}\n.ag-ltr .ag-chart-tool-panel-button-enable .ag-chart-menu-close:hover {\n transform: translate(0, -50%);\n}\n.ag-ltr .ag-chart-menu-visible .ag-chart-tool-panel-button-enable .ag-chart-menu-close:hover {\n transform: translate(5px, -50%);\n}\n\n.ag-rtl .ag-chart-tool-panel-button-enable .ag-chart-menu-close {\n transform: translate(-3px, -50%);\n}\n.ag-rtl .ag-chart-tool-panel-button-enable .ag-chart-menu-close:hover {\n transform: translate(0, -50%);\n}\n.ag-rtl .ag-chart-menu-visible .ag-chart-tool-panel-button-enable .ag-chart-menu-close:hover {\n transform: translate(-5px, -50%);\n}\n\n.ag-charts-font-size-color {\n display: flex;\n align-self: stretch;\n justify-content: space-between;\n}\n\n.ag-charts-data-group-item {\n position: relative;\n}\n\n.ag-charts-data-group-item:not(:last-child) {\n margin-bottom: var(--ag-grid-size);\n}\n\n.ag-chart-menu {\n border-radius: var(--ag-card-radius);\n background: var(--ag-background-color);\n}\n\n.ag-chart-menu-icon {\n opacity: 0.5;\n margin: 2px 0;\n cursor: pointer;\n border-radius: var(--ag-card-radius);\n color: var(--ag-secondary-foreground-color);\n}\n.ag-chart-menu-icon:hover {\n opacity: 1;\n}\n\n.ag-chart-menu-toolbar-button {\n border: 0;\n background-color: unset;\n padding: 0 2px;\n border-radius: 1px;\n}\n\n.ag-chart-mini-thumbnail {\n border: 1px solid var(--ag-secondary-border-color);\n border-radius: 5px;\n}\n.ag-chart-mini-thumbnail.ag-selected {\n border-color: var(--ag-minichart-selected-chart-color);\n}\n\n.ag-chart-settings-card-item {\n background: var(--ag-foreground-color);\n width: 8px;\n height: 8px;\n border-radius: 4px;\n}\n.ag-chart-settings-card-item.ag-selected {\n background-color: var(--ag-minichart-selected-page-color);\n}\n\n.ag-chart-data-column-drag-handle {\n margin-left: var(--ag-grid-size);\n}\n\n.ag-charts-settings-group-title-bar,\n.ag-charts-data-group-title-bar,\n.ag-charts-format-top-level-group-title-bar {\n border-top: var(--ag-borders-secondary) var(--ag-secondary-border-color);\n position: relative;\n}\n\n.ag-charts-advanced-settings-top-level-group-title-bar {\n position: relative;\n background-color: unset;\n}\n\n.ag-charts-settings-group-title-bar:focus-visible {\n outline: none;\n}\n.ag-charts-settings-group-title-bar:focus-visible::after {\n content: "";\n position: absolute;\n background-color: transparent;\n pointer-events: none;\n top: -4px;\n left: -4px;\n display: block;\n width: calc(100% - -8px);\n height: calc(100% - -8px);\n border: 1px solid;\n border-color: var(--ag-input-focus-border-color);\n}\n\n.ag-charts-data-group-title-bar:focus-visible {\n outline: none;\n}\n.ag-charts-data-group-title-bar:focus-visible::after {\n content: "";\n position: absolute;\n background-color: transparent;\n pointer-events: none;\n top: -4px;\n left: -4px;\n display: block;\n width: calc(100% - -8px);\n height: calc(100% - -8px);\n border: 1px solid;\n border-color: var(--ag-input-focus-border-color);\n}\n\n.ag-charts-format-top-level-group-title-bar:focus-visible {\n outline: none;\n}\n.ag-charts-format-top-level-group-title-bar:focus-visible::after {\n content: "";\n position: absolute;\n background-color: transparent;\n pointer-events: none;\n top: -4px;\n left: -4px;\n display: block;\n width: calc(100% - -8px);\n height: calc(100% - -8px);\n border: 1px solid;\n border-color: var(--ag-input-focus-border-color);\n}\n\n.ag-charts-advanced-settings-top-level-group-title-bar:focus-visible {\n outline: none;\n}\n.ag-charts-advanced-settings-top-level-group-title-bar:focus-visible::after {\n content: "";\n position: absolute;\n background-color: transparent;\n pointer-events: none;\n top: -4px;\n left: -4px;\n display: block;\n width: calc(100% - -8px);\n height: calc(100% - -8px);\n border: 1px solid;\n border-color: var(--ag-input-focus-border-color);\n}\n\n.ag-charts-data-group-container {\n padding: calc(var(--ag-widget-container-vertical-padding) * 0.5) var(--ag-widget-container-horizontal-padding);\n}\n.ag-charts-data-group-container .ag-charts-data-group-item:not(.ag-charts-format-sub-level-group):not(.ag-pill-select):not(.ag-select) {\n height: var(--ag-list-item-height);\n}\n.ag-charts-data-group-container .ag-charts-data-group-item.ag-picker-field {\n margin-top: var(--ag-grid-size);\n}\n.ag-charts-data-group-container .ag-list-item-hovered::after {\n content: "";\n position: absolute;\n left: 0;\n right: 0;\n height: 1px;\n background-color: var(--ag-range-selection-border-color);\n}\n.ag-charts-data-group-container .ag-item-highlight-top::after {\n top: 0;\n}\n.ag-charts-data-group-container .ag-item-highlight-bottom::after {\n bottom: 0;\n}\n\n.ag-charts-format-top-level-group-container,\n.ag-charts-advanced-settings-top-level-group-container {\n margin-left: calc(var(--ag-grid-size) * 2);\n padding: var(--ag-grid-size);\n}\n\n.ag-charts-format-top-level-group-item,\n.ag-charts-advanced-settings-top-level-group-item {\n margin: var(--ag-grid-size) 0;\n}\n\n.ag-charts-format-sub-level-group-container {\n padding: var(--ag-widget-container-vertical-padding) var(--ag-widget-container-horizontal-padding);\n padding-bottom: calc(var(--ag-widget-container-vertical-padding) - var(--ag-widget-vertical-spacing));\n}\n.ag-charts-format-sub-level-group-container > * {\n margin-bottom: var(--ag-widget-vertical-spacing);\n}\n\n.ag-charts-settings-group-container {\n padding: var(--ag-grid-size);\n row-gap: 8px;\n display: grid;\n grid-template-columns: 60px 1fr 60px 1fr 60px;\n}\n.ag-charts-settings-group-container .ag-chart-mini-thumbnail:nth-child(3n+1) {\n grid-column: 1;\n}\n.ag-charts-settings-group-container .ag-chart-mini-thumbnail:nth-child(3n+2) {\n grid-column: 3;\n}\n.ag-charts-settings-group-container .ag-chart-mini-thumbnail:nth-child(3n+3) {\n grid-column: 5;\n}\n\n.ag-chart-menu-panel {\n background-color: var(--ag-control-panel-background-color);\n}\n.ag-ltr .ag-chart-menu-panel {\n border-left: solid 1px var(--ag-border-color);\n}\n.ag-rtl .ag-chart-menu-panel {\n border-right: solid 1px var(--ag-border-color);\n}\n\n.ag-date-time-list-page-title-bar {\n display: flex;\n}\n\n.ag-date-time-list-page-title {\n flex-grow: 1;\n text-align: center;\n}\n\n.ag-date-time-list-page-column-labels-row,\n.ag-date-time-list-page-entries-row {\n display: flex;\n}\n\n.ag-date-time-list-page-column-label,\n.ag-date-time-list-page-entry {\n flex-basis: 0;\n flex-grow: 1;\n}\n\n.ag-date-time-list-page-entry {\n cursor: pointer;\n text-align: center;\n}\n\n.ag-date-time-list-page-column-label {\n text-align: center;\n}\n\n.ag-advanced-filter-header {\n position: relative;\n display: flex;\n align-items: center;\n padding-left: var(--ag-cell-horizontal-padding);\n padding-right: var(--ag-cell-horizontal-padding);\n}\n\n.ag-advanced-filter {\n display: flex;\n align-items: center;\n width: 100%;\n}\n\n.ag-advanced-filter-apply-button, .ag-advanced-filter-builder-button {\n line-height: normal;\n white-space: nowrap;\n}\n.ag-ltr .ag-advanced-filter-apply-button, .ag-ltr .ag-advanced-filter-builder-button {\n margin-left: calc(var(--ag-grid-size) * 2);\n}\n.ag-rtl .ag-advanced-filter-apply-button, .ag-rtl .ag-advanced-filter-builder-button {\n margin-right: calc(var(--ag-grid-size) * 2);\n}\n\n.ag-advanced-filter-builder-button {\n display: flex;\n align-items: center;\n border: 0;\n background-color: unset;\n color: var(--ag-foreground-color);\n font-size: var(--ag-font-size);\n font-weight: 600;\n}\n.ag-advanced-filter-builder-button:hover:not(:disabled) {\n background-color: var(--ag-row-hover-color);\n}\n.ag-advanced-filter-builder-button:not(:disabled) {\n cursor: pointer;\n}\n\n.ag-advanced-filter-builder-button-label {\n margin-left: var(--ag-grid-size);\n}\n\n.ag-advanced-filter-builder {\n -moz-user-select: none;\n -webkit-user-select: none;\n user-select: none;\n width: 100%;\n background-color: var(--ag-control-panel-background-color);\n display: flex;\n flex-direction: column;\n}\n\n.ag-advanced-filter-builder-list {\n flex: 1;\n overflow: auto;\n}\n.ag-advanced-filter-builder-list .ag-list-item-hovered::after {\n content: "";\n position: absolute;\n left: 0;\n right: 0;\n height: 1px;\n background-color: var(--ag-range-selection-border-color);\n}\n.ag-advanced-filter-builder-list .ag-item-highlight-top::after {\n top: 0;\n}\n.ag-advanced-filter-builder-list .ag-item-highlight-bottom::after {\n bottom: 0;\n}\n\n.ag-advanced-filter-builder-button-panel {\n display: flex;\n justify-content: flex-end;\n padding: var(--ag-widget-container-vertical-padding) var(--ag-widget-container-horizontal-padding);\n border-top: var(--ag-borders-secondary) var(--ag-secondary-border-color);\n}\n\n.ag-advanced-filter-builder .ag-advanced-filter-builder-button-panel .ag-advanced-filter-builder-apply-button,\n.ag-advanced-filter-builder .ag-advanced-filter-builder-button-panel .ag-advanced-filter-builder-cancel-button {\n margin-left: calc(var(--ag-grid-size) * 2);\n}\n\n.ag-advanced-filter-builder-item-wrapper {\n display: flex;\n flex: 1 1 auto;\n align-items: center;\n justify-content: space-between;\n overflow: hidden;\n padding-left: calc(var(--ag-icon-size) / 2);\n padding-right: var(--ag-icon-size);\n}\n\n.ag-advanced-filter-builder-item-tree-lines > * {\n width: var(--ag-advanced-filter-builder-indent-size);\n}\n\n.ag-advanced-filter-builder-item-tree-lines .ag-advanced-filter-builder-item-tree-line-root {\n width: var(--ag-icon-size);\n}\n.ag-advanced-filter-builder-item-tree-lines .ag-advanced-filter-builder-item-tree-line-root::before {\n top: 50%;\n height: 50%;\n}\n\n.ag-advanced-filter-builder-item-tree-line-horizontal,\n.ag-advanced-filter-builder-item-tree-line-vertical,\n.ag-advanced-filter-builder-item-tree-line-vertical-top,\n.ag-advanced-filter-builder-item-tree-line-vertical-bottom {\n position: relative;\n height: 100%;\n display: flex;\n align-items: center;\n}\n.ag-advanced-filter-builder-item-tree-line-horizontal::before, .ag-advanced-filter-builder-item-tree-line-horizontal::after,\n.ag-advanced-filter-builder-item-tree-line-vertical::before,\n.ag-advanced-filter-builder-item-tree-line-vertical::after,\n.ag-advanced-filter-builder-item-tree-line-vertical-top::before,\n.ag-advanced-filter-builder-item-tree-line-vertical-top::after,\n.ag-advanced-filter-builder-item-tree-line-vertical-bottom::before,\n.ag-advanced-filter-builder-item-tree-line-vertical-bottom::after {\n content: "";\n position: absolute;\n height: 100%;\n}\n\n.ag-advanced-filter-builder-item-tree-line-horizontal::after {\n height: 50%;\n width: calc(var(--ag-advanced-filter-builder-indent-size) - var(--ag-icon-size));\n top: 0;\n left: calc(var(--ag-icon-size) / 2);\n border-bottom: 1px solid;\n border-color: var(--ag-border-color);\n}\n\n.ag-advanced-filter-builder-item-tree-line-vertical::before {\n width: calc(var(--ag-advanced-filter-builder-indent-size) - var(--ag-icon-size) / 2);\n top: 0;\n left: calc(var(--ag-icon-size) / 2);\n border-left: 1px solid;\n border-color: var(--ag-border-color);\n}\n\n.ag-advanced-filter-builder-item-tree-line-vertical-top::before {\n height: 50%;\n width: calc(var(--ag-advanced-filter-builder-indent-size) - var(--ag-icon-size) / 2);\n top: 0;\n left: calc(var(--ag-icon-size) / 2);\n border-left: 1px solid;\n border-color: var(--ag-border-color);\n}\n\n.ag-advanced-filter-builder-item-tree-line-vertical-bottom::before {\n height: calc((100% - 1.5 * var(--ag-icon-size)) / 2);\n width: calc(var(--ag-icon-size) / 2);\n top: calc((100% + 1.5 * var(--ag-icon-size)) / 2);\n left: calc(var(--ag-icon-size) / 2);\n border-left: 1px solid;\n border-color: var(--ag-border-color);\n}\n\n.ag-advanced-filter-builder-item-condition {\n padding-top: var(--ag-grid-size);\n padding-bottom: var(--ag-grid-size);\n}\n\n.ag-advanced-filter-builder-item,\n.ag-advanced-filter-builder-item-condition,\n.ag-advanced-filter-builder-pill-wrapper,\n.ag-advanced-filter-builder-pill,\n.ag-advanced-filter-builder-item-buttons,\n.ag-advanced-filter-builder-item-tree-lines {\n display: flex;\n align-items: center;\n height: 100%;\n}\n\n.ag-advanced-filter-builder-pill-wrapper {\n margin: 0px var(--ag-grid-size);\n}\n\n.ag-advanced-filter-builder-pill {\n position: relative;\n border-radius: var(--ag-border-radius);\n padding: var(--ag-grid-size) calc(var(--ag-grid-size) * 2);\n min-height: calc(100% - var(--ag-grid-size) * 3);\n min-width: calc(var(--ag-grid-size) * 2);\n}\n.ag-advanced-filter-builder-pill .ag-picker-field-display {\n margin-right: var(--ag-grid-size);\n}\n.ag-advanced-filter-builder-pill .ag-advanced-filter-builder-value-number {\n font-family: monospace;\n font-weight: 700;\n}\n.ag-advanced-filter-builder-pill .ag-advanced-filter-builder-value-empty {\n color: var(--ag-disabled-foreground-color);\n}\n\n.ag-advanced-filter-builder-pill:focus-visible {\n outline: none;\n}\n.ag-advanced-filter-builder-pill:focus-visible::after {\n content: "";\n position: absolute;\n background-color: transparent;\n pointer-events: none;\n top: -4px;\n left: -4px;\n display: block;\n width: calc(100% - -8px);\n height: calc(100% - -8px);\n border: 1px solid;\n border-color: var(--ag-input-focus-border-color);\n}\n\n.ag-advanced-filter-builder-item-button:focus-visible {\n outline: none;\n}\n.ag-advanced-filter-builder-item-button:focus-visible::after {\n content: "";\n position: absolute;\n background-color: transparent;\n pointer-events: none;\n top: -4px;\n left: -4px;\n display: block;\n width: calc(100% - -8px);\n height: calc(100% - -8px);\n border: 1px solid;\n border-color: var(--ag-input-focus-border-color);\n}\n\n.ag-advanced-filter-builder-pill-display {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-weight: 500;\n}\n\n.ag-advanced-filter-builder-join-pill {\n color: var(--ag-foreground-color);\n background-color: var(--ag-advanced-filter-join-pill-color);\n cursor: pointer;\n}\n\n.ag-advanced-filter-builder-column-pill {\n color: var(--ag-foreground-color);\n background-color: var(--ag-advanced-filter-column-pill-color);\n cursor: pointer;\n}\n\n.ag-advanced-filter-builder-option-pill {\n color: var(--ag-foreground-color);\n background-color: var(--ag-advanced-filter-option-pill-color);\n cursor: pointer;\n}\n\n.ag-advanced-filter-builder-value-pill {\n color: var(--ag-foreground-color);\n background-color: var(--ag-advanced-filter-value-pill-color);\n cursor: text;\n max-width: 140px;\n}\n.ag-advanced-filter-builder-value-pill .ag-advanced-filter-builder-pill-display {\n display: block;\n}\n\n.ag-advanced-filter-builder-item-buttons > * {\n margin: 0 calc(var(--ag-grid-size) * 0.5);\n}\n\n.ag-advanced-filter-builder-item-button {\n position: relative;\n cursor: pointer;\n color: var(--ag-secondary-foreground-color);\n opacity: 50%;\n}\n\n.ag-advanced-filter-builder-item-button-disabled {\n color: var(--ag-disabled-foreground-color);\n cursor: default;\n}\n\n.ag-advanced-filter-builder-virtual-list-container {\n top: var(--ag-grid-size);\n}\n\n.ag-advanced-filter-builder-virtual-list-item {\n display: flex;\n cursor: default;\n height: var(--ag-list-item-height);\n}\n.ag-advanced-filter-builder-virtual-list-item:hover {\n background-color: var(--ag-row-hover-color);\n}\n.ag-advanced-filter-builder-virtual-list-item:hover .ag-advanced-filter-builder-item-button {\n opacity: 100%;\n}\n\n.ag-advanced-filter-builder-virtual-list-item-highlight .ag-advanced-filter-builder-item-button:focus-visible,\n.ag-advanced-filter-builder-validation .ag-advanced-filter-builder-invalid {\n opacity: 100%;\n}\n\n.ag-advanced-filter-builder-invalid {\n margin: 0 var(--ag-grid-size);\n color: var(--ag-invalid-color);\n cursor: default;\n}\n\n.ag-input-field-input {\n width: 100%;\n min-width: 0;\n}\n\n.ag-checkbox-input-wrapper {\n font-family: var(--ag-icon-font-family);\n font-weight: var(--ag-icon-font-weight);\n color: var(--ag-icon-font-color);\n font-size: var(--ag-icon-size);\n line-height: var(--ag-icon-size);\n font-style: normal;\n font-variant: normal;\n text-transform: none;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n width: var(--ag-icon-size);\n height: var(--ag-icon-size);\n background-color: var(--ag-checkbox-background-color);\n border-radius: var(--ag-checkbox-border-radius);\n display: inline-block;\n vertical-align: middle;\n flex: none;\n}\n.ag-checkbox-input-wrapper input, .ag-checkbox-input-wrapper input {\n -webkit-appearance: none;\n opacity: 0;\n width: 100%;\n height: 100%;\n}\n.ag-checkbox-input-wrapper:focus-within, .ag-checkbox-input-wrapper:active {\n outline: none;\n box-shadow: var(--ag-input-focus-box-shadow);\n}\n.ag-checkbox-input-wrapper.ag-disabled {\n opacity: 0.5;\n}\n.ag-checkbox-input-wrapper::after {\n content: var(--ag-icon-font-code-checkbox-unchecked, "\\f108");\n color: var(--ag-checkbox-unchecked-color);\n display: var(--ag-icon-font-display-checkbox-unchecked, var(--ag-icon-font-display));\n position: absolute;\n top: 0;\n left: 0;\n pointer-events: none;\n}\n.ag-checkbox-input-wrapper.ag-checked::after {\n content: var(--ag-icon-font-code-checkbox-checked, "\\f106");\n color: var(--ag-checkbox-checked-color);\n display: var(--ag-icon-font-display-checkbox-checked, var(--ag-icon-font-display));\n position: absolute;\n top: 0;\n left: 0;\n pointer-events: none;\n}\n.ag-checkbox-input-wrapper.ag-indeterminate::after {\n content: var(--ag-icon-font-code-checkbox-indeterminate, "\\f107");\n color: var(--ag-checkbox-indeterminate-color);\n display: var(--ag-icon-font-display-checkbox-indeterminate, var(--ag-icon-font-display));\n position: absolute;\n top: 0;\n left: 0;\n pointer-events: none;\n}\n.ag-checkbox-input-wrapper::before {\n content: "";\n background: transparent center/contain no-repeat;\n position: absolute;\n inset: 0;\n background-image: var(--ag-icon-image-checkbox-unchecked, var(--ag-icon-image));\n display: var(--ag-icon-image-display-checkbox-unchecked, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-checkbox-unchecked, var(--ag-icon-image-opacity, 0.9));\n}\n.ag-checkbox-input-wrapper.ag-checked::before {\n background-image: var(--ag-icon-image-checkbox-checked, var(--ag-icon-image));\n display: var(--ag-icon-image-display-checkbox-checked, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-checkbox-checked, var(--ag-icon-image-opacity, 0.9));\n}\n.ag-checkbox-input-wrapper.ag-indeterminate::before {\n background-image: var(--ag-icon-image-checkbox-indeterminate, var(--ag-icon-image));\n display: var(--ag-icon-image-display-checkbox-indeterminate, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-checkbox-indeterminate, var(--ag-icon-image-opacity, 0.9));\n}\n\n.ag-toggle-button-input-wrapper {\n box-sizing: border-box;\n width: var(--ag-toggle-button-width);\n min-width: var(--ag-toggle-button-width);\n max-width: var(--ag-toggle-button-width);\n height: var(--ag-toggle-button-height);\n background-color: var(--ag-toggle-button-off-background-color);\n border-radius: calc(var(--ag-toggle-button-height) * 0.5);\n position: relative;\n flex: none;\n border: var(--ag-toggle-button-border-width) solid;\n border-color: var(--ag-toggle-button-off-border-color);\n}\n.ag-toggle-button-input-wrapper input {\n opacity: 0;\n height: 100%;\n width: 100%;\n}\n.ag-toggle-button-input-wrapper:focus-within {\n outline: none;\n box-shadow: var(--ag-input-focus-box-shadow);\n}\n.ag-toggle-button-input-wrapper.ag-disabled {\n opacity: 0.5;\n}\n.ag-toggle-button-input-wrapper.ag-checked {\n background-color: var(--ag-toggle-button-on-background-color);\n border-color: var(--ag-toggle-button-on-border-color);\n}\n.ag-toggle-button-input-wrapper::before {\n content: " ";\n position: absolute;\n top: calc(0px - var(--ag-toggle-button-border-width));\n left: calc(0px - var(--ag-toggle-button-border-width));\n display: block;\n box-sizing: border-box;\n height: var(--ag-toggle-button-height);\n width: var(--ag-toggle-button-height);\n background-color: var(--ag-toggle-button-switch-background-color);\n border-radius: 100%;\n transition: left 100ms;\n border: var(--ag-toggle-button-border-width) solid;\n border-color: var(--ag-toggle-button-switch-border-color);\n}\n.ag-toggle-button-input-wrapper.ag-checked::before {\n left: calc(100% - var(--ag-toggle-button-height) + var(--ag-toggle-button-border-width));\n border-color: var(--ag-toggle-button-on-border-color);\n}\n\n.ag-radio-button-input-wrapper {\n font-family: var(--ag-icon-font-family);\n font-weight: var(--ag-icon-font-weight);\n color: var(--ag-icon-font-color);\n font-size: var(--ag-icon-size);\n line-height: var(--ag-icon-size);\n font-style: normal;\n font-variant: normal;\n text-transform: none;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n width: var(--ag-icon-size);\n height: var(--ag-icon-size);\n background-color: var(--ag-checkbox-background-color);\n border-radius: var(--ag-checkbox-border-radius);\n display: inline-block;\n vertical-align: middle;\n flex: none;\n border-radius: var(--ag-icon-size);\n}\n.ag-radio-button-input-wrapper input, .ag-radio-button-input-wrapper input {\n -webkit-appearance: none;\n opacity: 0;\n width: 100%;\n height: 100%;\n}\n.ag-radio-button-input-wrapper:focus-within, .ag-radio-button-input-wrapper:active {\n outline: none;\n box-shadow: var(--ag-input-focus-box-shadow);\n}\n.ag-radio-button-input-wrapper.ag-disabled {\n opacity: 0.5;\n}\n.ag-radio-button-input-wrapper::after {\n content: var(--ag-icon-font-code-radio-button-off, "\\f127");\n color: var(--ag-checkbox-unchecked-color);\n display: var(--ag-icon-font-display-radio-button-off, var(--ag-icon-font-display));\n position: absolute;\n top: 0;\n left: 0;\n pointer-events: none;\n}\n.ag-radio-button-input-wrapper.ag-checked::after {\n content: var(--ag-icon-font-code-radio-button-on, "\\f128");\n color: var(--ag-checkbox-checked-color);\n display: var(--ag-icon-font-display-radio-button-on, var(--ag-icon-font-display));\n position: absolute;\n top: 0;\n left: 0;\n pointer-events: none;\n}\n.ag-radio-button-input-wrapper::before {\n content: "";\n background: transparent center/contain no-repeat;\n position: absolute;\n inset: 0;\n background-image: var(--ag-icon-image-radio-button-off, var(--ag-icon-image));\n display: var(--ag-icon-image-display-radio-button-off, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-radio-button-off, var(--ag-icon-image-opacity, 0.9));\n}\n.ag-radio-button-input-wrapper.ag-checked::before {\n background-image: var(--ag-icon-image-radio-button-on, var(--ag-icon-image));\n display: var(--ag-icon-image-display-radio-button-on, var(--ag-icon-image-display));\n opacity: var(--ag-icon-image-opacity-radio-button-on, var(--ag-icon-image-opacity, 0.9));\n}\n\ninput[class^=ag-][type=range] {\n -webkit-appearance: none;\n width: 100%;\n height: 100%;\n background: none;\n overflow: visible;\n}\ninput[class^=ag-][type=range]::-webkit-slider-runnable-track {\n margin: 0;\n padding: 0;\n width: 100%;\n height: 3px;\n background-color: var(--ag-border-color);\n border-radius: var(--ag-border-radius);\n border-radius: var(--ag-checkbox-border-radius);\n}\ninput[class^=ag-][type=range]::-moz-range-track {\n margin: 0;\n padding: 0;\n width: 100%;\n height: 3px;\n background-color: var(--ag-border-color);\n border-radius: var(--ag-border-radius);\n border-radius: var(--ag-checkbox-border-radius);\n}\ninput[class^=ag-][type=range]::-ms-track {\n margin: 0;\n padding: 0;\n width: 100%;\n height: 3px;\n background-color: var(--ag-border-color);\n border-radius: var(--ag-border-radius);\n border-radius: var(--ag-checkbox-border-radius);\n color: transparent;\n width: calc(100% - 2px);\n}\ninput[class^=ag-][type=range]::-webkit-slider-thumb {\n margin: 0;\n padding: 0;\n -webkit-appearance: none;\n width: var(--ag-icon-size);\n height: var(--ag-icon-size);\n background-color: var(--ag-background-color);\n border: 1px solid;\n border-color: var(--ag-checkbox-unchecked-color);\n border-radius: var(--ag-icon-size);\n transform: translateY(calc(var(--ag-icon-size) * -0.5 + 1.5px));\n}\ninput[class^=ag-][type=range]::-ms-thumb {\n margin: 0;\n padding: 0;\n -webkit-appearance: none;\n width: var(--ag-icon-size);\n height: var(--ag-icon-size);\n background-color: var(--ag-background-color);\n border: 1px solid;\n border-color: var(--ag-checkbox-unchecked-color);\n border-radius: var(--ag-icon-size);\n}\ninput[class^=ag-][type=range]::-moz-ag-range-thumb {\n margin: 0;\n padding: 0;\n -webkit-appearance: none;\n width: var(--ag-icon-size);\n height: var(--ag-icon-size);\n background-color: var(--ag-background-color);\n border: 1px solid;\n border-color: var(--ag-checkbox-unchecked-color);\n border-radius: var(--ag-icon-size);\n}\ninput[class^=ag-][type=range]:focus {\n outline: none;\n}\ninput[class^=ag-][type=range]:focus::-webkit-slider-thumb {\n box-shadow: var(--ag-input-focus-box-shadow);\n border-color: var(--ag-checkbox-checked-color);\n}\ninput[class^=ag-][type=range]:focus::-ms-thumb {\n box-shadow: var(--ag-input-focus-box-shadow);\n border-color: var(--ag-checkbox-checked-color);\n}\ninput[class^=ag-][type=range]:focus::-moz-ag-range-thumb {\n box-shadow: var(--ag-input-focus-box-shadow);\n border-color: var(--ag-checkbox-checked-color);\n}\ninput[class^=ag-][type=range]:active::-webkit-slider-runnable-track {\n background-color: var(--ag-input-focus-border-color);\n}\ninput[class^=ag-][type=range]:active::-moz-ag-range-track {\n background-color: var(--ag-input-focus-border-color);\n}\ninput[class^=ag-][type=range]:active::-ms-track {\n background-color: var(--ag-input-focus-border-color);\n}\ninput[class^=ag-][type=range]:disabled {\n opacity: 0.5;\n}\n');bc('@font-face {\n font-family: "agGridBalham";\n src: url(data:font/woff2;charset=utf-8;base64,d09GMgABAAAAABYUAAsAAAAALgQAABXCAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHIlWBmAAi34KtgCsbgE2AiQDgiwLgRgABCAFhEYHhQgbFShVBoWNAwDFdIdHRcnM5KKoz4JRSvb/dQI3RERcg94LUYNDlJRRFMzQjtavWYLQT3ERFiy0h+AmMcl3xzOrdBEOnrkyLmf//l46s40Rjx2SFE0Caj9+e+++iEZTS4aYhazJQmMIWTOJkBiSNv9p6u81uXStcTtz9aNQWCTCegJgeNrmv7sD5QiVg1YMBCdgEQYIh4Vg9KEuylihU6xYtNtcVeF+1IqVkb9CXZQrtz8H3y0/gdMEmCGnwuiZzJlL5Mx56v1pf9Nf8JlgE/fK64B8AP77qu3R9TZnWJIDRkb4Ze+zzlYKOJKfrKsR8H9rqT0suIAssWuFrjDkzMzs3GX/TjbAmwldUtrw3AYIimgBFdBurgSgKlsF7Mj2Vem+qlpZV4LlofSmgUjUeQAQ7gbkYx89r5NZUyFU/7Kkb0cwOCTCSaCmjituLjwUGo2RIMVpbsTFjAopWV+KrMgbH6NzVxPqwfUQBt6IAGR5cyiz86u78i4dv3VFFeRp2QDeSoZL588el3EZCy0JCspXlnJJnq0/bvkY8sKt8CppjIPxVnwcv6b40VZFZWtPBTWkd3YUQ2CcIOkURbSaUDKYVG6yGnK6xrTGwLF55RBKSMICXX3VacPCiMqBSXP68Xs9MCjvrWy91tK7pzvRCISDQ6qW3iw9Fak+gRE2zLy4/q4y37xuulCfUCGNbxRj61PXJuniW+ZAK06xe3Xg3sgxVDTJ8AXUet41jKNskhmb3qTSdPJBiT66G0SwuNkMvtpUlrhANzvRaQTOhjC+fmuojcdjipqOLL+dcmeXapTAgozS9tsvdZrYTNiyuu7d645hcv2uypVxzrwu5RYy3jorwnSGYFl1tXVTmSuevv7gk89++l8oZCgZcirSqo33DPKztfyy7pr2uUirYfuZUJr2Gg0szclUJ/OVRwXms2pkqJoqnaPwBePrhmYpBYrNGmJCimVAux401R0YxTXKdTyTqQ7kBV+QV9I5mXxqAQZCqqbOsHkoLVBdR8yQF3qIrDJ73MQ/mTTrTGkba09yk/VCO4lr6uUbOLCuVhnmG8id/tVnZWlBnxnwZmdqXD6ce30ayAkfsQwnb2RnOx57KNPZB5YXKZId5lxx3mckh2KyzxsJgO0JPXjO7INZVrD8CeUyZ8SOGkd2wPsGbVftbmfDtRlNzStowt8ejHeA0WILzRbehSxJSR6Fp1JB8iB5g4f1uw9fdIUEJLTo6SI2z8yd8kHbr5XId+ylTH+31XNhZUAqEIFWIAUkZcuzQgH1JaeVqtp0f5D/yFGmQB7+uebBr5VjY9r8ddGNX3DC+6QF9Z5x7oiDruCe0U8Ayz+Z4wkuGxsqJpoNiCknw3wLlgUKFaIpVrdlFVU1dQ1NLW0dXb3c9qGRsYkHcGZuYWmlZm1ja2ev6+Do5Oyiq+bqpubu4kHV9vTy9gEhzVPytK170gpZTpwB7tisLo/7/yP9c9mwny5TOYCSmbCNtoFpHNcNnDCJk0aBU2ZwWh9wxhLO6gHOGQfOGwAumgAuGQMum8UVQ8BVg8A187ihF7hpBLilH7htDncs4q5h4J4p3LeAB7HMrwIxNUVQBSRoQlEoCWWhIlSFmlAXGkJTaAltoSN0hZ7QFwbCUBgJY2EiTIWZMBcWwlJYCWuLbPBrk1lbYSfshYNwNG11kmXOwkW4CjfhbiI8LLLBr2dSvIS3We4j6bCJQyQKtYjgF5tuw2UXhCAF3eGHldGfZ7yUkQ2yH3r6EEBL6vkNeOA/2N27vo335BeCopd9dwodW+/6Zdh2/dhfniJvNPmCvTvsF4u3ABwiE/OFIb4oh0MnJbHZLklEDfEgIfQ5igeDzkSoiihRIINBQddfEuQi4XFQ1IvFYAq5LiQUxxdCCRcSiiqCbWJdXYUzR1Eeh06ho74oW+LJRykCMhl1dSELOMJRJbmhLuEjcfjCLKDEYaNRD/rkGi93dYn68nd1dmp+L7jS3e3dP3FvT0/kX9NWPvIiOoFi3f04/I/Cqx0+AxP2tEd0U1d2TqdCVBCR2d0/zjku2N4ZuCnwGvsYwBANOHTPq1Yek2KWL+dLZQMPAtka6BylaxhfS5x2so5rI2xOFqTRDpsFhnj795c5SBZEV5BCjSCNW0EqM2OIxiqKrWKCYgEMB8Pe8bEQC05iG6qrLUAcA7TEJUwTFqqWhRdphgEKFF3/zyVeXVKjL782R7+96rKPXHlD5tghGvKZP+SCi+RLGxSgsx/93eTvC/vp3PwIpzTsTpflgfJZ+wrVjmRgFhXicd7+R8zvcxmP+RnF5LArOHa7zTeBxCcFPpvgqzX/ModS0pzAcW77fal1OcpMbwtFgyKP9kVPfQLBf4qdNO5JYDw+o8TTaSTOZpPJo1A9dfEu1m6fB0pYRL3JLBKXgHIko+UqYzEtQpX8LSRaon4wc+REIoK1HFSTZ71nsxfUiznjZzKJQOcWTYo0UCIRT/MZTyST4JTHfDC0GFGAm4TD7nrUy7zeKPpIfL8QTeXOeObPFQqvSSGrqFclRjKXwTUp0RdpzUTcyivnb2t3L6oX7jiP1Uc2jMaS2dPu3ztJd3BhoznLHahp6Zlyyn2lwpkWgOInNJJz/bQ462XZE08jkYXq3xVYeCH0vcWxET5alvdTvxUH1jBd7186S3ZUpsDq6b6DQXpL73IbdOHHz7UG3qFzWdWS5u9avT4zcnSyNmc122Uqun8mDxTDwNrq4EWomiYSK+So59VJtHMsi9frrhLA1ySmSFJNuF4UGj5T6DqIsIxmWVCO+9O6A2ve+cMAkP9WQ9SbPWgGHkC46AfFkzlgLL9fDfZBSrIiueBXKQYLuOMpG7JzBDHlu/MT28LTgW18u/C0AzpnZNrFX7ZvkR3/vd8JHAfIQmiIHmJO6OAH/w67PbeNqsN+ktYHbnypOWpJEjxaA/33yvJ69Ym1941dNyX+0Oq5sGpU6H5yT+8+v1KK+bx3zM6UxHNW/3WjSrnk93uOVEPpYeVFq+akueoG+jldMjr06TUsOKvDDzxwgB/NQOBoo5QyzsgsY5RQLo9sFfIeo8cxItTncNbp/OSTDWpw5EJaMuaLCSgUyqJUqAsxJTHTJJpevpzdbp292LkqNPfcCj5svNrDjB0r556EeHr7PvL6Z7vfdV3q5mdltSLZkhX+02VxgMS7R8CmPH6PndrHp9CuPvmAiJZR0iKr5r51iAfH8g8xBk6Itfue9Hsh5otRy4vbbm7hRztzq8/55jua1a0B4omUn2jLr2iqhJ/R96fdcU85edH3zD/vy9WmGiq4J4IjvnOVrJH1aVeBwdsWrF6F2zmzGYbchVe8oza5D3km83NxPx98KeVqf1LqMWR6HYZc9AwRQzwLcE2X6GvmNOoDmL9AAM/qdEVXdNXAyiEcagv67Gj+viC5gzy545538oOcUAdwkgOcyTaXHdnmDH/7FD9A2KHpxG9uIUi5PJtCKMDdDtLQ5CLgkoV7TVjxGPM0ovmCMdVrLrDocFo32s8bhhU8tG7/PX3V2QcVvVU7tC7UL8X9aw/l7rbedKO60TI7rphoskN4xjY94HymfuVWD8IryQIbYiH+2hGFoFoqBM5mHyHt4ckHz+6duM8Vu3ANlz9+X0YnTaHXFf74JwzNasRT4ov6Vfus9FEfldMMeABKjjHUQgviYKZkHS9PkMkSXBEvCa6yhARZudIJYj4Dfqy0mgRG4b0ZS5HZmNpPRF2anxoTQcQ85Rx4dswoHPloNI4iLr+Tb7sGsvd/QjdUP30/6ZcZHqNGY3MtNVRTGD8QEzoQNyVz4L83rIdwfC241Wk2OzaQTXWYzQzGUQT6zqVL7z0G+d454m0c+MTbZuSqCKWSUOU6c/uVBKHMVTlNpsUGq0VukslMcssJ0AgmmUV+HCiSMRUcl60KEfRDh52Ha+Ahp0c9c/BxVvP25iFzlaVq8GP1aDXQLFBmh4ZmKwftZbNDlczh4TcnF4u8vhEtEX3jJcIf63Ev9++/d89v27a5ZSH3ZMxjvUUP1PGDgaanXGgyB8Pf7tu3o6AAhg36W7r6Wz/dOms4dap12CoQAxMQC4gnreB6v1FlvKHEVbhDiR0qEax/477I8Re5DAfIN40oLHK5RaFWyCwWeRBjl4tS5ecAa4Ce98g/0qc3MZhCZrbIFZuN26UJUvDGpzLPZqD9v5nF1WULE85D42aOU46bMS4C/VtNKy4+8vyrpq4F6qQExnj0Q2X7uulrRO1sj5nK0b0JHPEP1QiLFx2AoXsY9foqtTvvosr3RrFvXp5gntvuc24CPocrcrs7gtFa3RpmlT+hM3Mxt328txEHQAf7Ty7WRKrl7GXM1qX/4Y0x0AnH4rjcQz9hu6Jb5TdkDr4ccOppNalUMl/TwZ+71f3aZL7qfgiFuhezg7vulIT6wLBFLVtfj0kCZpnMbE2fWWZNVA+rEKnZRY3FTWyTSG4hE6AJqPB/HhsovLNLs+uOZqnt8rwOsdfDr97cybb/zmoJDNtQD7CU7twiNfPc2m/l1yXPaS1J5hrdmeL30eON4/c8Jn6guIfSmalpJTl1X23CWvlsfnjevNz68OVkiruvOwbW97QpuJNXGjS8nBI2C8YmwsfSFiz3z7sHiY7vfJnvdFgsyZLjzExWDjs+LFMbZh0NXnz00P8jbcNtDsOWLyl5RZA0P9OQrp/GKmJPFFm1jh1J+kKdrjBayo1NWRYyljxUBInMlaWb9HvgZD+/i7FcaXSRTluol3DiUpR9W0Pl8rrxC53t2BKqqDBZ/q4LfDr8M3HS5LQS/9niuQy7W74xQ6vMzcCX4MTXhTbELQVarS+1eSccintlChZUidOTLWP21k2L0k6ryqBp2io56kGgH+9qh5poIGGeWw7rdwmo2gepIehYw82y+jp6pWMVIMAuoM6sy4zVt66VmOwqnFlXv/oKq9eSFv1KUEM+jqluTKuvY4IP1XkJezkj+AjoI96MO5qMzcYbTeqCVLh5Moa/B8zGh0xhzXhzjUGLa2tw5HhT+o3hCn4FBMa46S8oPoKDgLXPWtpaKrpFSuT7Knwfamr6E/9zv3AQ8CWsoBVRhVnbNrfZ5jizsSa9vjibY2phIhckgBk/csWt4LeX/icahcv2vLDNuc9bdrd0TyFFnurjnDPnOXfxjbKzv9RRi9L5halHmDZbYKvmMxHpDFGRmgkfWJypb/tF1qRd++LS26fKATYZH8XLvG/dcqTyLZrEwVeO4qNKQ0zyZDZ2ssIh+uMxT+bgyS24rxc2mez2zMya5+5uxgKoHgvsRnuzHYfqRjt48Ar5vxdxySlf9xXc6y+4PDPLRJuxalF/v7PP2X8MN2MvKWNvskjyMP9XUHuwZhJkVWeGlRxBJ9OKZBOkGamRFs1VSR57EicOv2XcDeVAuZIkn5jSgpXhMXgGZFbEyyaspmRQCEmqND0rOE3eRkqTEUEyq9jiSrhm5q81yZOCttz+TN5ONqU3fRvrn+SiQYvrGzxmhdqESzb/hcrb7sVCrdX19Th1PS9GEJe/K4vU2h7FS5ks/PJlCLSyRNjFntY/cv9o7bmINYsX8sVXxPyF4hFV/OjBXO67XMxbUKeOCDWCK0K18D5895txYbzwiiABZDavX08R6tJX3doxOKdg2rpjety7VyRKufxnYuLMIjKJL9Fl/DRn8+be8cv095rQtRea3+7cObkCowoE1YVc10rmps2VG2m/d/NedXR02nL1n7SRz8nPKB1VoDx772S6b87yZeN1t20OgsghHCvKA2WJJrm9aoXj+ioIx/aXGu6GLjRClOjaNK/hJthBap6Pf9CkdPyKEw1GY1tjUwO0uSL4nHZd0/yvmsrN8+YDn/jBGZMC8qUrV0rzAyY5Ew16N5wvnRTgtDEtNtQWRxdotQXRxc8d+ZwCbbHuOcRk07l0f2F0jCt99rL1cSTixENLNRDJHJFKW1qGZ0JYy7iE+8QadC8ckVgkORIxEFt4UZLqabPteAjyjlNtIwHC4ma4uw/0PNAVu8gxXWFL682lpefPty1dFhsLHNgYOSqgVtpgpppJZu7YGRk5NKgkqz1criwihoaY7st/8c6CynhmWYbpHgXe6l+cv4hn0XbMZ9gq2Uk7bmFfkizNx2ljBp4v+tuq9HT1yH9uZ/Trcx8reWLevgJdFBj+bDYLpvOnCLVv7drpAkXmg55GzIJnpSOLnU6Rp9bWsjV0NWLO/7hwGB/mfrvIzd0XYjgG3lwWxiOasJqjFvQJExo0TIzgkhnFFSLxQHfg+cLD1sRyIvHyNfzaFcJUbjUdWSjAA02ZsllT62oWOGVcN16/PIjyiYcX8A2B1kwCZ1jB/LEY2tg3UcgZAKmWt0FkwT8h7EnZtqQTmU/02JgpBpEhBMYGl/E6pEhIMOKWBW9EyJPhaalR8E+qBsDYkZ+Qp5FtWnZRpyksJfUooqtV/0hnsHt0mWD4+SGHNYVWIJ6qnbxK0jL5fzwpzoeqODL8xKEOQhYhtbwEaaQ21d6ceE+8uVgeGd54qn4X7WSnliIlOWlXdxIPq3cFJ7rI8z/kkh72pfOmuuvfUjAyCAA0Af3rqwUYVy98xZ8C8O2YkAjoL1QcMtgKDf2/9Hy9Ju6N8KS1vNAk/IeA358yqLbC9/zfk+oXqHguAP7ZpnqAnxCDfFBdg0HxhgIgqroM7CR37RgywEACFzv3AFDXahycnAaWgVKAAEhCAQRlYAEeYwMuEAc7uI9AAbi/GlMIvKAbisD9dAwCDCJ9MwxaoAnDsfqpjX/HUGP7i6pzQDXWQ2/yjzQ1wtlL8Wx1ZT+JSdHIZ6d7li7Vq1mZlSpt9kPYLioEyaLKJzkrarP4djyW+KwLJ+0TVj+18e8Y6jNC+0Ub7RxQ19RHk7D2j9aQ4H0Tzl6KZ5/2n4x9T4hGXjvdRS1dTtqrUa3MeF2lVdmPWIlPCBTkyKK9/kkO86IOoce3I+2o9MsLFwsdt6xXNUrOEmBFgS70oA8DGMIIxjCBKXxhkr4c/utWnW6vPxiOxpPpbL5Yrtab7W5/OJ7Ol+vt/ni+3h9MKONC6oZp2Y7r8QVCkVgilcl9/fg1bAVWlVKF1ggPUFWuqYvJDRyyo9B3Naqt2kju6yS3XEknfzCcpmFPRto2jEYbq/gz+yo/cxJE89hcDdThXTy3nCZO2BSdke85ife+U0mp69Kl687W85Rcn25Jy6OOjhg7+KfYcpSngKnuqr5B2YQE5f6U1WS9SpvY3z45x56jbIhU2iA0nPLZDoOgb7gatXhr2uZBvZb4PMopZY7AwjRlsRxDkCvR/Rg4irpEcb/0i9hKg74dyU9nM+FcynJpOBr3talq6yW80CS1MRTJvVx5pOHMgJV5PRtTokpKGZ05c0IvhnPqW6BWRtnCmRBslMgsw88mAUIFCgQGDQgwXCGBgwA1fMEJbpB7aOEMEe5wgRIeTwAA);\n font-weight: normal;\n font-style: normal;\n}\n.ag-theme-balham, .ag-theme-balham-dark, .ag-theme-balham-auto-dark {\n --ag-balham-active-color: #0091ea;\n --ag-foreground-color: #000;\n --ag-background-color: #fff;\n --ag-header-background-color: #f5f7f7;\n --ag-tooltip-background-color: #cbd0d3;\n --ag-subheader-background-color: #e2e9eb;\n --ag-control-panel-background-color: #f5f7f7;\n --ag-border-color: #bdc3c7;\n --ag-odd-row-background-color: #fcfdfe;\n --ag-row-hover-color: #ecf0f1;\n --ag-column-hover-color: #ecf0f1;\n --ag-input-border-color: #95a5a6;\n --ag-invalid-color: #e02525;\n --ag-input-disabled-background-color: #ebebeb;\n --ag-checkbox-unchecked-color: #7f8c8d;\n --ag-input-focus-border-color: #719ECE;\n --ag-advanced-filter-join-pill-color: #f08e8d;\n --ag-advanced-filter-column-pill-color: #a6e194;\n --ag-advanced-filter-option-pill-color: #f3c08b;\n --ag-advanced-filter-value-pill-color: #85c0e4;\n --ag-input-focus-box-shadow: 0 0 2px 1px var(--ag-input-focus-border-color);\n --ag-range-selection-border-color: var(--ag-balham-active-color);\n --ag-checkbox-checked-color: var(--ag-balham-active-color);\n --ag-checkbox-background-color: var(--ag-background-color);\n --ag-panel-background-color: var(--ag-header-background-color);\n --ag-secondary-foreground-color: rgba(0, 0, 0, 0.54);\n --ag-disabled-foreground-color: rgba(0, 0, 0, 0.38);\n --ag-subheader-toolbar-background-color: rgba(226, 233, 235, 0.5);\n --ag-row-border-color: rgba(189, 195, 199, 0.58);\n --ag-chip-background-color: rgba(0, 0, 0, 0.1);\n --ag-range-selection-background-color: rgba(0, 145, 234, 0.2);\n --ag-range-selection-background-color-2: rgba(0, 145, 234, 0.36);\n --ag-range-selection-background-color-3: rgba(0, 145, 234, 0.49);\n --ag-range-selection-background-color-4: rgba(0, 145, 234, 0.59);\n --ag-selected-row-background-color: rgba(0, 145, 234, 0.28);\n --ag-header-column-separator-color: rgba(189, 195, 199, 0.5);\n --ag-input-disabled-border-color: rgba(149, 165, 166, 0.3);\n --ag-header-column-separator-display: block;\n --ag-header-column-separator-height: 50%;\n --ag-grid-size: 4px;\n --ag-icon-size: 16px;\n --ag-row-height: calc(var(--ag-grid-size) * 7);\n --ag-header-height: calc(var(--ag-grid-size) * 8);\n --ag-list-item-height: calc(var(--ag-grid-size) * 6);\n --ag-row-group-indent-size: calc(var(--ag-grid-size) * 3 + var(--ag-icon-size));\n --ag-cell-horizontal-padding: calc(var(--ag-grid-size) * 3);\n --ag-input-height: calc(var(--ag-grid-size) * 4);\n --ag-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;\n --ag-font-size: 12px;\n --ag-icon-font-family: agGridBalham;\n --ag-border-radius: 2px;\n --ag-checkbox-border-radius: 3px;\n --ag-card-shadow: none;\n}\n\n.ag-theme-balham-dark {\n --ag-balham-active-color: #00B0FF;\n --ag-foreground-color: #F5F5F5;\n --ag-background-color: #2d3436;\n --ag-header-background-color: #1c1c1c;\n --ag-tooltip-background-color: #1c1f20;\n --ag-subheader-background-color: #111;\n --ag-control-panel-background-color: #202020;\n --ag-border-color: #424242;\n --ag-odd-row-background-color: #262c2e;\n --ag-row-hover-color: #3d4749;\n --ag-column-hover-color: #3d4749;\n --ag-input-border-color: #f0f0f0;\n --ag-input-disabled-background-color: rgba(48, 46, 46, 0.3);\n --ag-modal-overlay-background-color: rgba(45, 52, 54, 0.66);\n --ag-checkbox-unchecked-color: #ecf0f1;\n --ag-advanced-filter-join-pill-color: #7a3a37;\n --ag-advanced-filter-column-pill-color: #355f2d;\n --ag-advanced-filter-option-pill-color: #5a3168;\n --ag-advanced-filter-value-pill-color: #374c86;\n --ag-secondary-foreground-color: var(--ag-foreground-color);\n --ag-disabled-foreground-color: rgba(245, 245, 245, 0.38);\n --ag-subheader-toolbar-background-color: rgba(17, 17, 17, 0.5);\n --ag-row-border-color: #5c5c5c;\n --ag-chip-background-color: rgba(245, 245, 245, 0.08);\n --ag-range-selection-background-color: rgba(0, 176, 255, 0.2);\n --ag-range-selection-background-color-2: rgba(0, 176, 255, 0.36);\n --ag-range-selection-background-color-3: rgba(0, 176, 255, 0.49);\n --ag-range-selection-background-color-4: rgba(0, 176, 255, 0.59);\n --ag-selected-row-background-color: rgba(0, 176, 255, 0.28);\n --ag-header-column-separator-color: rgba(66, 66, 66, 0.5);\n --ag-input-disabled-border-color: rgba(240, 240, 240, 0.3);\n --ag-header-foreground-color: rgba(245, 245, 245, 0.64);\n --ag-toggle-button-off-background-color: transparent;\n --ag-toggle-button-off-border-color: var(--ag-foreground-color);\n --ag-range-selection-chart-category-background-color: rgba(26, 177, 74, 0.5);\n --ag-range-selection-chart-background-color: rgba(45, 166, 255, 0.5);\n --ag-input-focus-box-shadow: 0 0 4px 1.5px var(--ag-input-focus-border-color);\n --ag-row-loading-skeleton-effect-color: rgba(202, 203, 204, 0.4);\n color-scheme: dark;\n}\n\n@media (prefers-color-scheme: dark) {\n .ag-theme-balham-auto-dark {\n --ag-balham-active-color: #00B0FF;\n --ag-foreground-color: #F5F5F5;\n --ag-background-color: #2d3436;\n --ag-header-background-color: #1c1c1c;\n --ag-tooltip-background-color: #1c1f20;\n --ag-subheader-background-color: #111;\n --ag-control-panel-background-color: #202020;\n --ag-border-color: #424242;\n --ag-odd-row-background-color: #262c2e;\n --ag-row-hover-color: #3d4749;\n --ag-column-hover-color: #3d4749;\n --ag-input-border-color: #f0f0f0;\n --ag-input-disabled-background-color: rgba(48, 46, 46, 0.3);\n --ag-modal-overlay-background-color: rgba(45, 52, 54, 0.66);\n --ag-checkbox-unchecked-color: #ecf0f1;\n --ag-advanced-filter-join-pill-color: #7a3a37;\n --ag-advanced-filter-column-pill-color: #355f2d;\n --ag-advanced-filter-option-pill-color: #5a3168;\n --ag-advanced-filter-value-pill-color: #374c86;\n --ag-secondary-foreground-color: var(--ag-foreground-color);\n --ag-disabled-foreground-color: rgba(245, 245, 245, 0.38);\n --ag-subheader-toolbar-background-color: rgba(17, 17, 17, 0.5);\n --ag-row-border-color: #5c5c5c;\n --ag-chip-background-color: rgba(245, 245, 245, 0.08);\n --ag-range-selection-background-color: rgba(0, 176, 255, 0.2);\n --ag-range-selection-background-color-2: rgba(0, 176, 255, 0.36);\n --ag-range-selection-background-color-3: rgba(0, 176, 255, 0.49);\n --ag-range-selection-background-color-4: rgba(0, 176, 255, 0.59);\n --ag-selected-row-background-color: rgba(0, 176, 255, 0.28);\n --ag-header-column-separator-color: rgba(66, 66, 66, 0.5);\n --ag-input-disabled-border-color: rgba(240, 240, 240, 0.3);\n --ag-header-foreground-color: rgba(245, 245, 245, 0.64);\n --ag-toggle-button-off-background-color: transparent;\n --ag-toggle-button-off-border-color: var(--ag-foreground-color);\n --ag-range-selection-chart-category-background-color: rgba(26, 177, 74, 0.5);\n --ag-range-selection-chart-background-color: rgba(45, 166, 255, 0.5);\n --ag-input-focus-box-shadow: 0 0 4px 1.5px var(--ag-input-focus-border-color);\n --ag-row-loading-skeleton-effect-color: rgba(202, 203, 204, 0.4);\n color-scheme: dark;\n }\n}\n.ag-theme-balham .ag-filter-toolpanel-header,\n.ag-theme-balham .ag-filter-toolpanel-search,\n.ag-theme-balham .ag-status-bar,\n.ag-theme-balham .ag-header-row,\n.ag-theme-balham .ag-multi-filter-group-title-bar, .ag-theme-balham-dark .ag-filter-toolpanel-header,\n.ag-theme-balham-dark .ag-filter-toolpanel-search,\n.ag-theme-balham-dark .ag-status-bar,\n.ag-theme-balham-dark .ag-header-row,\n.ag-theme-balham-dark .ag-multi-filter-group-title-bar, .ag-theme-balham-auto-dark .ag-filter-toolpanel-header,\n.ag-theme-balham-auto-dark .ag-filter-toolpanel-search,\n.ag-theme-balham-auto-dark .ag-status-bar,\n.ag-theme-balham-auto-dark .ag-header-row,\n.ag-theme-balham-auto-dark .ag-multi-filter-group-title-bar {\n font-weight: 600;\n color: var(--ag-header-foreground-color);\n}\n.ag-theme-balham .ag-ltr input[class^=ag-]:not([type]), .ag-theme-balham .ag-ltr input[class^=ag-][type=text], .ag-theme-balham .ag-ltr input[class^=ag-][type=number], .ag-theme-balham .ag-ltr input[class^=ag-][type=tel], .ag-theme-balham .ag-ltr input[class^=ag-][type=date], .ag-theme-balham .ag-ltr input[class^=ag-][type=datetime-local], .ag-theme-balham .ag-ltr textarea[class^=ag-], .ag-theme-balham-dark .ag-ltr input[class^=ag-]:not([type]), .ag-theme-balham-dark .ag-ltr input[class^=ag-][type=text], .ag-theme-balham-dark .ag-ltr input[class^=ag-][type=number], .ag-theme-balham-dark .ag-ltr input[class^=ag-][type=tel], .ag-theme-balham-dark .ag-ltr input[class^=ag-][type=date], .ag-theme-balham-dark .ag-ltr input[class^=ag-][type=datetime-local], .ag-theme-balham-dark .ag-ltr textarea[class^=ag-], .ag-theme-balham-auto-dark .ag-ltr input[class^=ag-]:not([type]), .ag-theme-balham-auto-dark .ag-ltr input[class^=ag-][type=text], .ag-theme-balham-auto-dark .ag-ltr input[class^=ag-][type=number], .ag-theme-balham-auto-dark .ag-ltr input[class^=ag-][type=tel], .ag-theme-balham-auto-dark .ag-ltr input[class^=ag-][type=date], .ag-theme-balham-auto-dark .ag-ltr input[class^=ag-][type=datetime-local], .ag-theme-balham-auto-dark .ag-ltr textarea[class^=ag-] {\n padding-left: var(--ag-grid-size);\n}\n\n.ag-theme-balham .ag-rtl input[class^=ag-]:not([type]), .ag-theme-balham .ag-rtl input[class^=ag-][type=text], .ag-theme-balham .ag-rtl input[class^=ag-][type=number], .ag-theme-balham .ag-rtl input[class^=ag-][type=tel], .ag-theme-balham .ag-rtl input[class^=ag-][type=date], .ag-theme-balham .ag-rtl input[class^=ag-][type=datetime-local], .ag-theme-balham .ag-rtl textarea[class^=ag-], .ag-theme-balham-dark .ag-rtl input[class^=ag-]:not([type]), .ag-theme-balham-dark .ag-rtl input[class^=ag-][type=text], .ag-theme-balham-dark .ag-rtl input[class^=ag-][type=number], .ag-theme-balham-dark .ag-rtl input[class^=ag-][type=tel], .ag-theme-balham-dark .ag-rtl input[class^=ag-][type=date], .ag-theme-balham-dark .ag-rtl input[class^=ag-][type=datetime-local], .ag-theme-balham-dark .ag-rtl textarea[class^=ag-], .ag-theme-balham-auto-dark .ag-rtl input[class^=ag-]:not([type]), .ag-theme-balham-auto-dark .ag-rtl input[class^=ag-][type=text], .ag-theme-balham-auto-dark .ag-rtl input[class^=ag-][type=number], .ag-theme-balham-auto-dark .ag-rtl input[class^=ag-][type=tel], .ag-theme-balham-auto-dark .ag-rtl input[class^=ag-][type=date], .ag-theme-balham-auto-dark .ag-rtl input[class^=ag-][type=datetime-local], .ag-theme-balham-auto-dark .ag-rtl textarea[class^=ag-] {\n padding-right: var(--ag-grid-size);\n}\n\n.ag-theme-balham .ag-column-drop-vertical-empty-message, .ag-theme-balham .ag-status-bar, .ag-theme-balham-dark .ag-column-drop-vertical-empty-message, .ag-theme-balham-dark .ag-status-bar, .ag-theme-balham-auto-dark .ag-column-drop-vertical-empty-message, .ag-theme-balham-auto-dark .ag-status-bar {\n font-weight: 600;\n color: var(--ag-disabled-foreground-color);\n}\n.ag-theme-balham.ag-dnd-ghost, .ag-theme-balham-dark.ag-dnd-ghost, .ag-theme-balham-auto-dark.ag-dnd-ghost {\n font-size: var(--ag-font-size);\n font-weight: 600;\n}\n.ag-theme-balham .ag-tab, .ag-theme-balham-dark .ag-tab, .ag-theme-balham-auto-dark .ag-tab {\n border: 1px solid transparent;\n padding: var(--ag-grid-size) calc(var(--ag-grid-size) * 2);\n margin: var(--ag-grid-size);\n margin-bottom: -1px;\n}\n.ag-theme-balham .ag-tab-selected, .ag-theme-balham-dark .ag-tab-selected, .ag-theme-balham-auto-dark .ag-tab-selected {\n background-color: var(--ag-background-color);\n border-color: var(--ag-border-color);\n border-bottom-color: transparent;\n}\n.ag-theme-balham .ag-tabs-header, .ag-theme-balham-dark .ag-tabs-header, .ag-theme-balham-auto-dark .ag-tabs-header {\n border-bottom: 1px solid var(--ag-border-color);\n}\n.ag-theme-balham .ag-column-drop-cell, .ag-theme-balham-dark .ag-column-drop-cell, .ag-theme-balham-auto-dark .ag-column-drop-cell {\n height: calc(var(--ag-grid-size) * 6);\n}\n.ag-theme-balham .ag-column-drop-vertical-title, .ag-theme-balham-dark .ag-column-drop-vertical-title, .ag-theme-balham-auto-dark .ag-column-drop-vertical-title {\n color: var(--ag-foreground-color);\n}\n.ag-theme-balham .ag-column-drop-vertical-cell, .ag-theme-balham-dark .ag-column-drop-vertical-cell, .ag-theme-balham-auto-dark .ag-column-drop-vertical-cell {\n margin-left: calc(var(--ag-grid-size) * 2);\n margin-right: calc(var(--ag-grid-size) * 2);\n}\n.ag-theme-balham .ag-column-drop-vertical-cell-text, .ag-theme-balham-dark .ag-column-drop-vertical-cell-text, .ag-theme-balham-auto-dark .ag-column-drop-vertical-cell-text {\n margin-left: calc(var(--ag-grid-size) * 2);\n}\n.ag-theme-balham .ag-column-drop-vertical-icon, .ag-theme-balham-dark .ag-column-drop-vertical-icon, .ag-theme-balham-auto-dark .ag-column-drop-vertical-icon {\n color: var(--ag-secondary-foreground-color);\n}\n.ag-theme-balham .ag-ltr .ag-column-drop-vertical-empty-message, .ag-theme-balham-dark .ag-ltr .ag-column-drop-vertical-empty-message, .ag-theme-balham-auto-dark .ag-ltr .ag-column-drop-vertical-empty-message {\n padding-left: calc(var(--ag-icon-size) + var(--ag-grid-size) * 2);\n padding-right: var(--ag-grid-size);\n}\n\n.ag-theme-balham .ag-rtl .ag-column-drop-vertical-empty-message, .ag-theme-balham-dark .ag-rtl .ag-column-drop-vertical-empty-message, .ag-theme-balham-auto-dark .ag-rtl .ag-column-drop-vertical-empty-message {\n padding-right: calc(var(--ag-icon-size) + var(--ag-grid-size) * 2);\n padding-left: var(--ag-grid-size);\n}\n\n.ag-theme-balham .ag-column-drop-horizontal, .ag-theme-balham-dark .ag-column-drop-horizontal, .ag-theme-balham-auto-dark .ag-column-drop-horizontal {\n height: var(--ag-header-height);\n}\n.ag-theme-balham .ag-column-drop-empty, .ag-theme-balham-dark .ag-column-drop-empty, .ag-theme-balham-auto-dark .ag-column-drop-empty {\n color: var(--ag-disabled-foreground-color);\n}\n.ag-theme-balham .ag-column-drop-horizontal-cell-text, .ag-theme-balham-dark .ag-column-drop-horizontal-cell-text, .ag-theme-balham-auto-dark .ag-column-drop-horizontal-cell-text {\n margin-left: calc(var(--ag-grid-size) * 2);\n}\n.ag-theme-balham .ag-column-drop-vertical, .ag-theme-balham-dark .ag-column-drop-vertical, .ag-theme-balham-auto-dark .ag-column-drop-vertical {\n padding-top: calc(var(--ag-grid-size) * 2);\n}\n.ag-theme-balham .ag-column-select-column-readonly.ag-icon-grip,\n.ag-theme-balham .ag-column-select-column-readonly .ag-icon-grip, .ag-theme-balham-dark .ag-column-select-column-readonly.ag-icon-grip,\n.ag-theme-balham-dark .ag-column-select-column-readonly .ag-icon-grip, .ag-theme-balham-auto-dark .ag-column-select-column-readonly.ag-icon-grip,\n.ag-theme-balham-auto-dark .ag-column-select-column-readonly .ag-icon-grip {\n opacity: 0.35;\n}\n.ag-theme-balham .ag-menu-header, .ag-theme-balham-dark .ag-menu-header, .ag-theme-balham-auto-dark .ag-menu-header {\n background-color: var(--ag-header-background-color);\n}\n.ag-theme-balham .ag-overlay-loading-center, .ag-theme-balham-dark .ag-overlay-loading-center, .ag-theme-balham-auto-dark .ag-overlay-loading-center {\n background-color: var(--ag-background-color);\n border: 1px solid var(--ag-border-color);\n color: var(--ag-foreground-color);\n padding: calc(var(--ag-grid-size) * 4);\n}\n.ag-theme-balham .ag-tooltip, .ag-theme-balham-dark .ag-tooltip, .ag-theme-balham-auto-dark .ag-tooltip {\n border: none;\n}\n.ag-theme-balham .ag-panel-title-bar-button-icon, .ag-theme-balham-dark .ag-panel-title-bar-button-icon, .ag-theme-balham-auto-dark .ag-panel-title-bar-button-icon {\n font-size: calc(var(--ag-icon-size) + var(--ag-grid-size));\n}\n.ag-theme-balham .ag-panel, .ag-theme-balham-dark .ag-panel, .ag-theme-balham-auto-dark .ag-panel {\n background-color: var(--ag-header-background-color);\n}\n.ag-theme-balham .ag-chart-data-section,\n.ag-theme-balham .ag-chart-format-section,\n.ag-theme-balham .ag-chart-advanced-settings-section, .ag-theme-balham-dark .ag-chart-data-section,\n.ag-theme-balham-dark .ag-chart-format-section,\n.ag-theme-balham-dark .ag-chart-advanced-settings-section, .ag-theme-balham-auto-dark .ag-chart-data-section,\n.ag-theme-balham-auto-dark .ag-chart-format-section,\n.ag-theme-balham-auto-dark .ag-chart-advanced-settings-section {\n padding-bottom: calc(var(--ag-grid-size) * 0.5);\n}\n.ag-theme-balham .ag-group-toolbar, .ag-theme-balham-dark .ag-group-toolbar, .ag-theme-balham-auto-dark .ag-group-toolbar {\n background-color: var(--ag-subheader-toolbar-background-color);\n}\n.ag-theme-balham .ag-chart-tab, .ag-theme-balham-dark .ag-chart-tab, .ag-theme-balham-auto-dark .ag-chart-tab {\n padding-top: calc(var(--ag-grid-size) * 0.5);\n}\n.ag-theme-balham .ag-charts-format-sub-level-group-item, .ag-theme-balham-dark .ag-charts-format-sub-level-group-item, .ag-theme-balham-auto-dark .ag-charts-format-sub-level-group-item {\n margin-bottom: calc(var(--ag-grid-size) * 1.5);\n}\n.ag-theme-balham .ag-chart-menu-close, .ag-theme-balham-dark .ag-chart-menu-close, .ag-theme-balham-auto-dark .ag-chart-menu-close {\n background: var(--ag-background-color);\n}\n.ag-theme-balham .ag-chart-menu-close:hover .ag-icon, .ag-theme-balham-dark .ag-chart-menu-close:hover .ag-icon, .ag-theme-balham-auto-dark .ag-chart-menu-close:hover .ag-icon {\n border-color: var(--ag-border-color);\n}\n.ag-theme-balham .ag-chart-menu-close .ag-icon, .ag-theme-balham-dark .ag-chart-menu-close .ag-icon, .ag-theme-balham-auto-dark .ag-chart-menu-close .ag-icon {\n background: var(--ag-header-background-color);\n border: 1px solid var(--ag-secondary-border-color);\n border-right: none;\n}\n.ag-theme-balham .ag-filter-active .ag-icon-filter, .ag-theme-balham-dark .ag-filter-active .ag-icon-filter, .ag-theme-balham-auto-dark .ag-filter-active .ag-icon-filter {\n color: var(--ag-balham-active-color);\n}\n');let xc={en:{selectAll:"(Select All)",selectAllSearchResults:"(Select All Search Results)",searchOoo:"Search...",blanks:"(Blanks)",noMatches:"No matches",filterOoo:"Filter...",equals:"Equals",notEqual:"Not equal",blank:"Blank",notBlank:"Not blank",empty:"Choose One",lessThan:"Less than",greaterThan:"Greater than",lessThanOrEqual:"Less than or equal",greaterThanOrEqual:"Greater than or equal",inRange:"In range",inRangeStart:"from",inRangeEnd:"to",contains:"Contains",notContains:"Not contains",startsWith:"Starts with",endsWith:"Ends with",dateFormatOoo:"yyyy-mm-dd",andCondition:"AND",orCondition:"OR",applyFilter:"Apply",resetFilter:"Reset",clearFilter:"Clear",cancelFilter:"Cancel",textFilter:"Text Filter",numberFilter:"Number Filter",dateFilter:"Date Filter",setFilter:"Set Filter",groupFilterSelect:"Select field:",advancedFilterContains:"contains",advancedFilterNotContains:"does not contain",advancedFilterTextEquals:"equals",advancedFilterTextNotEqual:"does not equal",advancedFilterStartsWith:"starts with",advancedFilterEndsWith:"ends with",advancedFilterBlank:"is blank",advancedFilterNotBlank:"is not blank",advancedFilterEquals:"=",advancedFilterNotEqual:"!=",advancedFilterGreaterThan:">",advancedFilterGreaterThanOrEqual:">=",advancedFilterLessThan:"<",advancedFilterLessThanOrEqual:"<=",advancedFilterTrue:"is true",advancedFilterFalse:"is false",advancedFilterAnd:"AND",advancedFilterOr:"OR",advancedFilterApply:"Apply",advancedFilterValidationMissingColumn:"Column is missing",advancedFilterValidationMissingOption:"Option is missing",advancedFilterValidationMissingValue:"Value is missing",advancedFilterValidationInvalidColumn:"Column not found",advancedFilterValidationInvalidOption:"Option not found",advancedFilterValidationMissingQuote:"Value is missing an end quote",advancedFilterValidationNotANumber:"Value is not a number",advancedFilterValidationMissingCondition:"Condition is missing",advancedFilterValidationJoinOperatorMismatch:"Join operators within a condition must be the same",advancedFilterValidationInvalidJoinOperator:"Join operator not found",advancedFilterValidationMissingEndBracket:"Missing end bracket",advancedFilterValidationExtraEndBracket:"Too many end brackets",advancedFilterValidationMessage:"Expression has an error. ${variable1} - ${variable2}.",advancedFilterValidationMessageAtEnd:"Expression has an error. ${variable} at end of expression.",columns:"Columns",filters:"Filters",pivotMode:"Pivot Mode",groups:"Row Groups",rowGroupColumnsEmptyMessage:"Drag here to set row groups",values:"Values",valueColumnsEmptyMessage:"Drag here to aggregate",pivots:"Column Labels",pivotColumnsEmptyMessage:"Drag here to set column labels",group:"Group",rowDragRow:"row",rowDragRows:"rows",loadingOoo:"Loading...",loadingError:"ERR",noRowsToShow:"No Rows To Show",enabled:"Enabled",pinColumn:"Pin Column",pinLeft:"Pin Left",pinRight:"Pin Right",noPin:"No Pin",valueAggregation:"Value Aggregation",noAggregation:"None",autosizeThiscolumn:"Autosize This Column",autosizeAllColumns:"Autosize All Columns",groupBy:"Group by",ungroupBy:"Un-Group by",ungroupAll:"Un-Group All",addToValues:"Add ${variable} to values",removeFromValues:"Remove ${variable} from values",addToLabels:"Add ${variable} to labels",removeFromLabels:"Remove ${variable} from labels",resetColumns:"Reset Columns",expandAll:"Expand All Row Groups",collapseAll:"Close All Row Groups",copy:"Copy",ctrlC:"Ctrl+C",ctrlX:"Ctrl+X",copyWithHeaders:"Copy With Headers",copyWithGroupHeaders:"Copy with Group Headers",cut:"Cut",paste:"Paste",ctrlV:"Ctrl+V",export:"Export",csvExport:"CSV Export",excelExport:"Excel Export",sum:"Sum",first:"First",last:"Last",min:"Min",max:"Max",none:"None",count:"Count",avg:"Average",filteredRows:"Filtered",selectedRows:"Selected",totalRows:"Total Rows",totalAndFilteredRows:"Rows",more:"More",to:"to",of:"of",page:"Page",pageLastRowUnknown:"?",nextPage:"Next Page",lastPage:"Last Page",firstPage:"First Page",previousPage:"Previous Page",pivotColumnGroupTotals:"Total",pivotChartAndPivotMode:"Pivot Chart & Pivot Mode",pivotChart:"Pivot Chart",chartRange:"Chart Range",columnChart:"Column",groupedColumn:"Grouped",stackedColumn:"Stacked",normalizedColumn:"100% Stacked",barChart:"Bar",groupedBar:"Grouped",stackedBar:"Stacked",normalizedBar:"100% Stacked",pieChart:"Pie",pie:"Pie",doughnut:"Doughnut",line:"Line",xyChart:"X Y (Scatter)",scatter:"Scatter",bubble:"Bubble",areaChart:"Area",area:"Area",stackedArea:"Stacked",normalizedArea:"100% Stacked",histogramChart:"Histogram",histogramFrequency:"Frequency",combinationChart:"Combination",columnLineCombo:"Column & Line",AreaColumnCombo:"Area & Column",pivotChartTitle:"Pivot Chart",rangeChartTitle:"Range Chart",settings:"Settings",data:"Data",format:"Format",categories:"Categories",defaultCategory:"(None)",series:"Series",xyValues:"X Y Values",paired:"Paired Mode",axis:"Axis",navigator:"Navigator",color:"Color",thickness:"Thickness",xType:"X Type",automatic:"Automatic",category:"Category",number:"Number",time:"Time",autoRotate:"Auto Rotate",xRotation:"X Rotation",yRotation:"Y Rotation",ticks:"Ticks",width:"Width",height:"Height",length:"Length",padding:"Padding",spacing:"Spacing",chart:"Chart",title:"Title",titlePlaceholder:"Chart title - double click to edit",background:"Background",font:"Font",top:"Top",right:"Right",bottom:"Bottom",left:"Left",labels:"Labels",size:"Size",minSize:"Minimum Size",maxSize:"Maximum Size",legend:"Legend",position:"Position",markerSize:"Marker Size",markerStroke:"Marker Stroke",markerPadding:"Marker Padding",itemSpacing:"Item Spacing",itemPaddingX:"Item Padding X",itemPaddingY:"Item Padding Y",layoutHorizontalSpacing:"Horizontal Spacing",layoutVerticalSpacing:"Vertical Spacing",strokeWidth:"Stroke Width",lineDash:"Line Dash",offset:"Offset",offsets:"Offsets",tooltips:"Tooltips",callout:"Callout",markers:"Markers",shadow:"Shadow",blur:"Blur",xOffset:"X Offset",yOffset:"Y Offset",lineWidth:"Line Width",normal:"Normal",bold:"Bold",italic:"Italic",boldItalic:"Bold Italic",predefined:"Predefined",fillOpacity:"Fill Opacity",strokeOpacity:"Line Opacity",histogramBinCount:"Bin count",columnGroup:"Column",barGroup:"Bar",pieGroup:"Pie",lineGroup:"Line",scatterGroup:"X Y (Scatter)",areaGroup:"Area",histogramGroup:"Histogram",combinationGroup:"Combination",groupedColumnTooltip:"Grouped",stackedColumnTooltip:"Stacked",normalizedColumnTooltip:"100% Stacked",groupedBarTooltip:"Grouped",stackedBarTooltip:"Stacked",normalizedBarTooltip:"100% Stacked",pieTooltip:"Pie",doughnutTooltip:"Doughnut",lineTooltip:"Line",groupedAreaTooltip:"Area",stackedAreaTooltip:"Stacked",normalizedAreaTooltip:"100% Stacked",scatterTooltip:"Scatter",bubbleTooltip:"Bubble",histogramTooltip:"Histogram",columnLineComboTooltip:"Column & Line",areaColumnComboTooltip:"Area & Column",customComboTooltip:"Custom Combination",noDataToChart:"No data available to be charted.",pivotChartRequiresPivotMode:"Pivot Chart requires Pivot Mode enabled.",chartSettingsToolbarTooltip:"Menu",chartLinkToolbarTooltip:"Linked to Grid",chartUnlinkToolbarTooltip:"Unlinked from Grid",chartDownloadToolbarTooltip:"Download Chart",seriesChartType:"Series Chart Type",seriesType:"Series Type",secondaryAxis:"Secondary Axis",ariaAdvancedFilterInput:"Advanced Filter Input",ariaChecked:"checked",ariaColumn:"Column",ariaColumnGroup:"Column Group",ariaColumnList:"Column List",ariaColumnSelectAll:"Toggle Select All Columns",ariaDateFilterInput:"Date Filter Input",ariaDefaultListName:"List",ariaFilterColumnsInput:"Filter Columns Input",ariaFilterFromValue:"Filter from value",ariaFilterInput:"Filter Input",ariaFilterList:"Filter List",ariaFilterToValue:"Filter to value",ariaFilterValue:"Filter Value",ariaFilterMenuOpen:"Open Filter Menu",ariaFilteringOperator:"Filtering Operator",ariaHidden:"hidden",ariaIndeterminate:"indeterminate",ariaInputEditor:"Input Editor",ariaMenuColumn:"Press CTRL ENTER to open column menu.",ariaRowDeselect:"Press SPACE to deselect this row",ariaRowSelectAll:"Press Space to toggle all rows selection",ariaRowToggleSelection:"Press Space to toggle row selection",ariaRowSelect:"Press SPACE to select this row",ariaSearch:"Search",ariaSortableColumn:"Press ENTER to sort",ariaToggleVisibility:"Press SPACE to toggle visibility",ariaToggleCellValue:"Press SPACE to toggle cell value",ariaUnchecked:"unchecked",ariaVisible:"visible",ariaSearchFilterValues:"Search filter values",ariaRowGroupDropZonePanelLabel:"Row Groups",ariaValuesDropZonePanelLabel:"Values",ariaPivotDropZonePanelLabel:"Column Labels",ariaDropZoneColumnComponentDescription:"Press DELETE to remove",ariaDropZoneColumnValueItemDescription:"Press ENTER to change the aggregation type",ariaDropZoneColumnGroupItemDescription:"Press ENTER to sort",ariaDropZoneColumnComponentAggFuncSeparator:" of ",ariaDropZoneColumnComponentSortAscending:"ascending",ariaDropZoneColumnComponentSortDescending:"descending",ariaLabelColumnMenu:"Column Menu",ariaLabelCellEditor:"Cell Editor",ariaLabelDialog:"Dialog",ariaLabelSelectField:"Select Field",ariaLabelRichSelectField:"Rich Select Field",ariaLabelTooltip:"Tooltip",ariaLabelContextMenu:"Context Menu",ariaLabelSubMenu:"SubMenu",ariaLabelAggregationFunction:"Aggregation Function",ariaLabelAdvancedFilterAutocomplete:"Advanced Filter Autocomplete",thousandSeparator:",",decimalSeparator:".",true:"True",false:"False",invalidDate:"Invalid Date",invalidNumber:"Invalid Number",january:"January",february:"February",march:"March",april:"April",may:"May",june:"June",july:"July",august:"August",september:"September",october:"October",november:"November",december:"December"},"zh-tw":{selectAll:"(全選)",selectAllSearchResults:"(選擇所有搜尋結果)",searchOoo:"搜尋...",blanks:"(空白)",noMatches:"無符合項目",filterOoo:"篩選...",equals:"等於",notEqual:"不等於",blank:"空白",notBlank:"非空白",empty:"選擇一項",lessThan:"小於",greaterThan:"大於",lessThanOrEqual:"小於等於",greaterThanOrEqual:"大於等於",inRange:"在範圍內",inRangeStart:"從",inRangeEnd:"到",contains:"包含",notContains:"不包含",startsWith:"開始於",endsWith:"結束於",dateFormatOoo:"yyyy-mm-dd",andCondition:"且",orCondition:"或",applyFilter:"套用",resetFilter:"重設",clearFilter:"清除",cancelFilter:"取消",textFilter:"文字篩選",numberFilter:"數字篩選",dateFilter:"日期篩選",setFilter:"設定篩選",groupFilterSelect:"選擇欄位:",advancedFilterContains:"包含",advancedFilterNotContains:"不包含",advancedFilterTextEquals:"等於",advancedFilterTextNotEqual:"不等於",advancedFilterStartsWith:"開始於",advancedFilterEndsWith:"結束於",advancedFilterBlank:"空白",advancedFilterNotBlank:"非空白",advancedFilterEquals:"=",advancedFilterNotEqual:"!=",advancedFilterGreaterThan:">",advancedFilterGreaterThanOrEqual:">=",advancedFilterLessThan:"<",advancedFilterLessThanOrEqual:"<=",advancedFilterTrue:"為真",advancedFilterFalse:"為假",advancedFilterAnd:"且",advancedFilterOr:"或",advancedFilterApply:"套用",advancedFilterValidationMissingColumn:"缺少欄位",advancedFilterValidationMissingOption:"缺少選項",advancedFilterValidationMissingValue:"缺少值",advancedFilterValidationInvalidColumn:"找不到該欄位",advancedFilterValidationInvalidOption:"找不到該選項",advancedFilterValidationMissingQuote:"缺少結尾引號",advancedFilterValidationNotANumber:"值不是一個數字",advancedFilterValidationMissingCondition:"缺少條件",advancedFilterValidationJoinOperatorMismatch:"在一個條件中的連接運算子必須相同",advancedFilterValidationInvalidJoinOperator:"找不到連接運算子",advancedFilterValidationMissingEndBracket:"缺少結尾括號",advancedFilterValidationExtraEndBracket:"結尾括號過多",advancedFilterValidationMessage:"運算式有誤。${variable1} - ${variable2}。",advancedFilterValidationMessageAtEnd:"運算式有誤。運算式結尾的${variable}。",columns:"欄位",filters:"篩選器",pivotMode:"樞紐模式",groups:"列分組",rowGroupColumnsEmptyMessage:"拖曳至此以設定列分組",values:"值",valueColumnsEmptyMessage:"拖曳至此以聚合",pivots:"欄標籤",pivotColumnsEmptyMessage:"拖曳至此以設定欄標籤",group:"群組",rowDragRow:"列",rowDragRows:"列",loadingOoo:"載入中...",loadingError:"錯誤",noRowsToShow:"無資料可顯示",enabled:"啟用",pinColumn:"固定欄位",pinLeft:"固定於左",pinRight:"固定於右",noPin:"取消固定",valueAggregation:"值彙總",noAggregation:"無",autosizeThiscolumn:"自動調整此欄寬",autosizeAllColumns:"自動調整所有欄寬",groupBy:"分組依據",ungroupBy:"取消分組",ungroupAll:"取消全部分組",addToValues:"新增 ${variable} 至數值",removeFromValues:"從數值中移除 ${variable}",addToLabels:"新增 ${variable} 至標籤",removeFromLabels:"從標籤中移除 ${variable}",resetColumns:"重設欄位",expandAll:"展開所有資料群組",collapseAll:"關閉所有資料群組",copy:"複製",ctrlC:"Ctrl+C",ctrlX:"Ctrl+X",copyWithHeaders:"複製並包含標題",copyWithGroupHeaders:"複製並包含群組標題",cut:"剪下",paste:"貼上",ctrlV:"Ctrl+V",export:"匯出",csvExport:"CSV 匯出",excelExport:"Excel 匯出",sum:"總和",first:"第一",last:"最後",min:"最小",max:"最大",none:"無",count:"計數",avg:"平均",filteredRows:"篩選的資料",selectedRows:"選取的資料",totalRows:"總資料筆數",totalAndFilteredRows:"資料筆數",more:"更多",to:"到",of:"的",page:"頁",pageLastRowUnknown:"?",nextPage:"下一頁",lastPage:"最後一頁",firstPage:"第一頁",previousPage:"前一頁",pivotColumnGroupTotals:"總計",pivotChartAndPivotMode:"樞紐圖表與樞紐模式",pivotChart:"樞紐圖表",chartRange:"圖表範圍",columnChart:"柱狀圖",groupedColumn:"分組",stackedColumn:"堆疊",normalizedColumn:"100% 堆疊",barChart:"長條圖",groupedBar:"分組",stackedBar:"堆疊",normalizedBar:"100% 堆疊",pieChart:"圓餅圖",pie:"圓餅",doughnut:"環狀圓餅",line:"折線圖",xyChart:"X Y (散佈)",scatter:"散佈",bubble:"氣泡圖",areaChart:"區域圖",area:"區域",stackedArea:"堆疊",normalizedArea:"100% 堆疊",histogramChart:"直方圖",histogramFrequency:"頻率",combinationChart:"混合圖",columnLineCombo:"柱狀圖與折線圖",AreaColumnCombo:"區域圖與柱狀圖",thousandSeparator:",",decimalSeparator:".",true:"是",false:"否",invalidDate:"無效日期",invalidNumber:"無效數字",january:"一月",february:"二月",march:"三月",april:"四月",may:"五月",june:"六月",july:"七月",august:"八月",september:"九月",october:"十月",november:"十一月",december:"十二月"},"zh-cn":{selectAll:"(全选)",selectAllSearchResults:"(选择所有搜寻结果)",searchOoo:"搜寻...",blanks:"(空白)",noMatches:"无符合项目",filterOoo:"筛选...",equals:"等于",notEqual:"不等于",blank:"空白",notBlank:"非空白",empty:"选择一项",lessThan:"小于",greaterThan:"大于",lessThanOrEqual:"小于等于",greaterThanOrEqual:"大于等于",inRange:"在范围内",inRangeStart:"从",inRangeEnd:"到",contains:"包含",notContains:"不包含",startsWith:"开始于",endsWith:"结束于",dateFormatOoo:"yyyy-mm-dd",andCondition:"且",orCondition:"或",applyFilter:"套用",resetFilter:"重设",clearFilter:"清除",cancelFilter:"取消",textFilter:"文字筛选",numberFilter:"数字筛选",dateFilter:"日期筛选",setFilter:"设定筛选",groupFilterSelect:"选择字段:",advancedFilterContains:"包含",advancedFilterNotContains:"不包含",advancedFilterTextEquals:"等于",advancedFilterTextNotEqual:"不等于",advancedFilterStartsWith:"开始于",advancedFilterEndsWith:"结束于",advancedFilterBlank:"空白",advancedFilterNotBlank:"非空白",advancedFilterEquals:"=",advancedFilterNotEqual:"!=",advancedFilterGreaterThan:">",advancedFilterGreaterThanOrEqual:">=",advancedFilterLessThan:"<",advancedFilterLessThanOrEqual:"<=",advancedFilterTrue:"为真",advancedFilterFalse:"为假",advancedFilterAnd:"且",advancedFilterOr:"或",advancedFilterApply:"套用",advancedFilterValidationMissingColumn:"缺少字段",advancedFilterValidationMissingOption:"缺少选项",advancedFilterValidationMissingValue:"缺少值",advancedFilterValidationInvalidColumn:"找不到该字段",advancedFilterValidationInvalidOption:"找不到该选项",advancedFilterValidationMissingQuote:"缺少结尾引号",advancedFilterValidationNotANumber:"值不是一个数字",advancedFilterValidationMissingCondition:"缺少条件",advancedFilterValidationJoinOperatorMismatch:"在一个条件中的连接运算符必须相同",advancedFilterValidationInvalidJoinOperator:"找不到连接运算符",advancedFilterValidationMissingEndBracket:"缺少结尾括号",advancedFilterValidationExtraEndBracket:"结尾括号过多",advancedFilterValidationMessage:"表达式有误。${variable1} - ${variable2}。",advancedFilterValidationMessageAtEnd:"表达式有误。表达式结尾的${variable}。",columns:"字段",filters:"筛选器",pivotMode:"枢纽模式",groups:"列分组",rowGroupColumnsEmptyMessage:"拖曳至此以设定列分组",values:"值",valueColumnsEmptyMessage:"拖曳至此以聚合",pivots:"栏标签",pivotColumnsEmptyMessage:"拖曳至此以设定栏标签",group:"群组",rowDragRow:"列",rowDragRows:"列",loadingOoo:"载入中...",loadingError:"错误",noRowsToShow:"无数据可显示",enabled:"启用",pinColumn:"固定字段",pinLeft:"固定于左",pinRight:"固定于右",noPin:"取消固定",valueAggregation:"值汇总",noAggregation:"无",autosizeThiscolumn:"自动调整此栏宽",autosizeAllColumns:"自动调整所有栏宽",groupBy:"分组依据",ungroupBy:"取消分组",ungroupAll:"取消全部分组",addToValues:"新增 ${variable} 至数值",removeFromValues:"从数值中移除 ${variable}",addToLabels:"新增 ${variable} 至标签",removeFromLabels:"从标签中移除 ${variable}",resetColumns:"重设字段",expandAll:"展开所有数据群组",collapseAll:"关闭所有数据群组",copy:"复制",ctrlC:"Ctrl+C",ctrlX:"Ctrl+X",copyWithHeaders:"复制并包含标题",copyWithGroupHeaders:"复制并包含群组标题",cut:"剪下",paste:"贴上",ctrlV:"Ctrl+V",export:"汇出",csvExport:"CSV 汇出",excelExport:"Excel 汇出",sum:"总和",first:"第一",last:"最后",min:"最小",max:"最大",none:"无",count:"计数",avg:"平均",filteredRows:"筛选的资料",selectedRows:"选取的数据",totalRows:"总资料笔数",totalAndFilteredRows:"资料笔数",more:"更多",to:"到",of:"的",page:"页",pageLastRowUnknown:"?",nextPage:"下一页",lastPage:"最后一页",firstPage:"第一页",previousPage:"前一页",pivotColumnGroupTotals:"总计",pivotChartAndPivotMode:"枢纽图表与枢纽模式",pivotChart:"枢纽图表",chartRange:"图表范围",columnChart:"柱状图",groupedColumn:"分组",stackedColumn:"堆栈",normalizedColumn:"100% 堆栈",barChart:"直方图",groupedBar:"分组",stackedBar:"堆栈",normalizedBar:"100% 堆栈",pieChart:"圆饼图",pie:"圆饼",doughnut:"环状圆饼",line:"折线图",xyChart:"X Y (散布)",scatter:"散布",bubble:"气泡图",areaChart:"分区图",area:"区域",stackedArea:"堆栈",normalizedArea:"100% 堆栈",histogramChart:"直方图",histogramFrequency:"频率",combinationChart:"混合图",columnLineCombo:"柱状图与折线图",AreaColumnCombo:"分区图与柱状图",thousandSeparator:",",decimalSeparator:".",true:"是",false:"否",invalidDate:"无效日期",invalidNumber:"无效数字",january:"一月",february:"二月",march:"三月",april:"四月",may:"五月",june:"六月",july:"七月",august:"八月",september:"九月",october:"十月",november:"十一月",december:"十二月"}};let zc=ca(o,"AgGridVue"),Mc=ca(window,"agGridVue.AgGridVue"),Cc=zc||Mc,Dc={};function jc(n){n=Li(n=Mt(n),"\r\n","\n");let e=Ht(n=Li(n,"\r","\n"),"\n"),a=[];return Ca(e,(n=>{if(""!==Mt(n)){let t=(e=n,r="\t",o&&"number"!=typeof o&&$r(e,r,o)&&(r=o=void 0),(o=void 0===o?zo:o>>>0)?(e=oa(e))&&("string"==typeof r||null!=r&&!go(r))&&!(r=ra(r))&&Ta(e)?io(xo(e),0,o):e.split(r,o):[]);a.push(t)}var e,r,o})),a}window.ttWAgGridVue=function(n,e){if(!jt(e))return;!function(n,e){let a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=null,o=null;function t(){null!==r&&r.destroy(!0),n.setAttribute("tippystate",""),clearInterval(o)}let i={arrow:!0,theme:"dark",placement:"bottom",delay:150};a=Pt(a)?eo(i,a):i;let l=e;e||(l=n.innerHTML);let g=Tt(n.getAttribute("tippystate"));if(n.setAttribute("tippystate","5"),g)return;l=`<div style="text-align:left;">${l}</div>`;let c=wc;wc.default&&(c=wc.default),r=c(n,kc(kc({},a),{},{content:l,allowHTML:!0,onHidden(){t()},onDestroy(){r=null,t()}})),r.show(),o=setInterval((()=>{let e=n.getAttribute("tippystate");Tt(e)?(e=Xt(e),e-=1,n.setAttribute("tippystate",e),e<=0&&t()):t()}),1e3)}(n,Dc[e])};var Ac={components:{AgGridVue:Cc},props:{opt:{type:Object},height:{type:Number,default:300},filterall:{type:String,default:""}},data:function(){return{dbc:Ji(),de:null,evPaste:null,dataPasted:"",width:100,opacity:0,autoFitColumn:!1,language:"",rows:[],keys:[],columns:[],kpHead:{},defHeadMinWidth:null,defHeadMaxWidth:null,kpHeadWidth:{},kpHeadTooltip:{},defHeadAlignH:null,kpHeadAlignH:{},defHeadSort:null,kpHeadSort:{},defHeadSortMethod:null,kpHeadSortMethod:{},kpHeadFixLeft:{},defHeadFilter:null,kpHeadFilter:{},defHeadFilterType:null,kpHeadFilterType:{},defHeadDrag:null,kpHeadRender:{},kpHeadDrag:{},kpHeadCheckBox:{},kpHeadFocusHighlight:{},kpHeadHide:{},kpRowStyle:{},kpRowDrag:{},kpColStyle:{},kpColSpan:{},kpCellRender:{},kpCellTooltip:{},defCellAlignH:null,kpCellAlignH:{},defCellEditable:null,kpCellEditable:{},kpConvertKeysWhenUploadData:null,tableClickEnable:!1,rowsChange:function(){},rowChange:function(){},rowChecked:function(){},rowMouseEnter:function(){},rowMouseLeave:function(){},rowClick:function(){},rowDbClick:function(){},rowDragEnter:function(){},rowDragEnd:function(){},rowDragMove:function(){},rowDragLeave:function(){},rowDragChange:function(){},cellClick:function(){},cellDbClick:function(){},cellChange:function(){},cellMouseEnter:function(){},cellMouseLeave:function(){},filterChange:function(){},vRowMouseEnter:null,vRowMouseLeave:null,eRowMouseLeaves:[],vCellMouseEnter:null,vCellMouseLeave:null,eCellMouseLeaves:[],iRowDragEnter:null,genRowsPinnTop:null,genRowsPinnBottom:null,gridOptions:{animateRows:!0,suppressMenuHide:!0,suppressRowHoverHighlight:!1,columnHoverHighlight:!1,rowDragManaged:!0,suppressRowClickSelection:!0,singleClickEdit:!0,stopEditingWhenCellsLoseFocus:!0,getLocaleText:this.agGetLocaleText,getRowStyle:this.agGetRowStyle,pinnedTopRowData:[],pinnedBottomRowData:[]},ag:null,pathItems:["https://cdn.jsdelivr.net/npm/xlsx@0.18.5/dist/xlsx.full.min.js"]}},mounted:function(){let n=this;n.de=ol((()=>ca(n,"$refs.shell",null))),n.de.on("resize",(e=>{n.autoFitColumn&&n.fitColumns()})),n.de.on("display",(e=>{n.autoFitColumn&&n.fitColumns()})),n.evPaste=e=>{let a=event.clipboardData||window.clipboardData;n.dataPasted=a.getData("Text")},window.addEventListener("paste",n.evPaste)},beforeDestroy:function(){this.de.clear(),window.removeEventListener("paste",this.evPaste)},computed:{changeParam:function(){let n=this,e=n.opt;return n.__temp__={opt:e},n.changeOpt(),""},changeFilterall:function(){let n=this,e=n.filterall;return n.__temp__={filterall:e},n.triggerFilterChange("filterall"),""},getRowsStyle:function(n){return this.tableClickEnable?{cursor:"pointer"}:{}},filterRows:function(){let n=this.rows,e=this.filterall;if(""===e)return n;let a=Ya(n,(function(n,a){return function(n,e){let a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"anyone";if(!jt(n))return!1;if("anyone"!==a&&"all"!==a)return!1;if(Dt(e)){if(!jt(e))return!1;e=[e]}if(!Bt(e))return!1;let r=!1;if(Ca(e,(function(n){jt(n)||(r=!0)})),r)return!1;let o=0;return Ca(e,(function(e){-1!==function(n,e){return n.indexOf(e)}(n,e)&&o++})),"anyone"===a?o>0:"all"===a&&o===e.length}(oo(Mo(n),""),e)}));return a}},methods:{getGridOptions:function(){return this.gridOptions},getApi:function(){return ca(this,"$refs.agv.api",null)},agGetLocaleText:function(n){let e=function(n,e){let a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"";return n=n.toLowerCase(),ca(xc,`${n}.${e}`,a)}(this.language,n.key,n.defaultValue);return e},agGetRowStyle:function(n){let e={};return Ca(this.kpRowStyle,(function(a,r){let o=a,t=ca(n.data,r);Ft(o)&&(e=eo(e,o(t)))})),e},triggerRowDragChange:function(n,e,a,r){let o=this;n!==e&&(o.iRowDragEnter=e,ao(o,"opt.rows",r),o.rowDragChange(n,e,a,r),o.rowsChange(r))},agRowDragEnter:function(n){let e=ca(n,"node.rowIndex","");this.iRowDragEnter=e;let a=ca(n,"node.data",null);this.rowDragEnter(e,-1,a)},agRowDragEnd:function(n){let e=this,a=ca(n,"node.rowIndex",""),r=ca(n,"node.data",null),o=e.getNowData();e.rowDragEnd(e.iRowDragEnter,a,r,o),e.triggerRowDragChange(e.iRowDragEnter,a,r,o)},agRowDragMove:function(n){let e=ca(n,"node.rowIndex",""),a=ca(n,"node.data",null);this.rowDragMove(this.iRowDragEnter,e,a)},agRowDragLeave:function(n){let e=this,a=ca(n,"node.rowIndex",""),r=ca(n,"node.data",null),o=e.getNowData();e.rowDragLeave(e.iRowDragEnter,a,r,o),e.triggerRowDragChange(e.iRowDragEnter,a,r,o)},agRowSelect:function(n){let e=za(n.api.getSelectedNodes(),(n=>({rowInd:Xt(n.id),rowIndShow:n.rowIndex,data:n.data})));this.rowChecked(ut(e))},agCellClick:function(n){this.cellClick(n.colDef.field,n.data),this.rowClick(n.colDef.field,n.data)},agCellDbClick:function(n){this.cellDbClick(n.colDef.field,n.data),this.rowDbClick(n.colDef.field,n.data)},agCellChange:function(n){let e=this;n.oldValue!==n.newValue&&(e.refresh(),e.cellChange(n.colDef.field,n.data,e.rows),e.rowChange(n.colDef.field,n.data,e.rows),e.rowsChange(e.rows),e.setRowsPinnBottom(e.rows))},agFilterChanged:function(n){this.triggerFilterChange("heads")},agReady:function(n){let e=this;e.ag=n,e.autoFitColumn&&e.fitColumns(!1),e.setRowsPinnTop(e.rows),e.setRowsPinnBottom(e.rows),e.opacity=1},leaveTable:function(){let n=this;n.emitCellMouseLeaves(),n.emitRowMouseLeaves(),n.vRowMouseEnter=null,n.vRowMouseLeave=null,n.vCellMouseEnter=null,n.vCellMouseLeave=null},emitCellMouseLeaves:function(){let n=this;Ca(n.eCellMouseLeaves,(e=>{n.cellMouseLeave(ut(e.field),ut(e.data))})),n.eCellMouseLeaves=[]},emitRowMouseLeaves:function(){let n=this;Ca(n.eRowMouseLeaves,(e=>{n.rowMouseLeave(ut(e.field),ut(e.data))})),n.eRowMouseLeaves=[]},agCellMouseEnter:function(n){let e=this,a={field:n.colDef.field,data:n.data},r={data:n.data};if(!Ka(e.vCellMouseEnter,a)){e.emitCellMouseLeaves();let r=ut(n.colDef.field),o=ut(n.data);e.vCellMouseEnter=a,e.cellMouseEnter(r,o),e.eCellMouseLeaves.push({field:r,data:o})}if(!Ka(e.vRowMouseEnter,r)){e.emitRowMouseLeaves();let a=ut(n.colDef.field),o=ut(n.data);e.vRowMouseEnter=r,e.rowMouseEnter(a,o),e.eRowMouseLeaves.push({field:a,data:o}),e.vRowMouseLeave={data:ut(n.data)}}},agCellMouseLeave:function(n){let e=this;if(n.event.target.contains(n.event.relatedTarget))return;let a=null;try{a=n.event.target.getAttribute("role")}catch(n){}if("gridcell"!==a)return;let r={field:ut(n.colDef.field),data:ut(n.data)},o={data:ut(n.data)};Ka(e.vCellMouseLeave,r)||(e.vCellMouseLeave=r,e.emitCellMouseLeaves()),Ka(e.vRowMouseLeave,o)||(e.vRowMouseLeave=o,e.emitRowMouseLeaves())},agCellKeyDown:function(n){let e=this;if(!n.event.ctrlKey||"KeyV"!==n.event.code)return;let a=n.rowIndex,r=n.column.colId;e.getApi().stopEditing(),e.pasteText(e.dataPasted,a,r)},pasteText:function(n,e=null,a=null){let r=this,o=[],t=[];if(r.getApi().forEachNodeAfterFilterAndSort((function(n,e){o.push(n.id),t.push(n.data)})),0===Ga(o))return;let i=r.getApi().getAllGridColumns();if(i=za(i,((n,e)=>n.getId())),0===Ga(i))return;let l=r.getApi().getColumnState(),g={},c={};if(Ca(l,(n=>{g[n.colId]=n.hide,c[n.colId]=null!==n.pinned})),g[a])return;let d=null;c[a]&&(d=a);let p=r.getApi().getColumnDefs(),s={};Ca(p,(n=>{s[n.field]=n.editable}));let u=jc(n);null===e&&(e=0),null===a&&(a=i[0]);let f=null,v=null;try{f=Ga(u)}catch(n){return}try{v=Ga(u[0])}catch(n){return}let h=-1,m=r.rows,w=[];for(let n=0;n<Ga(i);n++){let r=i[n];if(!g[r]){if(d){if(!c[r])continue;if(d===r)d=!0;else if(!0!==d)continue}else if(c[r])continue;if(r===a?h=0:h>=0&&(h+=1),h>=0&&h<v){let n=h,a=r;if(!s[a])continue;for(let r=0;r<f;r++){let t=r;if(e+r<Ga(o)){let i=o[e+r];m[i][a]=u[t][n],w.push(m[i])}}}}}r.getApi().applyTransaction({update:w}),ao(r,"opt.rows",m),r.rowsChange(m)},refresh:async function(){let n=this;await ci(1);try{n.getApi().redrawRows()}catch(n){}},keys2columns:function(n){let e=this,a=za(n,(function(a){let r={};r.field=a,r.headerName=e.kpHead[a],r.sortable=e.kpHeadSort[a];let o=e.kpHeadSortMethod[a];if(Ft(o)?r.comparator=o:"auto"===o&&(r.comparator=function(n,e,a,r,o){let t=Nt(n),i=Nt(e);if(t&&i)return 0;if(t)return-1;if(i)return 1;if(Tt(n)&&Tt(e))return _t(n)-_t(e);if(jt(n)&&jt(e)){let a=Ga(n),r=Ga(e);return a!==r?a-r:n.localeCompare(e)}return 0}),e.kpHeadFilter[a]){let n=e.kpHeadFilterType[a];r.filter="text"===n?"agTextColumnFilter":"time"===n?"agDateColumnFilter":"set"===n?"agSetColumnFilter":"agNumberColumnFilter"}else r.filter=!1;r.floatingFilter=e.kpHeadFilter[a],r.filterParams={},r.suppressFloatingFilterButton=!0,r.suppressMovable=!e.kpHeadDrag[a],r.resizable=!0,r.editable=e.kpCellEditable[a],e.kpHeadCheckBox[a]&&(r.headerCheckboxSelection=!0,r.headerCheckboxSelectionFilteredOnly=!0,r.checkboxSelection=!0),e.kpHeadFocusHighlight[a]||(r.cellClass="no-border");let t=e.kpHeadTooltip[a],i="";if(Ft(t)){let n=t(e.kpHead[a],a);n=Zt(n);let r=Xi(n);Dc[r]=n,i=`onmouseenter="ttWAgGridVue(this,'${r}')"`}let l={left:"flex-start",center:"center",right:"flex-end"}[e.kpHeadAlignH[a]],g=`\n <div class="ag-cell-label-container" role="presentation"" ${i}>\n <span ref="eMenu" class="ag-header-icon ag-header-cell-menu-button"></span>\n <div ref="eLabel" class="ag-header-cell-label" style="justify-content:${l};" role="presentation">\n <span ref="eText" class="ag-header-cell-text" role="columnheader"></span>\n <span ref="eSortOrder" class="ag-header-icon ag-sort-order ag-hidden" ></span>\n <span ref="eSortAsc" class="ag-header-icon ag-sort-ascending-icon ag-hidden" ></span>\n <span ref="eSortDesc" class="ag-header-icon ag-sort-descending-icon ag-hidden" ></span>\n <span ref="eSortMixed" class="ag-header-icon ag-sort-mixed-icon ag-hidden"></span>\n <span ref="eSortNone" class="ag-header-icon ag-sort-none-icon ag-hidden" ></span>\n <span ref="eFilter" class="ag-header-icon ag-filter-icon"></span>\n </div>\n </div>\n `;if(Pt(e.kpHeadRender)){let o=r.headerName;if(Et(e.kpHeadRender,a)){let t=e.kpHeadRender[a];Ft(t)&&(o=t(r.headerName,a,n))}g=`\n <div class="ag-cell-label-container" role="presentation"" ${i}>\n <span ref="eMenu" class="ag-header-icon ag-header-cell-menu-button"></span>\n <div ref="eLabel" class="ag-header-cell-label" style="justify-content:${l};" role="presentation">\n <span class="ag-header-cell-text" role="columnheader">${o}</span>\n <span ref="eSortOrder" class="ag-header-icon ag-sort-order" ></span>\n <span ref="eSortAsc" class="ag-header-icon ag-sort-ascending-icon" ></span>\n <span ref="eSortDesc" class="ag-header-icon ag-sort-descending-icon" ></span>\n <span ref="eSortNone" class="ag-header-icon ag-sort-none-icon" ></span>\n <span ref="eFilter" class="ag-header-icon ag-filter-icon"></span>\n </div>\n </div>\n `}r.headerComponentParams={template:g};let c=e.kpColSpan[a];Ft(c)&&(r.colSpan=function(n){let e=ca(n,"data",{}),r=ca(e,a),o=c(r,a,e,n);return Tt(o)||(o=1),o=Xt(o),o<1&&(o=1),o});let d=e.kpCellTooltip[a],p=e.kpCellRender[a];r.cellRenderer=function(n){if(Ft(d)){let e=d(n.value,n.colDef.field,ut(n.data));e=Zt(e);let a=Xi(e);Dc[a]=e,n.eGridCell.setAttribute("onmouseenter",`ttWAgGridVue(this,'${a}')`)}let e=n.value;return Ft(p)&&(e=p(n.value,n.colDef.field,ut(n.data))),e};let s={"text-align":e.kpCellAlignH[a]},u=e.kpColStyle[a];if(Ft(u)&&(s=eo(s,u())),r.cellStyle=s,Wt(e.kpHeadFixLeft[a])&&(r.pinned=e.kpHeadFixLeft[a]?"left":""),Tt(e.kpHeadWidth[a])){let n=_t(e.kpHeadWidth[a]);r.width=n}Tt(e.defHeadMinWidth)&&(r.minWidth=e.defHeadMinWidth),Tt(e.defHeadMaxWidth)&&(r.maxWidth=e.defHeadMaxWidth);let f=!1;Wt(e.kpRowDrag[a])&&(f=e.kpRowDrag[a]),r.rowDrag=f;let v=!1;return Wt(e.kpHeadHide[a])&&(v=e.kpHeadHide[a]),r.hide=v,r}));return a},changeOpt:function(){let n=this;if(!Pt(n.opt))return;if(!Bt(ca(n,"opt.keys")))return void console.log("invalid opt.keys");if(!St(ca(n,"opt.rows")))return void console.log("invalid opt.rows");function e(n,e,a){let r={};return Ca(n,(function(n){let o=e(n);Ct(a)&&Et(a,n)&&(o=a[n]),r[n]=o})),r}let a=!1;Wt(n.opt.autoFitColumn)&&(a=n.opt.autoFitColumn),n.autoFitColumn=a,n.keys=n.opt.keys,n.kpHead=e(n.keys,(function(n){return n}),n.opt.kpHead),n.kpHeadTooltip={},Ct(n.opt.kpHeadTooltip)&&(n.kpHeadTooltip=n.opt.kpHeadTooltip),n.defHeadAlignH="center",Lt(n.opt.defHeadAlignH,["left","center","right"])&&(n.defHeadAlignH=n.opt.defHeadAlignH),n.kpHeadAlignH=e(n.keys,(function(e){return n.defHeadAlignH}),n.opt.kpHeadAlignH),n.defHeadSort=!0,Wt(n.opt.defHeadSort)&&(n.defHeadSort=n.opt.defHeadSort),n.kpHeadSort=e(n.keys,(function(e){return n.defHeadSort}),n.opt.kpHeadSort),n.defHeadSortMethod=null,(Ft(n.opt.defHeadSortMethod)||jt(n.opt.defHeadSortMethod))&&(n.defHeadSortMethod=n.opt.defHeadSortMethod),n.kpHeadSortMethod=e(n.keys,(function(e){return n.defHeadSortMethod}),n.opt.kpHeadSortMethod),n.kpHeadFixLeft={},Pt(n.opt.kpHeadFixLeft)&&(n.kpHeadFixLeft=n.opt.kpHeadFixLeft),n.defHeadFilter=!0,Wt(n.opt.defHeadFilter)&&(n.defHeadFilter=n.opt.defHeadFilter),n.kpHeadFilter=e(n.keys,(function(e){return n.defHeadFilter}),n.opt.kpHeadFilter),n.defHeadFilterType="num",Lt(n.opt.defHeadFilterType,["num","text","time","set"])&&(n.defHeadFilterType=n.opt.defHeadFilterType),n.kpHeadFilterType=e(n.keys,(function(e){return n.defHeadFilterType}),n.opt.kpHeadFilterType),n.kpHeadRender={},Pt(n.opt.kpHeadRender)&&(n.kpHeadRender=n.opt.kpHeadRender),n.defHeadDrag=!0,Wt(n.opt.defHeadDrag)&&(n.defHeadDrag=n.opt.defHeadDrag),n.kpHeadDrag=e(n.keys,(function(e){return n.defHeadDrag}),n.opt.kpHeadDrag),n.kpHeadCheckBox=e(n.keys,(function(n){return!1}),n.opt.kpHeadCheckBox),n.kpHeadFocusHighlight=e(n.keys,(function(n){return!0}),n.opt.kpHeadFocusHighlight),n.kpHeadHide={},Pt(n.opt.kpHeadHide)&&(n.kpHeadHide=n.opt.kpHeadHide),n.kpRowStyle={},Pt(n.opt.kpRowStyle)&&(n.kpRowStyle=n.opt.kpRowStyle),n.kpRowDrag={},Pt(n.opt.kpRowDrag)&&(n.kpRowDrag=n.opt.kpRowDrag),n.genRowsPinnTop=null,Ft(n.opt.genRowsPinnTop)&&(n.genRowsPinnTop=n.opt.genRowsPinnTop),n.genRowsPinnBottom=null,Ft(n.opt.genRowsPinnBottom)&&(n.genRowsPinnBottom=n.opt.genRowsPinnBottom),n.kpColStyle={},Pt(n.opt.kpColStyle)&&(n.kpColStyle=n.opt.kpColStyle),n.kpColSpan={},Pt(n.opt.kpColSpan)&&(n.kpColSpan=n.opt.kpColSpan),n.defHeadMinWidth=null,Tt(n.opt.defHeadMinWidth)&&(n.defHeadMinWidth=n.opt.defHeadMinWidth),n.defHeadMaxWidth=null,Tt(n.opt.defHeadMaxWidth)&&(n.defHeadMaxWidth=n.opt.defHeadMaxWidth),n.kpHeadWidth={},Pt(n.opt.kpHeadWidth)&&(n.kpHeadWidth=n.opt.kpHeadWidth),n.kpCellRender={},Pt(n.opt.kpCellRender)&&(n.kpCellRender=n.opt.kpCellRender),n.kpCellTooltip={},Pt(n.opt.kpCellTooltip)&&(n.kpCellTooltip=n.opt.kpCellTooltip),n.defCellAlignH="center",Lt(n.opt.defCellAlignH,["left","center","right"])&&(n.defCellAlignH=n.opt.defCellAlignH),n.kpCellAlignH=e(n.keys,(function(e){return n.defCellAlignH}),n.opt.kpCellAlignH),n.defCellEditable=!1,Wt(n.opt.defCellEditable)&&(n.defCellEditable=n.opt.defCellEditable),n.kpCellEditable=e(n.keys,(function(e){return n.defCellEditable}),n.opt.kpCellEditable),n.tableClickEnable=!1,n.rowsChange=function(){},Ft(n.opt.rowsChange)&&(n.rowsChange=n.opt.rowsChange),n.rowClick=function(){},Ft(n.opt.rowClick)&&(n.rowClick=n.opt.rowClick,n.tableClickEnable=!0),n.rowDbClick=function(){},Ft(n.opt.rowDbClick)&&(n.rowDbClick=n.opt.rowDbClick,n.tableClickEnable=!0),n.rowChange=function(){},Ft(n.opt.rowChange)&&(n.rowChange=n.opt.rowChange),n.rowChecked=function(){},Ft(n.opt.rowChecked)&&(n.rowChecked=n.opt.rowChecked),n.rowMouseEnter=function(){},Ft(n.opt.rowMouseEnter)&&(n.rowMouseEnter=n.opt.rowMouseEnter),n.rowMouseLeave=function(){},Ft(n.opt.rowMouseLeave)&&(n.rowMouseLeave=n.opt.rowMouseLeave),n.rowDragEnter=function(){},Ft(n.opt.rowDragEnter)&&(n.rowDragEnter=n.opt.rowDragEnter),n.rowDragEnd=function(){},Ft(n.opt.rowDragEnd)&&(n.rowDragEnd=n.opt.rowDragEnd),n.rowDragMove=function(){},Ft(n.opt.rowDragMove)&&(n.rowDragMove=n.opt.rowDragMove),n.rowDragLeave=function(){},Ft(n.opt.rowDragLeave)&&(n.rowDragLeave=n.opt.rowDragLeave),n.rowDragChange=function(){},Ft(n.opt.rowDragChange)&&(n.rowDragChange=n.opt.rowDragChange),n.cellClick=function(){},Ft(n.opt.cellClick)&&(n.cellClick=n.opt.cellClick,n.tableClickEnable=!0),n.cellDbClick=function(){},Ft(n.opt.cellDbClick)&&(n.cellDbClick=n.opt.cellDbClick,n.tableClickEnable=!0),n.cellChange=function(){},Ft(n.opt.cellChange)&&(n.cellChange=n.opt.cellChange),n.cellMouseEnter=function(){},Ft(n.opt.cellMouseEnter)&&(n.cellMouseEnter=n.opt.cellMouseEnter),n.cellMouseLeave=function(){},Ft(n.opt.cellMouseLeave)&&(n.cellMouseLeave=n.opt.cellMouseLeave),n.filterChange=function(){},Ft(n.opt.filterChange)&&(n.filterChange=n.opt.filterChange),n.kpConvertKeysWhenUploadData={},Pt(n.opt.kpConvertKeysWhenUploadData)&&(n.kpConvertKeysWhenUploadData=n.opt.kpConvertKeysWhenUploadData),n.language="en",jt(n.opt.language)&&(n.language=n.opt.language),n.columns=n.keys2columns(n.keys),n.rows=n.opt.rows},setRowsPinnTop:function(n){let e=this;if(Ft(e.genRowsPinnTop)){let a=e.genRowsPinnTop(n);e.getApi().setGridOption("pinnedTopRowData",a)}},setRowsPinnBottom:function(n){let e=this;if(Ft(e.genRowsPinnBottom)){let a=e.genRowsPinnBottom(n);e.getApi().setGridOption("pinnedBottomRowData",a)}},showKeys:function(n){let e=this,a=ut(e.keys),r=zt(a,n),o=e.getApi().getColumnState(),t=[];Ca(n,(function(n){let e=pr(o,{colId:n});e.hide=!1,t.push(e)})),Ca(r,(function(n){let e=pr(o,{colId:n});e.hide=!0,t.push(e)})),e.getApi().applyColumnState({state:t,applyOrder:!0})},getFilters:async function(){let n=this,e=ut(n.keys),a=[];return await Rt(e,(async e=>{let r=null;try{r=(await n.getApi().getColumnFilterInstance(e)).appliedModel}catch(n){console.log(n)}Pt(r)&&a.push(r)})),a},clearHeadFilterAll:async function(){this.getApi().setFilterModel(null),this.getApi().onFilterChanged()},clearHeadFilter:async function(n){await this.getApi().setColumnFilterModel(n,null),this.getApi().onFilterChanged()},setHeadFilter:async function(n,e,a="contains"){let r={type:a,filter:e};await this.getApi().setColumnFilterModel(n,r),this.getApi().onFilterChanged()},getDisplayDataKeys:function(){return za(Ya(this.getApi().getColumnState(),{hide:!1}),"colId")},getDisplayData:function(){let n=[];this.getApi().forEachNodeAfterFilterAndSort((e=>{n.push(ut(e.data))}));let e=this.getDisplayDataKeys();return $t(n,e)},getNowData:function(){let n=[];return this.getApi().forEachNode((e=>{n.push(ut(e.data))})),$t(n,this.keys)},fitColumns:function(n=!0){let e=this;async function a(){await async function(n){try{e.width=n;let a=e.getApi();Ft(ca(a,"sizeColumnsToFit"))&&a.sizeColumnsToFit()}catch(n){console.log("fitColumns error",n)}}(100)}n?e.dbc((()=>{a()})):a()},downloadDisplayData:function(n={}){let e=this,{funGetKeysHook:a,funGetLtdtHook:r,funGetMatHook:o,useHead:t,fileName:i,sheetName:l,pathItems:g}=n;Wt(t)||(t=!1),jt(i)||(i="data.xlsx"),Bt(g)||(g=e.pathItems);let c=e.getDisplayDataKeys(),d=ut(c);if(Ft(a)&&(d=a(d)),Bt(d)||(d=ut(c)),!Bt(d))return void console.log("invalid useKeys");let p=e.getDisplayData();Ft(r)&&(p=r(p));let s=ti(p,d),u=c;return t&&(u=za(c,(n=>e.kpHead[n]))),s=mt([u],s),Ft(o)&&(s=o(s)),zi(i,l,s,g).catch((n=>{console.log(n)})),s},downloadData:function(n={}){let e=this,{funGetKeysHook:a,funGetLtdtHook:r,funGetMatHook:o,useHead:t,fileName:i,sheetName:l,pathItems:g}=n;Wt(t)||(t=!1),jt(i)||(i="data.xlsx"),Bt(g)||(g=e.pathItems);let c=e.keys,d=ut(c);if(Ft(a)&&(d=a(d)),Bt(d)||(d=ut(c)),!Bt(d))return void console.log("invalid useKeys");let p=$t(e.rows,d);Ft(r)&&(p=r(p));let s=ti(p,d),u=d;return t&&(u=za(d,(n=>e.kpHead[n]))),s=mt([u],s),Ft(o)&&(s=o(s)),zi(i,l,s,g).catch((n=>{console.log(n)})),s},uploadData:async function(n={}){let e=this,{pathItems:a=null,beforeUpload:r=null,parseSheetInd:o=0,uploadMode:t="replace"}=n;Jt(o)||(o=0),o=Xt(o),Bt(a)||(a=e.pathItems);let i=await function(){let n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"*",e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=ca(e,"multiple");Wt(a)||(a=!1);let r=ca(e,"entireHierarchy");Wt(r)||(r=!1);let o=ca(e,"sizelimit");Tt(o)||(o=1e3),o=_t(o);let t=It(),i=[];return Si(n,{multiple:a,entireHierarchy:r,sizelimit:o}).then((function(n){let e=It(),a=ca(n,"errs",{}),r=ca(n,"files",[]);return Pt(a)?e.reject(a):e.resolve(r),e})).then((function(n){return Ca(n,(function(n){i.push({name:n.name,size:n.size,type:n.type})})),Ni(n)})).then((function(n){Ca(n,(function(n,e){i[e].u8a=n})),t.resolve(i)})).catch((function(n){t.reject(n)})),t}(),l=i[0],g=await async function(n,e,a){Bt(a)||(a=["https://cdn.jsdelivr.net/npm/xlsx@0.18.5/dist/xlsx.full.min.js"]),await ui(a);let r=Ri(n,e);return""!==ca(r,"error","")?Promise.reject(r.error):r}(l.u8a,"ltdt",!1),c=null;try{c=g[o]}catch(n){return Promise.reject({msg:"invalid parseSheetInd",err:n})}let d=[];try{d=c.data}catch(n){return Promise.reject({msg:"can not get data from sheet",err:n})}if(Pt(e.kpConvertKeysWhenUploadData)&&(d=za(d,(n=>{let a={};return Ca(n,((n,r)=>{let o=r,t=n;Et(e.kpConvertKeysWhenUploadData,r)&&(o=e.kpConvertKeysWhenUploadData[r]),a[o]=t})),a}))),Ft(r)){let n=r(d);d=Ut(n)?await n:n}if(d=$t(d,e.keys),"replace"===t);else if("append"===t){let n=ca(e,"opt.rows",[]);n=ut(n),Ca(d,(e=>{n.push(e)})),d=n}return ao(e,"opt.rows",d),e.rowsChange(d),d},triggerFilterChange:async function(n){let e=this,a=e.filterall,r=await e.getFilters(),o=jt(a)||Ga(r)>0;e.filterChange({from:n,filterall:a,flts:r,isFilter:o})}}};function Tc(n,e,a,r,o,t,i,l,g,c){"boolean"!=typeof i&&(g=l,l=i,i=!1);const d="function"==typeof a?a.options:a;let p;if(n&&n.render&&(d.render=n.render,d.staticRenderFns=n.staticRenderFns,d._compiled=!0,o&&(d.functional=!0)),r&&(d._scopeId=r),t?(p=function(n){(n=n||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(n=__VUE_SSR_CONTEXT__),e&&e.call(this,g(n)),n&&n._registeredComponents&&n._registeredComponents.add(t)},d._ssrRegister=p):e&&(p=i?function(n){e.call(this,c(n,this.$root.$options.shadowRoot))}:function(n){e.call(this,l(n))}),p)if(d.functional){const n=d.render;d.render=function(e,a){return p.call(a),n(e,a)}}else{const n=d.beforeCreate;d.beforeCreate=n?[].concat(n,p):[p]}return a}const Ec="undefined"!=typeof navigator&&/msie [6-9]\\b/.test(navigator.userAgent.toLowerCase());function Sc(n){return(n,e)=>function(n,e){const a=Ec?e.media||"default":n,r=Nc[a]||(Nc[a]={ids:new Set,styles:[]});if(!r.ids.has(n)){r.ids.add(n);let a=e.source;if(e.map&&(a+="\n/*# sourceURL="+e.map.sources[0]+" */",a+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(e.map))))+" */"),r.element||(r.element=document.createElement("style"),r.element.type="text/css",e.media&&r.element.setAttribute("media",e.media),void 0===Oc&&(Oc=document.head||document.getElementsByTagName("head")[0]),Oc.appendChild(r.element)),"styleSheet"in r.element)r.styles.push(a),r.element.styleSheet.cssText=r.styles.filter(Boolean).join("\n");else{const n=r.ids.size-1,e=document.createTextNode(a),o=r.element.childNodes;o[n]&&r.element.removeChild(o[n]),o.length?r.element.insertBefore(e,o[n]):r.element.appendChild(e)}}}(n,e)}let Oc;const Nc={};const Lc=Ac;var Hc=function(){var n=this,e=n.$createElement,a=n._self._c||e;return a("div",{ref:"shell",staticClass:"CompCssWAgGridVue",attrs:{changeParam:n.changeParam,changeFilterall:n.changeFilterall}},[a("div",{style:"width:"+n.width+"%; height:"+n.height+"px; transition:all 0.5s; opacity:"+n.opacity+";",on:{mouseleave:n.leaveTable}},[a("ag-grid-vue",{ref:"agv",staticClass:"ag-theme-balham",staticStyle:{width:"100%",height:"100%"},attrs:{columnDefs:n.columns,rowData:n.filterRows,rowStyle:n.getRowsStyle,rowSelection:"multiple",gridOptions:n.gridOptions,_enableRangeSelection:"true",_copyHeadersToClipboard:"true",_modules:"AllModules"},on:{selectionChanged:n.agRowSelect,cellClicked:n.agCellClick,cellDoubleClicked:n.agCellDbClick,cellValueChanged:n.agCellChange,cellMouseOver:n.agCellMouseEnter,cellMouseOut:n.agCellMouseLeave,cellKeyDown:n.agCellKeyDown,rowDragEnter:n.agRowDragEnter,rowDragEnd:n.agRowDragEnd,rowDragMove:n.agRowDragMove,rowDragLeave:n.agRowDragLeave,filterChanged:n.agFilterChanged,gridReady:n.agReady}})],1)])};Hc._withStripped=!0;return Tc({render:Hc,staticRenderFns:[]},(function(n){n&&n("data-v-3e5286f0_0",{source:"\n.CompCssWAgGridVue .ag-theme-balham, .ag-header {\r\n font-family: inherit;\n}\n.CompCssWAgGridVue .ag-theme-balham .ag-header {\r\n font-family: inherit;\n}\n.CompCssWAgGridVue .ag-header-cell .ag-input-field-input, .ag-filter .ag-input-field-input {\r\n transition: all 0.5s;\r\n padding: 3px 8px;\r\n box-shadow: inherit !important;\r\n background-color: #fff;\r\n border: 1px solid #ccc;\r\n border-radius: 5px;\n}\n.CompCssWAgGridVue .ag-input-field-input:focus {\r\n border: 1px solid #777;\n}\n.CompCssWAgGridVue .no-border.ag-cell:focus{\r\n border-color: transparent !important;\r\n outline: none;\n}\r\n",map:{version:3,sources:["D:\\- 006 - 開源\\開源-JS-104-3-w-aggrid-vue\\w-aggrid-vue\\src\\components\\WAgGridVue.vue"],names:[],mappings:";AAsgFA;IACA,oBAAA;AACA;AACA;IACA,oBAAA;AACA;AACA;IACA,oBAAA;IACA,gBAAA;IACA,8BAAA;IACA,sBAAA;IACA,sBAAA;IACA,kBAAA;AACA;AACA;IACA,sBAAA;AACA;AACA;EACA,oCAAA;EACA,aAAA;AACA",file:"WAgGridVue.vue",sourcesContent:["<template>\r\n <div\r\n ref=\"shell\"\r\n class=\"CompCssWAgGridVue\"\r\n :changeParam=\"changeParam\"\r\n :changeFilterall=\"changeFilterall\"\r\n >\r\n\r\n <div\r\n :style=\"`width:${width}%; height:${height}px; transition:all 0.5s; opacity:${opacity};`\"\r\n @mouseleave=\"leaveTable\"\r\n >\r\n\r\n <ag-grid-vue\r\n ref=\"agv\"\r\n style=\"width:100%; height:100%;\"\r\n class=\"ag-theme-balham\"\r\n :columnDefs=\"columns\"\r\n :rowData=\"filterRows\"\r\n :rowStyle=\"getRowsStyle\"\r\n :rowSelection=\"'multiple'\"\r\n :gridOptions=\"gridOptions\"\r\n _enableRangeSelection=\"true\"\r\n _copyHeadersToClipboard=\"true\"\r\n _modules=\"AllModules\"\r\n @selectionChanged=\"agRowSelect\"\r\n @cellClicked=\"agCellClick\"\r\n @cellDoubleClicked=\"agCellDbClick\"\r\n @cellValueChanged=\"agCellChange\"\r\n @cellMouseOver=\"agCellMouseEnter\"\r\n @cellMouseOut=\"agCellMouseLeave\"\r\n @cellKeyDown=\"agCellKeyDown\"\r\n @rowDragEnter=\"agRowDragEnter\"\r\n @rowDragEnd=\"agRowDragEnd\"\r\n @rowDragMove=\"agRowDragMove\"\r\n @rowDragLeave=\"agRowDragLeave\"\r\n @filterChanged=\"agFilterChanged\"\r\n @gridReady=\"agReady\"\r\n ></ag-grid-vue>\r\n\r\n </div>\r\n\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport map from 'lodash-es/map.js'\r\nimport each from 'lodash-es/each.js'\r\nimport size from 'lodash-es/size.js'\r\nimport filter from 'lodash-es/filter.js'\r\nimport isEqual from 'lodash-es/isEqual.js'\r\nimport find from 'lodash-es/find.js'\r\nimport merge from 'lodash-es/merge.js'\r\nimport get from 'lodash-es/get.js'\r\nimport set from 'lodash-es/set.js'\r\nimport join from 'lodash-es/join.js'\r\nimport split from 'lodash-es/split.js'\r\nimport values from 'lodash-es/values.js'\r\nimport cloneDeep from 'lodash-es/cloneDeep.js'\r\nimport concat from 'lodash-es/concat.js'\r\nimport difference from 'lodash-es/difference.js'\r\nimport trim from 'lodash-es/trim.js'\r\nimport haskey from 'wsemi/src/haskey.mjs'\r\nimport arrHas from 'wsemi/src/arrHas.mjs'\r\nimport sep from 'wsemi/src/sep.mjs'\r\nimport pmSeries from 'wsemi/src/pmSeries.mjs'\r\nimport iser from 'wsemi/src/iser.mjs'\r\nimport isobj from 'wsemi/src/isobj.mjs'\r\nimport iseobj from 'wsemi/src/iseobj.mjs'\r\nimport isarr from 'wsemi/src/isarr.mjs'\r\nimport isearr from 'wsemi/src/isearr.mjs'\r\nimport isestr from 'wsemi/src/isestr.mjs'\r\nimport isnum from 'wsemi/src/isnum.mjs'\r\nimport isfun from 'wsemi/src/isfun.mjs'\r\nimport ispm from 'wsemi/src/ispm.mjs'\r\nimport isbol from 'wsemi/src/isbol.mjs'\r\nimport isp0int from 'wsemi/src/isp0int.mjs'\r\nimport cdbl from 'wsemi/src/cdbl.mjs'\r\nimport cstr from 'wsemi/src/cstr.mjs'\r\nimport cint from 'wsemi/src/cint.mjs'\r\nimport binstr from 'wsemi/src/binstr.mjs'\r\nimport ltdtmapping from 'wsemi/src/ltdtmapping.mjs'\r\nimport ltdtkeys2mat from 'wsemi/src/ltdtkeys2mat.mjs'\r\nimport downloadExcelFileFromDataDyn from 'wsemi/src/downloadExcelFileFromDataDyn.mjs'\r\nimport domShowInputAndGetFilesU8Arrs from 'wsemi/src/domShowInputAndGetFilesU8Arrs.mjs'\r\nimport getDataFromExcelFileU8ArrDyn from 'wsemi/src/getDataFromExcelFileU8ArrDyn.mjs'\r\nimport str2md5 from 'wsemi/src/str2md5.mjs'\r\nimport delay from 'wsemi/src/delay.mjs'\r\nimport replace from 'wsemi/src/replace.mjs'\r\nimport debounce from 'wsemi/src/debounce.mjs'\r\nimport domDetect from 'wsemi/src/domDetect.mjs'\r\nimport domTooltip from 'wsemi/src/domTooltip.mjs'\r\nimport * as agv from 'ag-grid-vue' //會再引用vue-class-component與vue-property-decorator, 因無法被rollup編譯, 故須由外部引入cdn\r\nimport 'ag-grid-community/styles/ag-grid.css'\r\nimport 'ag-grid-community/styles/ag-theme-balham.css'\r\n// import { AllModules } from '@ag-grid-enterprise/all-modules' //ag-gird-enterprise雖可使用modules擴充支援剪貼簿貼上Excel range數據, 不過由Excel複製的數據會有換行字元, 此導致ag-grid解析多一列的空數據而覆蓋到原數據, 無法用\r\nimport getLangText from './getLangText.mjs'\r\n\r\n\r\n//vcAgGridVue, vue-cli4引用可取到AgGridVue\r\nlet vcAgGridVue = get(agv, 'AgGridVue')\r\n// console.log('vcAgGridVue',vcAgGridVue)\r\n\r\n\r\n//wdAgGridVue, 因rollup無法編譯ag-grid-vue故動態加載時只能由外部引用cdn\r\nlet wdAgGridVue = get(window, 'agGridVue.AgGridVue')\r\n// console.log('wdAgGridVue',wdAgGridVue)\r\n\r\n\r\n//useAgGridVue\r\nlet useAgGridVue = vcAgGridVue || wdAgGridVue\r\n// console.log('useAgGridVue',useAgGridVue)\r\n\r\n\r\n//tooltip, 通過key查msg避免特殊html符號無法顯示\r\nlet dtmsg = {}\r\nwindow.ttWAgGridVue = function(ele, kmsg) {\r\n if (!isestr(kmsg)) {\r\n return\r\n }\r\n let msg = dtmsg[kmsg]\r\n domTooltip(ele, msg)\r\n}\r\n\r\n\r\nfunction parseText(contentPaste) {\r\n contentPaste = trim(contentPaste)\r\n contentPaste = replace(contentPaste, '\\r\\n', '\\n')\r\n contentPaste = replace(contentPaste, '\\r', '\\n')\r\n let pRows = sep(contentPaste, '\\n')\r\n let pData = []\r\n each(pRows, (v) => {\r\n if (trim(v) !== '') {\r\n let s = split(v, '\\t')\r\n pData.push(s)\r\n }\r\n })\r\n return pData\r\n}\r\n\r\n\r\n/**\r\n * @vue-prop {Object} opt 輸入資料設定物件\r\n * @vue-prop {Array} opt.keys 輸入資料各欄位keys\r\n * @vue-prop {Array} opt.rows 輸入資料列,各列為物件,內含各欄位keys之值,例[{},{},...,{}]\r\n * @vue-prop {Object} [opt.kpHead={}] 輸入key對應head物件,預設各key值為本身key值\r\n * @vue-prop {Number} [opt.defHeadMinWidth=null] 輸入cell預設最小寬度數字,預設為null\r\n * @vue-prop {Number} [opt.defHeadMaxWidth=null] 輸入cell預設最小寬度數字,預設為null\r\n * @vue-prop {Object} [opt.kpHeadWidth={}] 輸入key對應cell之寬度物件,預設各key值為undefined\r\n * @vue-prop {Object} [opt.kpHeadTooltip={}] 輸入key對應需tooltip的html字串物件,於各head處滑鼠移入時觸發,預設各key值為undefined\r\n * @vue-prop {String} [opt.defHeadAlignH='center'] 輸入head預設之左右對齊字串,預設為'center'\r\n * @vue-prop {Object} [opt.kpHeadAlignH={}] 輸入key對應head之左右對齊字串物件,預設各key值為defHeadAlignH\r\n * @vue-prop {Boolean} [opt.defHeadSort=true] 輸入head預設之是否允許排序布林值,預設為true\r\n * @vue-prop {Object} [opt.kpHeadSort={}] 輸入key對應head之是否允許排序物件,預設各key值為defHeadSort\r\n * @vue-prop {Function|String} [opt.defHeadSortMethod=null] 輸入head預設之排序方式函數或字串,若需自行定義則給予函數,若需使用內建的自動轉型判斷方式則給予'auto'字串,預設為null\r\n * @vue-prop {Object} [opt.kpHeadSortMethod={}] 輸入key對應head之排序方式函數或字串,若需自行定義則給予函數,若需使用內建的自動轉型判斷方式則給予'auto'字串,預設各key值為defHeadSortMethod\r\n * @vue-prop {Object} [opt.kpHeadFixLeft={}] 輸入key對應head之是否固定於左側物件,預設各key值為false\r\n * @vue-prop {Boolean} [opt.defHeadFilter=true] 輸入head預設之是否允許過濾布林值,預設為true\r\n * @vue-prop {Object} [opt.kpHeadFilter={}] 輸入key對應head之是否允許過濾物件,預設各key值為defHeadFilter\r\n * @vue-prop {String} [opt.defHeadFilterType='num'] 輸入head預設過濾器字串,可選'num'、'text'、'time'、'set',預設為'num'\r\n * @vue-prop {Object} [opt.kpHeadFilterType={}] 輸入key對應head之過濾器物件,可使用'num'、'text'、'time'、'set',預設各key值為'num'\r\n * @vue-prop {Object} [opt.kpHeadRender={}] 輸入key對應head之渲染函數物件,預設各key值為undefined\r\n * @vue-prop {Boolean} [opt.defHeadDrag=true] 輸入head預設之是否允許拖曳布林值,預設為true\r\n * @vue-prop {Object} [opt.kpHeadDrag={}] 輸入key對應head之是否允許拖曳物件,預設各key值為defHeadDrag\r\n * @vue-prop {Object} [opt.kpHeadCheckBox={}] 輸入key對應head與key的各列是否使用核選方塊物件,預設各key值為false\r\n * @vue-prop {Object} [opt.kpHeadFocusHighlight={}] 輸入key對應key的各列於獲得焦點時是否高亮顯示物件,預設各key值為true\r\n * @vue-prop {Object} [opt.kpHeadHide={}] 輸入key對應head是否隱藏物件,預設各key值為false\r\n * @vue-prop {Object} [opt.kpRowStyle={}] 輸入key對應row style之物件,可設定各key欄之函數,函數給予cell值需回傳之row style,預設各key值為undefined\r\n * @vue-prop {Object} [opt.kpRowDrag={}] 輸入key對應col之是否能拖曳排序物件,預設各key值為false\r\n * @vue-prop {Function} [opt.genRowsPinnTop=null] 輸入產生置頂rows函數,輸入為表內全部數據,預設為null\r\n * @vue-prop {Function} [opt.genRowsPinnBottom=null] 輸入產生置底rows函數,輸入為表內全部數據,預設為null\r\n * @vue-prop {Object} [opt.kpColStyle={}] 輸入key對應col style之物件,可設定各key欄之col style,預設各key值為undefined\r\n * @vue-prop {Object} [opt.kpColSpan={}] 輸入key對應col span之物件,可設定各key欄之col span,預設各key值為undefined\r\n * @vue-prop {Object} [opt.kpCellRender={}] 輸入key對應cell之渲染函數物件,預設各key值為undefined\r\n * @vue-prop {Object} [opt.kpCellTooltip={}] 輸入key對應cell之tooltip的html字串物件,於各cell處滑鼠移入時觸發,預設各key值為undefined\r\n * @vue-prop {String} [opt.defCellAlignH='center'] 輸入cell預設之左右對齊字串,預設為'center'\r\n * @vue-prop {Object} [opt.kpCellAlignH={}] 輸入key對應cell之左右對齊字串物件,預設各key值為defCellAlignH\r\n * @vue-prop {Boolean} [opt.defCellEditable=false] 輸入cell預設之是否可編輯布林值,預設為false\r\n * @vue-prop {Object} [opt.kpCellEditable={}] 輸入key對應cell之是否可編輯物件,預設各key值為defCellEditable\r\n * @vue-prop {Object} [opt.kpConvertKeysWhenUploadData={}] 輸入上傳Excel檔案時,當key轉會成對應新key值物件,預設{}\r\n * @vue-prop {Function} [opt.rowsChange=()=>{}] 輸入rows change之觸發事件,預設為()=>{}\r\n * @vue-prop {Function} [opt.rowClick=()=>{}] 輸入row click之觸發事件,預設為()=>{}\r\n * @vue-prop {Function} [opt.rowDbClick=()=>{}] 輸入row double click之觸發事件,預設為()=>{}\r\n * @vue-prop {Function} [opt.rowChange=()=>{}] 輸入row change之觸發事件,預設為()=>{}\r\n * @vue-prop {Function} [opt.rowChecked=()=>{}] 輸入row checked之觸發事件,需使用kpHeadCheckBox開啟指定key的head與對應rows使用checkbox,預設為()=>{}\r\n * @vue-prop {Function} [opt.rowMouseEnter=()=>{}] 輸入row mouseenter之觸發事件,預設為()=>{}\r\n * @vue-prop {Function} [opt.rowMouseLeave=()=>{}] 輸入row mouseleave之觸發事件,預設為()=>{}\r\n * @vue-prop {Function} [opt.cellClick=()=>{}] 輸入cell click之觸發事件,預設為()=>{}\r\n * @vue-prop {Function} [opt.cellDbClick=()=>{}] 輸入cell double click之觸發事件,預設為()=>{}\r\n * @vue-prop {Function} [opt.cellChange=()=>{}] 輸入cell change之觸發事件,預設為()=>{}\r\n * @vue-prop {Function} [opt.cellMouseEnter=()=>{}] 輸入cell mouseenter之觸發事件,預設為()=>{}\r\n * @vue-prop {Function} [opt.cellMouseLeave=()=>{}] 輸入cell mouseleave之觸發事件,預設為()=>{}\r\n * @vue-prop {Function} [opt.filterChange=()=>{}] 輸入filter change之觸發事件,預設為()=>{}\r\n * @vue-prop {Boolean} [opt.autoFitColumn=false] 輸入當表格尺寸變更時自動調整欄寬布林值,預設false\r\n * @vue-prop {String} [opt.language='en'] 輸入指定語系字串,可選'en'、'zh-tw'、'zh-cn',預設為'en'\r\n * @vue-prop {Number} [height=300] 表格高度,單位為px,預設300\r\n * @vue-prop {String} [filterall=''] 輸入對全表數據進行過濾之字串,預設為''\r\n */\r\nexport default {\r\n components: {\r\n AgGridVue: useAgGridVue,\r\n },\r\n props: {\r\n opt: {\r\n type: Object,\r\n },\r\n height: {\r\n type: Number,\r\n default: 300\r\n },\r\n filterall: {\r\n type: String,\r\n default: ''\r\n },\r\n },\r\n data: function() {\r\n let vo = this\r\n return {\r\n dbc: debounce(),\r\n de: null,\r\n\r\n evPaste: null,\r\n dataPasted: '',\r\n\r\n width: 100,\r\n opacity: 0,\r\n\r\n autoFitColumn: false,\r\n\r\n language: '',\r\n\r\n rows: [],\r\n keys: [],\r\n columns: [],\r\n\r\n kpHead: {},\r\n defHeadMinWidth: null,\r\n defHeadMaxWidth: null,\r\n kpHeadWidth: {},\r\n kpHeadTooltip: {},\r\n defHeadAlignH: null,\r\n kpHeadAlignH: {},\r\n defHeadSort: null,\r\n kpHeadSort: {},\r\n defHeadSortMethod: null,\r\n kpHeadSortMethod: {},\r\n kpHeadFixLeft: {},\r\n defHeadFilter: null,\r\n kpHeadFilter: {},\r\n defHeadFilterType: null,\r\n kpHeadFilterType: {},\r\n defHeadDrag: null,\r\n kpHeadRender: {},\r\n kpHeadDrag: {},\r\n kpHeadCheckBox: {},\r\n kpHeadFocusHighlight: {},\r\n kpHeadHide: {},\r\n kpRowStyle: {},\r\n kpRowDrag: {},\r\n kpColStyle: {},\r\n kpColSpan: {},\r\n kpCellRender: {},\r\n kpCellTooltip: {},\r\n defCellAlignH: null,\r\n kpCellAlignH: {},\r\n defCellEditable: null,\r\n kpCellEditable: {},\r\n kpConvertKeysWhenUploadData: null,\r\n\r\n tableClickEnable: false,\r\n rowsChange: function() {},\r\n rowChange: function() {},\r\n rowChecked: function() {},\r\n rowMouseEnter: function() {},\r\n rowMouseLeave: function() {},\r\n rowClick: function() {},\r\n rowDbClick: function() {},\r\n rowDragEnter: function() {},\r\n rowDragEnd: function() {},\r\n rowDragMove: function() {},\r\n rowDragLeave: function() {},\r\n rowDragChange: function() {},\r\n cellClick: function() {},\r\n cellDbClick: function() {},\r\n cellChange: function() {},\r\n cellMouseEnter: function() {},\r\n cellMouseLeave: function() {},\r\n filterChange: function() {},\r\n\r\n //因ag-grid只提供mouseout沒有mouseleave, 導致會因為內元素而觸發mouseout, 得通過暫存機制產生mouseleave事件\r\n vRowMouseEnter: null,\r\n vRowMouseLeave: null,\r\n eRowMouseLeaves: [],\r\n vCellMouseEnter: null,\r\n vCellMouseLeave: null,\r\n eCellMouseLeaves: [],\r\n iRowDragEnter: null,\r\n\r\n genRowsPinnTop: null,\r\n genRowsPinnBottom: null,\r\n\r\n // AllModules,\r\n gridOptions: {\r\n\r\n animateRows: true,\r\n\r\n suppressMenuHide: true, //預設為false, 代表標題右側的漢堡按鈕預先隱藏, 滑鼠移入時才顯示\r\n\r\n // rowHoverHighlight: true,\r\n suppressRowHoverHighlight: false, //ag-grid 25.3.0已由rowHoverHighlight改為suppressRowHoverHighlight\r\n\r\n // suppressColumnHoverHighlight: false,\r\n columnHoverHighlight: false, //ag-grid 26.2.0已由suppressColumnHoverHighlight改為columnHoverHighlight\r\n\r\n // floatingFilter: true, //ag-grid 23.1.0已改為由column給予floatingFilter\r\n\r\n rowDragManaged: true,\r\n\r\n suppressRowClickSelection: true, //若開啟checkboxSelection\r\n\r\n singleClickEdit: true, //單點即可變更\r\n\r\n // stopEditingWhenGridLosesFocus: true,\r\n stopEditingWhenCellsLoseFocus: true, //失去焦點則停止編輯, ag-grid 25.2.2改為stopEditingWhenCellsLoseFocus\r\n\r\n // suppressCellFocus: true, //點擊因cell獲得焦點會出現邊框, 若關閉(suppressCellFocus=true)會導致全部cell都關閉, 另用賦予class處理\r\n\r\n // localeText: null,\r\n getLocaleText: vo.agGetLocaleText,\r\n\r\n getRowStyle: vo.agGetRowStyle,\r\n\r\n // debounceVerticalScrollbar: true,\r\n\r\n pinnedTopRowData: [],\r\n pinnedBottomRowData: [],\r\n\r\n },\r\n\r\n ag: null,\r\n\r\n pathItems: [\r\n 'https://cdn.jsdelivr.net/npm/xlsx@0.18.5/dist/xlsx.full.min.js',\r\n ],\r\n\r\n }\r\n },\r\n mounted: function() {\r\n\r\n let vo = this\r\n\r\n //監聽dom\r\n vo.de = domDetect(() => {\r\n return get(vo, '$refs.shell', null)\r\n })\r\n vo.de.on('resize', (s) => {\r\n // console.log('resize', s)\r\n if (vo.autoFitColumn) {\r\n vo.fitColumns()\r\n }\r\n })\r\n vo.de.on('display', (s) => {\r\n // console.log('display', s)\r\n if (vo.autoFitColumn) {\r\n vo.fitColumns()\r\n }\r\n })\r\n\r\n //paste\r\n vo.evPaste = (e) => {\r\n //console.log('paste', e)\r\n\r\n //clipboardData\r\n let clipboardData = event.clipboardData || window.clipboardData\r\n\r\n //save dataPasted\r\n vo.dataPasted = clipboardData.getData('Text')\r\n\r\n }\r\n window.addEventListener('paste', vo.evPaste)\r\n\r\n },\r\n beforeDestroy: function() {\r\n //console.log('beforeMount')\r\n\r\n let vo = this\r\n\r\n //釋放監聽\r\n vo.de.clear()\r\n\r\n //removeEventListener\r\n window.removeEventListener('paste', vo.evPaste)\r\n\r\n },\r\n computed: {\r\n\r\n changeParam: function() {\r\n //console.log('computed changeParam')\r\n\r\n let vo = this\r\n\r\n //trigger\r\n let opt = vo.opt\r\n vo.__temp__ = { opt }\r\n\r\n //changeOpt\r\n vo.changeOpt()\r\n\r\n return ''\r\n },\r\n\r\n changeFilterall: function() {\r\n // console.log('computed changeFilterall')\r\n\r\n let vo = this\r\n\r\n //trigger\r\n let filterall = vo.filterall\r\n vo.__temp__ = { filterall }\r\n\r\n //triggerFilterChange\r\n vo.triggerFilterChange('filterall')\r\n\r\n return ''\r\n },\r\n\r\n getRowsStyle: function(params) {\r\n //console.log('computed getRowsStyle', params)\r\n\r\n let vo = this\r\n\r\n if (vo.tableClickEnable) {\r\n return {\r\n cursor: 'pointer'\r\n }\r\n }\r\n return {}\r\n },\r\n\r\n filterRows: function() {\r\n //console.log('computed filterRows')\r\n\r\n let vo = this\r\n\r\n //trigger\r\n let rows = vo.rows\r\n let filterall = vo.filterall\r\n\r\n //check\r\n if (filterall === '') {\r\n return rows\r\n }\r\n\r\n //filter\r\n let frs = filter(rows, function(v, k) {\r\n let c = join(values(v), '')\r\n return binstr(c, filterall)\r\n })\r\n\r\n return frs\r\n },\r\n\r\n },\r\n methods: {\r\n\r\n getGridOptions: function() {\r\n //console.log('methods getGridOptions')\r\n\r\n let vo = this\r\n\r\n return vo.gridOptions\r\n },\r\n\r\n getApi: function() {\r\n // console.log('getApi')\r\n\r\n let vo = this\r\n\r\n //api, ag-grid 31.1.0的gridOptions.api已改為須由組件ref取得\r\n let api = get(vo, '$refs.agv.api', null)\r\n\r\n return api\r\n },\r\n\r\n agGetLocaleText: function(params) {\r\n // console.log('agGetLocaleText', params)\r\n\r\n let vo = this\r\n\r\n //getLangText\r\n let t = getLangText(vo.language, params.key, params.defaultValue)\r\n\r\n return t\r\n },\r\n\r\n agGetRowStyle: function(params) {\r\n //console.log('agGetRowStyle', params) //由各row呼叫\r\n\r\n let vo = this\r\n\r\n //style\r\n let style = {}\r\n each(vo.kpRowStyle, function(v, k) {\r\n let f = v\r\n let d = get(params.data, k)\r\n if (isfun(f)) {\r\n style = merge(style, f(d))\r\n }\r\n })\r\n\r\n return style\r\n },\r\n\r\n triggerRowDragChange: function(indFrom, indTo, row, rows) {\r\n\r\n let vo = this\r\n\r\n //check\r\n if (indFrom !== indTo) {\r\n vo.iRowDragEnter = indTo\r\n\r\n //需使用set強制更新外部opt物件的rows並再同步更新至內部rows, 否則外面數據會沒更動\r\n set(vo, `opt.rows`, rows)\r\n\r\n //rowDragChange\r\n vo.rowDragChange(indFrom, indTo, row, rows)\r\n\r\n //rowsChange, rows是內部已更新數據, 直接用於回傳函數\r\n vo.rowsChange(rows)\r\n\r\n }\r\n\r\n },\r\n\r\n agRowDragEnter: function(param) {\r\n // console.log('methods agRowDragEnter', param)\r\n\r\n let vo = this\r\n\r\n //ind\r\n let ind = get(param, 'node.rowIndex', '')\r\n // console.log('agRowDragEnter ind', ind)\r\n\r\n //iRowDragEnter\r\n vo.iRowDragEnter = ind\r\n\r\n //row\r\n let row = get(param, 'node.data', null)\r\n\r\n // //rows\r\n // let rows = vo.getNowData()\r\n // // console.log('agRowDragEnd rows', cloneDeep(rows))\r\n\r\n //rowDragEnter\r\n vo.rowDragEnter(ind, -1, row)\r\n\r\n },\r\n\r\n agRowDragEnd: function(param) {\r\n // console.log('methods agRowDragEnd', param)\r\n\r\n let vo = this\r\n\r\n //ind\r\n let ind = get(param, 'node.rowIndex', '')\r\n // console.log('agRowDragEnd ind', ind)\r\n\r\n //row\r\n let row = get(param, 'node.data', null)\r\n\r\n //rows\r\n let rows = vo.getNowData()\r\n // console.log('agRowDragEnd rows', cloneDeep(rows))\r\n\r\n //rowDragEnd\r\n vo.rowDragEnd(vo.iRowDragEnter, ind, row, rows)\r\n\r\n //triggerRowDragChange\r\n vo.triggerRowDragChange(vo.iRowDragEnter, ind, row, rows)\r\n\r\n },\r\n\r\n agRowDragMove: function(param) {\r\n // console.log('methods agRowDragMove', param)\r\n\r\n let vo = this\r\n\r\n //ind\r\n let ind = get(param, 'node.rowIndex', '')\r\n // console.log('agRowDragMove ind', ind)\r\n\r\n //row\r\n let row = get(param, 'node.data', null)\r\n\r\n // //rows\r\n // let rows = vo.getNowData()\r\n // // console.log('agRowDragMove rows', cloneDeep(rows))\r\n\r\n //rowDragMove\r\n vo.rowDragMove(vo.iRowDragEnter, ind, row)\r\n\r\n },\r\n\r\n agRowDragLeave: function(param) {\r\n // console.log('methods agRowDragLeave', param)\r\n\r\n //先move再leave至表格外, 拖曳排序依然有效, 但僅觸發DragLeave不觸發DragEnd, 得聯合處理\r\n\r\n let vo = this\r\n\r\n //ind\r\n let ind = get(param, 'node.rowIndex', '')\r\n // console.log('agRowDragLeave ind', ind)\r\n\r\n //row\r\n let row = get(param, 'node.data', null)\r\n\r\n //rows\r\n let rows = vo.getNowData()\r\n // console.log('agRowDragLeave rows', cloneDeep(rows))\r\n\r\n //rowDragLeave\r\n vo.rowDragLeave(vo.iRowDragEnter, ind, row, rows)\r\n\r\n //triggerRowDragChange\r\n vo.triggerRowDragChange(vo.iRowDragEnter, ind, row, rows)\r\n\r\n },\r\n\r\n agRowSelect: function(params) {\r\n // console.log('agRowSelect', params)\r\n\r\n let vo = this\r\n\r\n //rn\r\n let rn = params.api.getSelectedNodes() //params.api已是vo.getApi()\r\n\r\n //rs\r\n let rs = map(rn, (r) => {\r\n return {\r\n rowInd: cint(r.id),\r\n rowIndShow: r.rowIndex,\r\n data: r.data,\r\n }\r\n })\r\n\r\n //rowChecked\r\n vo.rowChecked(cloneDeep(rs))\r\n\r\n },\r\n\r\n agCellClick: function(param) {\r\n //console.log('methods agCellClick', param)\r\n\r\n let vo = this\r\n\r\n //cellClick\r\n vo.cellClick(param.colDef.field, param.data)\r\n\r\n //rowClick\r\n vo.rowClick(param.colDef.field, param.data)\r\n\r\n },\r\n\r\n agCellDbClick: function(param) {\r\n //console.log('methods agCellDbClick', param)\r\n\r\n let vo = this\r\n\r\n //cellDbClick\r\n vo.cellDbClick(param.colDef.field, param.data)\r\n\r\n //rowDbClick\r\n vo.rowDbClick(param.colDef.field, param.data)\r\n\r\n },\r\n\r\n agCellChange: function(param) {\r\n // console.log('methods agCellChange', param)\r\n\r\n let vo = this\r\n\r\n //check值變化\r\n if (param.oldValue !== param.newValue) {\r\n //值變化因為記憶體同址vo.rows會出現變更, 故使用vo.rows\r\n\r\n //refresh\r\n vo.refresh()\r\n\r\n //cellChange\r\n vo.cellChange(param.colDef.field, param.data, vo.rows)\r\n\r\n //rowChange\r\n vo.rowChange(param.colDef.field, param.data, vo.rows)\r\n\r\n //rowsChange, 因為記憶體同址vo.rows會出現變更, 故直接用於回傳函數\r\n vo.rowsChange(vo.rows)\r\n\r\n //setRowsPinnBottom\r\n vo.setRowsPinnBottom(vo.rows)\r\n\r\n }\r\n\r\n },\r\n\r\n agFilterChanged: function(params) {\r\n // console.log('methods agFilterChanged', params)\r\n\r\n let vo = this\r\n\r\n //triggerFilterChange\r\n vo.triggerFilterChange('heads')\r\n\r\n },\r\n\r\n agReady: function(params) {\r\n //console.log('methods agReady', params)\r\n\r\n let vo = this\r\n\r\n //ag\r\n vo.ag = params\r\n\r\n if (vo.autoFitColumn) {\r\n\r\n //fitColumns\r\n vo.fitColumns(false)\r\n\r\n }\r\n\r\n //setRowsPinnTop\r\n vo.setRowsPinnTop(vo.rows)\r\n\r\n //setRowsPinnBottom\r\n vo.setRowsPinnBottom(vo.rows)\r\n\r\n //show\r\n vo.opacity = 1\r\n\r\n },\r\n\r\n leaveTable: function() {\r\n //console.log('methods leaveTable')\r\n\r\n let vo = this\r\n\r\n //emitCellMouseLeaves\r\n vo.emitCellMouseLeaves()\r\n\r\n //emitRowMouseLeaves\r\n vo.emitRowMouseLeaves()\r\n\r\n //clear\r\n vo.vRowMouseEnter = null\r\n vo.vRowMouseLeave = null\r\n vo.vCellMouseEnter = null\r\n vo.vCellMouseLeave = null\r\n\r\n },\r\n\r\n emitCellMouseLeaves: function() {\r\n //console.log('methods emitCellMouseLeaves')\r\n\r\n let vo = this\r\n\r\n //cellMouseLeave\r\n each(vo.eCellMouseLeaves, (v) => {\r\n vo.cellMouseLeave(cloneDeep(v.field), cloneDeep(v.data))\r\n //console.log('cellMouseLeave', cloneDeep(v.field), cloneDeep(v.data))\r\n })\r\n\r\n //clear\r\n vo.eCellMouseLeaves = []\r\n\r\n },\r\n\r\n emitRowMouseLeaves: function() {\r\n //console.log('methods emitRowMouseLeaves')\r\n\r\n let vo = this\r\n\r\n //rowMouseLeave\r\n each(vo.eRowMouseLeaves, (v) => {\r\n vo.rowMouseLeave(cloneDeep(v.field), cloneDeep(v.data))\r\n //console.log('rowMouseLeave', cloneDeep(v.field), cloneDeep(v.data))\r\n })\r\n\r\n //clear\r\n vo.eRowMouseLeaves = []\r\n\r\n },\r\n\r\n agCellMouseEnter: function(param) {\r\n //console.log('methods agCellMouseEnter', param)\r\n\r\n let vo = this\r\n\r\n //tvCellMouseEnter, tvRowMouseEnter\r\n let tvCellMouseEnter = {\r\n field: param.colDef.field,\r\n data: param.data,\r\n }\r\n let tvRowMouseEnter = {\r\n data: param.data, //紀錄資料只會比對data, data不一樣才觸發\r\n }\r\n\r\n //cellMouseEnter\r\n if (!isEqual(vo.vCellMouseEnter, tvCellMouseEnter)) {\r\n\r\n //emitCellMouseLeaves, 要觸發enter前先觸發leave, 避免cell leave偵測失效或過慢導致連發\r\n vo.emitCellMouseLeaves()\r\n\r\n //field, data\r\n let field = cloneDeep(param.colDef.field)\r\n let data = cloneDeep(param.data)\r\n\r\n //update vCellMouseEnter\r\n vo.vCellMouseEnter = tvCellMouseEnter\r\n\r\n //cellMouseEnter\r\n vo.cellMouseEnter(field, data)\r\n\r\n //push, 儲存需離開事件資訊\r\n vo.eCellMouseLeaves.push({\r\n field,\r\n data,\r\n })\r\n\r\n }\r\n\r\n //rowMouseEnter\r\n if (!isEqual(vo.vRowMouseEnter, tvRowMouseEnter)) {\r\n\r\n //emitRowMouseLeaves, 要觸發enter前先觸發leave, 避免row leave偵測失效或過慢導致連發\r\n vo.emitRowMouseLeaves()\r\n\r\n //field, data\r\n let field = cloneDeep(param.colDef.field)\r\n let data = cloneDeep(param.data)\r\n\r\n //update vRowMouseEnter\r\n vo.vRowMouseEnter = tvRowMouseEnter\r\n\r\n //rowMouseEnter\r\n vo.rowMouseEnter(field, data) //滑鼠最初移入的欄位依然作為資料emit出去\r\n\r\n //push, 儲存需離開事件資訊\r\n vo.eRowMouseLeaves.push({\r\n field,\r\n data,\r\n })\r\n\r\n //update vRowMouseLeave, 因一進列可能在同列儲存格間移動, 故需先儲存更新列數據, 若移動到相鄰儲存格時, 則可判斷因數據相同故不用觸發rowLeave\r\n vo.vRowMouseLeave = {\r\n data: cloneDeep(param.data),\r\n }\r\n\r\n }\r\n\r\n },\r\n\r\n agCellMouseLeave: function(param) {\r\n //console.log('methods agCellMouseLeave', param)\r\n\r\n let vo = this\r\n\r\n //check\r\n if (param.event.target.contains(param.event.relatedTarget)) { //離開元素包含進入元素時則跳出, 因可能為父元素進入內元素而觸發\r\n //console.log('進入元素包含離開元素時則跳出')\r\n return\r\n }\r\n\r\n //role\r\n let role = null\r\n try {\r\n role = param.event.target.getAttribute('role') //離開元素的role\r\n }\r\n catch (err) {\r\n //console.log(err)\r\n }\r\n\r\n //check\r\n if (role !== 'gridcell') { //離開元素的role不是gridcell則跳出, 因有可能是cell內元素觸發\r\n //console.log('離開元素的role不是gridcell則跳出', param.event.target)\r\n return\r\n }\r\n\r\n //tvCellMouseLeave\r\n let tvCellMouseLeave = {\r\n field: cloneDeep(param.colDef.field),\r\n data: cloneDeep(param.data),\r\n }\r\n\r\n //tvRowMouseLeave\r\n let tvRowMouseLeave = {\r\n data: cloneDeep(param.data),\r\n }\r\n\r\n //emitCellMouseLeaves\r\n if (!isEqual(vo.vCellMouseLeave, tvCellMouseLeave)) {\r\n vo.vCellMouseLeave = tvCellMouseLeave\r\n vo.emitCellMouseLeaves()\r\n }\r\n\r\n //emitRowMouseLeaves\r\n if (!isEqual(vo.vRowMouseLeave, tvRowMouseLeave)) {\r\n vo.vRowMouseLeave = tvRowMouseLeave\r\n vo.emitRowMouseLeaves()\r\n }\r\n\r\n },\r\n\r\n agCellKeyDown: function(param) {\r\n //console.log('methods agCellKeyDown', param)\r\n\r\n let vo = this\r\n\r\n //check, 由剪貼簿貼上\r\n if (!(param.event.ctrlKey && param.event.code === 'KeyV')) {\r\n return\r\n }\r\n //console.log('param', param)\r\n\r\n //showRowIndNow\r\n let showRowIndNow = param.rowIndex\r\n // console.log('showRowIndNow', showRowIndNow)\r\n\r\n //showColKeyNow\r\n let showColKeyNow = param.column.colId\r\n // console.log('showColKeyNow', showColKeyNow)\r\n\r\n //stopEditing, 停止cell的編輯狀態\r\n vo.getApi().stopEditing()\r\n\r\n //pasteText\r\n vo.pasteText(vo.dataPasted, showRowIndNow, showColKeyNow)\r\n\r\n },\r\n\r\n pasteText: function(text, showRowIndNow = null, showColKeyNow = null) {\r\n // console.log('methods pasteText', text, showRowIndNow, showColKeyNow)\r\n\r\n let vo = this\r\n\r\n //mShowRowInds\r\n let mShowRowInds = []\r\n let mData = []\r\n vo.getApi().forEachNodeAfterFilterAndSort(function(node, k) {\r\n //console.log('node', node)\r\n mShowRowInds.push(node.id)\r\n mData.push(node.data)\r\n })\r\n // console.log('mShowRowInds', mShowRowInds)\r\n // console.log('mData', mData)\r\n\r\n //check\r\n if (size(mShowRowInds) === 0) {\r\n //console.log('無有效之當前顯示數據')\r\n return\r\n }\r\n\r\n //mShowColKeys\r\n // let mShowColKeys = vo.gridOptions.columnApi.getAllGridColumns()\r\n let mShowColKeys = vo.getApi().getAllGridColumns() //gridOptions.columnApi已歸入api, 並須通過ref取得\r\n mShowColKeys = map(mShowColKeys, (v, k) => {\r\n // console.log('v', v, v.getId)\r\n return v.getId()\r\n })\r\n // console.log('mShowColKeys', mShowColKeys)\r\n\r\n //check\r\n if (size(mShowColKeys) === 0) {\r\n //console.log('無有效之當前顯示數據')\r\n return\r\n }\r\n\r\n //cs\r\n // let cs = vo.gridOptions.columnApi.getColumnState()\r\n let cs = vo.getApi().getColumnState() //gridOptions.columnApi已歸入api, 並須通過ref取得\r\n // console.log('cs', cs)\r\n\r\n //kpHide, kpPinned\r\n let kpHide = {}\r\n let kpPinned = {}\r\n each(cs, (v) => {\r\n kpHide[v.colId] = v.hide\r\n kpPinned[v.colId] = v.pinned !== null\r\n })\r\n //console.log('kpHide', kpHide)\r\n //console.log('kpPinned', kpPinned)\r\n\r\n //check\r\n if (kpHide[showColKeyNow]) {\r\n //console.log('貼於禁止編輯的儲存格, 強制取消')\r\n return\r\n }\r\n\r\n //pasteOnPinned\r\n let pasteOnPinned = null\r\n if (kpPinned[showColKeyNow]) {\r\n pasteOnPinned = showColKeyNow\r\n }\r\n //console.log('pasteOnPinned', pasteOnPinned)\r\n\r\n //kpEditable\r\n // let cd = vo.gridOptions.columnDefs\r\n let cd = vo.getApi().getColumnDefs() //gridOptions.columnDefs已歸入api, 並須通過ref取得\r\n // console.log('cd', cd)\r\n let kpEditable = {}\r\n each(cd, (v) => {\r\n kpEditable[v.field] = v.editable\r\n })\r\n //console.log('kpEditable', kpEditable)\r\n\r\n //dataPaste\r\n let dataPaste = parseText(text)\r\n //console.log('dataPaste', dataPaste)\r\n\r\n //default\r\n if (showRowIndNow === null) {\r\n showRowIndNow = 0\r\n }\r\n if (showColKeyNow === null) {\r\n showColKeyNow = mShowColKeys[0]\r\n }\r\n\r\n //pasteRowMax, pasteColMax\r\n let pasteRowMax = null\r\n let pasteColMax = null\r\n try {\r\n pasteRowMax = size(dataPaste)\r\n }\r\n catch (err) {\r\n //console.log('無法計算貼上數據列的總量', err)\r\n return\r\n }\r\n try {\r\n pasteColMax = size(dataPaste[0])\r\n }\r\n catch (err) {\r\n //console.log('無法計算貼上數據行的總量', err)\r\n return\r\n }\r\n\r\n //paste\r\n let i = -1\r\n // let rowsTemp = cloneDeep(vo.rows)\r\n let rows = vo.rows //記憶體得用原始記憶體, 否則applyTransaction會無法找到原始數據物件進行更新\r\n let updateRows = []\r\n for (let ii = 0; ii < size(mShowColKeys); ii++) {\r\n let v = mShowColKeys[ii]\r\n //console.log('v', v)\r\n\r\n //check\r\n if (kpHide[v]) {\r\n continue //數據貼到隱藏欄位故跳過\r\n }\r\n\r\n //check\r\n if (pasteOnPinned) { //貼於固定欄位時\r\n if (kpPinned[v]) {\r\n if (pasteOnPinned === v) { //v !== pasteOnPinned\r\n //console.log('已貼到固定欄位')\r\n pasteOnPinned = true //已貼到固定欄位, 強制修改為true\r\n }\r\n else if (pasteOnPinned === true) {\r\n //console.log('已貼過固定欄位, 允許貼至其他固定欄位')\r\n }\r\n else {\r\n //console.log('雖然是貼到固定欄位, 但尚未貼到原本固定欄位, 強制取消')\r\n continue\r\n }\r\n }\r\n else {\r\n //console.log('貼於固定欄位時, 數據只允許貼到該固定欄位上', pasteOnPinned, v)\r\n continue //貼於固定欄位時, 數據只允許貼到該固定欄位上\r\n }\r\n }\r\n else { //不是貼於固定欄位時\r\n if (kpPinned[v]) {\r\n //console.log('不是貼於固定欄位時, 數據貼到固定欄位則跳過', pasteOnPinned, v, kpPinned[v])\r\n continue //不是貼於固定欄位時, 數據貼到固定欄位則跳過\r\n }\r\n }\r\n\r\n //add i\r\n if (v === showColKeyNow) {\r\n i = 0\r\n }\r\n else if (i >= 0) { //當出現>=0就代表已經找到showColKey\r\n i += 1\r\n }\r\n\r\n //modify data\r\n if (i >= 0 && i < pasteColMax) {\r\n let pasteColInd = i\r\n let trueColKey = v\r\n // console.log('pasteColInd', pasteColInd, 'trueColKey', trueColKey)\r\n\r\n //check\r\n if (!kpEditable[trueColKey]) {\r\n continue //禁止編輯欄位故跳過, i的增加還是得照常處理, 也就是只有不能編輯欄位的數據不變更\r\n }\r\n\r\n for (let j = 0; j < pasteRowMax; j++) {\r\n let pasteRowInd = j\r\n if (showRowIndNow + j < size(mShowRowInds)) {\r\n let trueRowInd = mShowRowInds[showRowIndNow + j]\r\n // console.log('pasteRowInd', pasteRowInd, 'trueRowInd', trueRowInd)\r\n\r\n // //pasteValue\r\n // let pasteValue = dataPaste[pasteRowInd][pasteColInd]\r\n // console.log('pasteValue', pasteValue)\r\n\r\n // //trueValue\r\n // let trueValue = rowsTemp[trueRowInd][trueColKey]\r\n // console.log('trueValue', trueValue)\r\n\r\n //save\r\n rows[trueRowInd][trueColKey] = dataPaste[pasteRowInd][pasteColInd]\r\n\r\n //push, 只紀錄需變更的rows\r\n updateRows.push(rows[trueRowInd])\r\n\r\n }\r\n\r\n }\r\n }\r\n\r\n }\r\n\r\n //applyTransaction, 只變更必要資料加速, 注意記憶體得用原始記憶體, 也就是updateRows得使用原始vo.rows來給予欲變更之rows, 否則applyTransaction會無法找到原始數據物件進行更新\r\n vo.getApi().applyTransaction({ update: updateRows })\r\n // console.log('applyTransaction', cloneDeep(updateRows))\r\n\r\n //需使用set強制更新外部opt物件的rows並再同步更新至內部rows, 否則外面數據會沒更動\r\n set(vo, `opt.rows`, rows)\r\n\r\n //rowsChange, rows是內部已更新數據, 直接用於回傳函數\r\n vo.rowsChange(rows)\r\n\r\n },\r\n\r\n refresh: async function() {\r\n //console.log('methods refresh')\r\n\r\n let vo = this\r\n\r\n //delay\r\n await delay(1)\r\n\r\n //redrawRows, 因資料變更不會觸發getRowStyle, 給自行redrawRows\r\n //可能因使用者切換組件被destroy, 故需try catch\r\n try {\r\n vo.getApi().redrawRows()\r\n }\r\n catch (err) {\r\n //console.log(err)\r\n }\r\n\r\n },\r\n\r\n keys2columns: function(keys) {\r\n //console.log('methods keys2columns')\r\n\r\n let vo = this\r\n\r\n //cs\r\n let cs = map(keys, function(key) {\r\n let o = {}\r\n\r\n //key\r\n o.field = key\r\n\r\n //text\r\n o.headerName = vo.kpHead[key]\r\n\r\n //sort\r\n o.sortable = vo.kpHeadSort[key]\r\n\r\n //comparator\r\n let funHeadSortMethod = vo.kpHeadSortMethod[key]\r\n if (isfun(funHeadSortMethod)) {\r\n o.comparator = funHeadSortMethod\r\n }\r\n else if (funHeadSortMethod === 'auto') {\r\n o.comparator = function(valueA, valueB, nodeA, nodeB, isInverted) {\r\n\r\n //若值無效\r\n let sA = iser(valueA)\r\n let sB = iser(valueB)\r\n if (sA && sB) {\r\n return 0\r\n }\r\n if (sA) {\r\n return -1\r\n }\r\n if (sB) {\r\n return 1\r\n }\r\n\r\n //若值為數字\r\n if (isnum(valueA) && isnum(valueB)) {\r\n return cdbl(valueA) - cdbl(valueB)\r\n }\r\n\r\n //若值為字串, 先比長度越小越前面, 長度相同則用localeCompare比較\r\n if (isestr(valueA) && isestr(valueB)) {\r\n let lenA = size(valueA)\r\n let lenB = size(valueB)\r\n if (lenA !== lenB) {\r\n return lenA - lenB\r\n }\r\n else {\r\n return valueA.localeCompare(valueB)\r\n }\r\n }\r\n\r\n return 0 //不比較\r\n }\r\n }\r\n\r\n //filter, 欄位標題右邊的選單按鈕, 可使用數字過濾器'agNumberColumnFilter'或文字過濾器'agTextColumnFilter'\r\n if (vo.kpHeadFilter[key]) {\r\n let t = vo.kpHeadFilterType[key]\r\n if (t === 'text') {\r\n o.filter = 'agTextColumnFilter'\r\n }\r\n else if (t === 'time') {\r\n o.filter = 'agDateColumnFilter'\r\n }\r\n else if (t === 'set') {\r\n o.filter = 'agSetColumnFilter'\r\n }\r\n else { //其他皆為num\r\n o.filter = 'agNumberColumnFilter'\r\n }\r\n }\r\n else {\r\n o.filter = false\r\n }\r\n\r\n //floatingFilter, 欄位標題下方的文字過濾輸入區, 因ag-grid 23.1.0已改為由column給予floatingFilter, 若全部column都false, 則標題下方查詢區就會自動清除騰出空間\r\n o.floatingFilter = vo.kpHeadFilter[key]\r\n\r\n //suppressMenu\r\n //o.suppressMenu = true //關閉欄位標題右邊的選單按鈕\r\n\r\n //filterParams\r\n o.filterParams = {\r\n // caseSensitive: true, //過濾區分大小寫, 會導致數字欄位無法被過濾\r\n // applyButton: true, //彈出選單下方可加入使用按鈕\r\n // clearButton: true, //彈出選單下方可加入取消按鈕\r\n // filterParams: {\r\n // comparator: function(ft, cv) {\r\n // console.log('comparator', ft, cv)\r\n // }\r\n // }\r\n }\r\n //filter plus, 欄位標題下方加入文字過濾輸入框\r\n // o.floatingFilterComponentParams = { suppressFilterButton: true }\r\n o.suppressFloatingFilterButton = true //關閉文字過濾輸入框右邊按鈕, 需suppressFloatingFilterButton=true, 因ag-grid 31.1.0已廢棄floatingFilterComponentParams.suppressFilterButton, 須改用suppressFloatingFilterButton\r\n\r\n //lockPosition, 若不拖曳而設定欄位lockPosition為true時, 該欄位會強制置左, 故不使用\r\n //o.lockPosition = !vo.kpHeadDrag[key]\r\n\r\n //suppressMovable, 指定欄位不能拖曳, 但會被其他欄位拖曳而改變位置\r\n o.suppressMovable = !vo.kpHeadDrag[key]\r\n\r\n //resizable\r\n o.resizable = true\r\n\r\n //editable\r\n o.editable = vo.kpCellEditable[key]\r\n\r\n //row selection\r\n if (vo.kpHeadCheckBox[key]) {\r\n o.headerCheckboxSelection = true\r\n o.headerCheckboxSelectionFilteredOnly = true //若有使用過濾filter, 點header的全選全取消核選方塊時, 僅針對過濾的rows來操作\r\n o.checkboxSelection = true\r\n }\r\n\r\n //cell highlight when focused\r\n if (!vo.kpHeadFocusHighlight[key]) {\r\n o.cellClass = 'no-border'\r\n }\r\n\r\n //flex\r\n // o.flex = 1\r\n\r\n //funHeadTooltip\r\n let funHeadTooltip = vo.kpHeadTooltip[key]\r\n\r\n //header onmouseenter\r\n let headerMouseenter = ''\r\n if (isfun(funHeadTooltip)) {\r\n\r\n //tooltip\r\n let t = funHeadTooltip(vo.kpHead[key], key)\r\n\r\n //cstr\r\n t = cstr(t)\r\n\r\n //kmsg\r\n let kmsg = str2md5(t)\r\n\r\n //add dtmsg\r\n dtmsg[kmsg] = t\r\n\r\n //onmouseenter\r\n headerMouseenter = `onmouseenter=\"ttWAgGridVue(this,'${kmsg}')\"`\r\n\r\n }\r\n\r\n //text-align\r\n let cTextAlign = vo.kpHeadAlignH[key]\r\n\r\n //justify-content\r\n let kpTA2JC = {\r\n 'left': 'flex-start',\r\n 'center': 'center',\r\n 'right': 'flex-end',\r\n }\r\n let cJustifyContent = kpTA2JC[cTextAlign]\r\n\r\n //headTemplate, 基於ref=eText來尋覓與給予head字串, 但會限於純文字而不能給予html\r\n let headTemplate = `\r\n <div class=\"ag-cell-label-container\" role=\"presentation\"\" ${headerMouseenter}>\r\n <span ref=\"eMenu\" class=\"ag-header-icon ag-header-cell-menu-button\"></span>\r\n <div ref=\"eLabel\" class=\"ag-header-cell-label\" style=\"justify-content:${cJustifyContent};\" role=\"presentation\">\r\n <span ref=\"eText\" class=\"ag-header-cell-text\" role=\"columnheader\"></span>\r\n <span ref=\"eSortOrder\" class=\"ag-header-icon ag-sort-order ag-hidden\" ></span>\r\n <span ref=\"eSortAsc\" class=\"ag-header-icon ag-sort-ascending-icon ag-hidden\" ></span>\r\n <span ref=\"eSortDesc\" class=\"ag-header-icon ag-sort-descending-icon ag-hidden\" ></span>\r\n <span ref=\"eSortMixed\" class=\"ag-header-icon ag-sort-mixed-icon ag-hidden\"></span>\r\n <span ref=\"eSortNone\" class=\"ag-header-icon ag-sort-none-icon ag-hidden\" ></span>\r\n <span ref=\"eFilter\" class=\"ag-header-icon ag-filter-icon\"></span>\r\n </div>\r\n </div>\r\n `\r\n\r\n //kpHeadRender\r\n if (iseobj(vo.kpHeadRender)) {\r\n let head = o.headerName\r\n if (haskey(vo.kpHeadRender, key)) {\r\n let funRender = vo.kpHeadRender[key]\r\n if (isfun(funRender)) {\r\n head = funRender(o.headerName, key, keys)\r\n }\r\n }\r\n headTemplate = `\r\n <div class=\"ag-cell-label-container\" role=\"presentation\"\" ${headerMouseenter}>\r\n <span ref=\"eMenu\" class=\"ag-header-icon ag-header-cell-menu-button\"></span>\r\n <div ref=\"eLabel\" class=\"ag-header-cell-label\" style=\"justify-content:${cJustifyContent};\" role=\"presentation\">\r\n <span class=\"ag-header-cell-text\" role=\"columnheader\">${head}</span>\r\n <span ref=\"eSortOrder\" class=\"ag-header-icon ag-sort-order\" ></span>\r\n <span ref=\"eSortAsc\" class=\"ag-header-icon ag-sort-ascending-icon\" ></span>\r\n <span ref=\"eSortDesc\" class=\"ag-header-icon ag-sort-descending-icon\" ></span>\r\n <span ref=\"eSortNone\" class=\"ag-header-icon ag-sort-none-icon\" ></span>\r\n <span ref=\"eFilter\" class=\"ag-header-icon ag-filter-icon\"></span>\r\n </div>\r\n </div>\r\n `\r\n }\r\n\r\n //複寫header template\r\n o.headerComponentParams = {\r\n template: headTemplate,\r\n }\r\n\r\n //funColSpan\r\n let funColSpan = vo.kpColSpan[key]\r\n\r\n //colSpan\r\n if (isfun(funColSpan)) {\r\n o.colSpan = function(params) {\r\n // console.log('colSpan', params)\r\n\r\n //row\r\n let row = get(params, 'data', {})\r\n\r\n //value\r\n let value = get(row, key)\r\n\r\n //funColSpan\r\n let i = funColSpan(value, key, row, params)\r\n\r\n //check\r\n if (!isnum(i)) {\r\n i = 1\r\n }\r\n\r\n //cint\r\n i = cint(i)\r\n\r\n //check\r\n if (i < 1) {\r\n i = 1\r\n }\r\n\r\n return i\r\n }\r\n }\r\n\r\n //funCellTooltip\r\n let funCellTooltip = vo.kpCellTooltip[key]\r\n\r\n //funCellRender\r\n let funCellRender = vo.kpCellRender[key]\r\n\r\n //cellRenderer\r\n o.cellRenderer = function(params) {\r\n //console.log('cellRenderer', params)\r\n\r\n //待加入於編輯cell後可顯示編輯後值的tooltip\r\n // console.log('trueRowId', params.node.id, 'trueColKey', params.column.colId)\r\n\r\n //funCellTooltip\r\n if (isfun(funCellTooltip)) {\r\n\r\n //tooltip\r\n let t = funCellTooltip(params.value, params.colDef.field, cloneDeep(params.data))\r\n\r\n //cstr\r\n t = cstr(t)\r\n\r\n //kmsg\r\n let kmsg = str2md5(t)\r\n\r\n //add dtmsg\r\n dtmsg[kmsg] = t\r\n\r\n //onmouseenter\r\n params.eGridCell.setAttribute('onmouseenter', `ttWAgGridVue(this,'${kmsg}')`)\r\n\r\n }\r\n\r\n //h\r\n let h = params.value\r\n\r\n //funCellRender\r\n if (isfun(funCellRender)) {\r\n h = funCellRender(params.value, params.colDef.field, cloneDeep(params.data))\r\n }\r\n\r\n return h\r\n }\r\n\r\n //cellStyle\r\n let cellStyle = {\r\n 'text-align': vo.kpCellAlignH[key] //add align\r\n }\r\n let funColStyle = vo.kpColStyle[key]\r\n if (isfun(funColStyle)) {\r\n cellStyle = merge(cellStyle, funColStyle()) //add col style\r\n }\r\n o.cellStyle = cellStyle\r\n\r\n //fix\r\n if (isbol(vo.kpHeadFixLeft[key])) {\r\n\r\n //pinned\r\n o.pinned = vo.kpHeadFixLeft[key] ? 'left' : ''\r\n\r\n // //suppressSizeToFit, true代表禁止欄位被sizeColumnsToFit, 因有pinned也需能resize與自動調整寬度, 故取消此功能\r\n // if (vo.kpHeadFixLeft[key]) {\r\n // o.suppressSizeToFit = true\r\n // }\r\n\r\n }\r\n\r\n //width, 內容物超過width不會自動撐開\r\n if (isnum(vo.kpHeadWidth[key])) {\r\n let w = cdbl(vo.kpHeadWidth[key])\r\n o.width = w\r\n }\r\n\r\n //minWidth, ag-grid設定minWidth還是會自動被處理調整成寬度, 例如minWidth給150, 實際會依照內容長度轉成width如200, 而內容物超過轉換後的width不會自動撐開\r\n if (isnum(vo.defHeadMinWidth)) {\r\n o.minWidth = vo.defHeadMinWidth\r\n }\r\n\r\n //maxWidth\r\n if (isnum(vo.defHeadMaxWidth)) {\r\n o.maxWidth = vo.defHeadMaxWidth\r\n }\r\n\r\n //rowDrag\r\n let rowDrag = false //default\r\n if (isbol(vo.kpRowDrag[key])) {\r\n rowDrag = vo.kpRowDrag[key]\r\n }\r\n o.rowDrag = rowDrag\r\n\r\n //hide\r\n let hide = false //default\r\n if (isbol(vo.kpHeadHide[key])) {\r\n hide = vo.kpHeadHide[key]\r\n }\r\n o.hide = hide\r\n\r\n return o\r\n })\r\n\r\n return cs\r\n },\r\n\r\n changeOpt: function() {\r\n //console.log('methods changeOpt')\r\n\r\n let vo = this\r\n\r\n //check\r\n if (!iseobj(vo.opt)) {\r\n return\r\n }\r\n\r\n //check keys\r\n let tKeys = get(vo, 'opt.keys')\r\n if (!isearr(tKeys)) {\r\n console.log('invalid opt.keys')\r\n return\r\n }\r\n\r\n //check rows\r\n let tRows = get(vo, 'opt.rows')\r\n if (!isarr(tRows)) {\r\n console.log('invalid opt.rows')\r\n return\r\n }\r\n\r\n //setobj\r\n function setobj(keys, def, kpobj) {\r\n let o = {}\r\n each(keys, function(key) {\r\n let h = def(key)\r\n if (isobj(kpobj)) {\r\n if (haskey(kpobj, key)) {\r\n h = kpobj[key]\r\n }\r\n }\r\n o[key] = h\r\n })\r\n return o\r\n }\r\n\r\n //autoFitColumn, ag-grid僅有\r\n let autoFitColumn = false\r\n if (isbol(vo.opt.autoFitColumn)) {\r\n autoFitColumn = vo.opt.autoFitColumn\r\n }\r\n vo.autoFitColumn = autoFitColumn\r\n\r\n //keys\r\n vo.keys = vo.opt.keys\r\n\r\n //kpHead\r\n vo.kpHead = setobj(vo.keys,\r\n function(key) {\r\n return key //預設使用key做head\r\n },\r\n vo.opt.kpHead\r\n )\r\n\r\n //kpHeadTooltip\r\n vo.kpHeadTooltip = {}\r\n if (isobj(vo.opt.kpHeadTooltip)) {\r\n vo.kpHeadTooltip = vo.opt.kpHeadTooltip\r\n }\r\n\r\n //defHeadAlignH\r\n vo.defHeadAlignH = 'center'\r\n if (arrHas(vo.opt.defHeadAlignH, ['left', 'center', 'right'])) {\r\n vo.defHeadAlignH = vo.opt.defHeadAlignH\r\n }\r\n\r\n //kpHeadAlignH\r\n vo.kpHeadAlignH = setobj(vo.keys,\r\n function(key) {\r\n return vo.defHeadAlignH\r\n },\r\n vo.opt.kpHeadAlignH\r\n )\r\n\r\n //defHeadSort\r\n vo.defHeadSort = true\r\n if (isbol(vo.opt.defHeadSort)) {\r\n vo.defHeadSort = vo.opt.defHeadSort\r\n }\r\n\r\n //kpHeadSort\r\n vo.kpHeadSort = setobj(vo.keys,\r\n function(key) {\r\n return vo.defHeadSort\r\n },\r\n vo.opt.kpHeadSort\r\n )\r\n\r\n //defHeadSortMethod\r\n vo.defHeadSortMethod = null\r\n if (isfun(vo.opt.defHeadSortMethod) || isestr(vo.opt.defHeadSortMethod)) {\r\n vo.defHeadSortMethod = vo.opt.defHeadSortMethod\r\n }\r\n\r\n //kpHeadSortMethod\r\n vo.kpHeadSortMethod = setobj(vo.keys,\r\n function(key) {\r\n return vo.defHeadSortMethod\r\n },\r\n vo.opt.kpHeadSortMethod\r\n )\r\n\r\n //kpHeadFixLeft\r\n vo.kpHeadFixLeft = {}\r\n if (iseobj(vo.opt.kpHeadFixLeft)) {\r\n vo.kpHeadFixLeft = vo.opt.kpHeadFixLeft\r\n }\r\n\r\n //defHeadFilter\r\n vo.defHeadFilter = true\r\n if (isbol(vo.opt.defHeadFilter)) {\r\n vo.defHeadFilter = vo.opt.defHeadFilter\r\n }\r\n\r\n //kpHeadFilter\r\n vo.kpHeadFilter = setobj(vo.keys,\r\n function(key) {\r\n return vo.defHeadFilter\r\n },\r\n vo.opt.kpHeadFilter\r\n )\r\n\r\n //defHeadFilterType\r\n vo.defHeadFilterType = 'num'\r\n if (arrHas(vo.opt.defHeadFilterType, ['num', 'text', 'time', 'set'])) {\r\n vo.defHeadFilterType = vo.opt.defHeadFilterType\r\n }\r\n\r\n //kpHeadFilterType\r\n vo.kpHeadFilterType = setobj(vo.keys,\r\n function(key) {\r\n return vo.defHeadFilterType\r\n },\r\n vo.opt.kpHeadFilterType\r\n )\r\n\r\n //kpHeadRender\r\n vo.kpHeadRender = {}\r\n if (iseobj(vo.opt.kpHeadRender)) {\r\n vo.kpHeadRender = vo.opt.kpHeadRender\r\n }\r\n\r\n //defHeadDrag\r\n vo.defHeadDrag = true\r\n if (isbol(vo.opt.defHeadDrag)) {\r\n vo.defHeadDrag = vo.opt.defHeadDrag\r\n }\r\n\r\n //kpHeadDrag\r\n vo.kpHeadDrag = setobj(vo.keys,\r\n function(key) {\r\n return vo.defHeadDrag\r\n },\r\n vo.opt.kpHeadDrag\r\n )\r\n\r\n //kpHeadCheckBox\r\n vo.kpHeadCheckBox = setobj(vo.keys,\r\n function(key) {\r\n return false //每個col皆預設false\r\n },\r\n vo.opt.kpHeadCheckBox\r\n )\r\n\r\n //kpHeadFocusHighlight\r\n vo.kpHeadFocusHighlight = setobj(vo.keys,\r\n function(key) {\r\n return true //每個col皆預設true\r\n },\r\n vo.opt.kpHeadFocusHighlight\r\n )\r\n\r\n //kpHeadHide\r\n vo.kpHeadHide = {}\r\n if (iseobj(vo.opt.kpHeadHide)) {\r\n vo.kpHeadHide = vo.opt.kpHeadHide\r\n }\r\n\r\n //kpRowStyle\r\n vo.kpRowStyle = {}\r\n if (iseobj(vo.opt.kpRowStyle)) {\r\n vo.kpRowStyle = vo.opt.kpRowStyle\r\n }\r\n\r\n //kpRowDrag\r\n vo.kpRowDrag = {}\r\n if (iseobj(vo.opt.kpRowDrag)) {\r\n vo.kpRowDrag = vo.opt.kpRowDrag\r\n }\r\n\r\n //genRowsPinnTop\r\n vo.genRowsPinnTop = null\r\n if (isfun(vo.opt.genRowsPinnTop)) {\r\n vo.genRowsPinnTop = vo.opt.genRowsPinnTop\r\n }\r\n\r\n //genRowsPinnBottom\r\n vo.genRowsPinnBottom = null\r\n if (isfun(vo.opt.genRowsPinnBottom)) {\r\n vo.genRowsPinnBottom = vo.opt.genRowsPinnBottom\r\n }\r\n\r\n //kpColStyle\r\n vo.kpColStyle = {}\r\n if (iseobj(vo.opt.kpColStyle)) {\r\n vo.kpColStyle = vo.opt.kpColStyle\r\n }\r\n\r\n //kpColSpan\r\n vo.kpColSpan = {}\r\n if (iseobj(vo.opt.kpColSpan)) {\r\n vo.kpColSpan = vo.opt.kpColSpan\r\n }\r\n\r\n //defHeadMinWidth\r\n vo.defHeadMinWidth = null\r\n if (isnum(vo.opt.defHeadMinWidth)) {\r\n vo.defHeadMinWidth = vo.opt.defHeadMinWidth\r\n }\r\n\r\n //defHeadMaxWidth\r\n vo.defHeadMaxWidth = null\r\n if (isnum(vo.opt.defHeadMaxWidth)) {\r\n vo.defHeadMaxWidth = vo.opt.defHeadMaxWidth\r\n }\r\n\r\n //kpHeadWidth\r\n vo.kpHeadWidth = {}\r\n if (iseobj(vo.opt.kpHeadWidth)) {\r\n vo.kpHeadWidth = vo.opt.kpHeadWidth\r\n }\r\n\r\n //kpCellRender\r\n vo.kpCellRender = {}\r\n if (iseobj(vo.opt.kpCellRender)) {\r\n vo.kpCellRender = vo.opt.kpCellRender\r\n }\r\n\r\n //kpCellTooltip\r\n vo.kpCellTooltip = {}\r\n if (iseobj(vo.opt.kpCellTooltip)) {\r\n vo.kpCellTooltip = vo.opt.kpCellTooltip\r\n }\r\n\r\n //defCellAlignH\r\n vo.defCellAlignH = 'center'\r\n if (arrHas(vo.opt.defCellAlignH, ['left', 'center', 'right'])) {\r\n vo.defCellAlignH = vo.opt.defCellAlignH\r\n }\r\n\r\n //kpCellAlignH\r\n vo.kpCellAlignH = setobj(vo.keys,\r\n function(key) {\r\n return vo.defCellAlignH\r\n },\r\n vo.opt.kpCellAlignH\r\n )\r\n\r\n //defCellEditable\r\n vo.defCellEditable = false\r\n if (isbol(vo.opt.defCellEditable)) {\r\n vo.defCellEditable = vo.opt.defCellEditable\r\n }\r\n\r\n //kpCellEditable\r\n vo.kpCellEditable = setobj(vo.keys,\r\n function(key) {\r\n return vo.defCellEditable\r\n },\r\n vo.opt.kpCellEditable\r\n )\r\n\r\n //tableClickEnable\r\n vo.tableClickEnable = false\r\n\r\n //rowsChange\r\n vo.rowsChange = function() {}\r\n if (isfun(vo.opt.rowsChange)) {\r\n vo.rowsChange = vo.opt.rowsChange\r\n }\r\n\r\n //rowClick\r\n vo.rowClick = function() {}\r\n if (isfun(vo.opt.rowClick)) {\r\n vo.rowClick = vo.opt.rowClick\r\n vo.tableClickEnable = true\r\n }\r\n\r\n //rowDbClick\r\n vo.rowDbClick = function() {}\r\n if (isfun(vo.opt.rowDbClick)) {\r\n vo.rowDbClick = vo.opt.rowDbClick\r\n vo.tableClickEnable = true\r\n }\r\n\r\n //rowChange\r\n vo.rowChange = function() {}\r\n if (isfun(vo.opt.rowChange)) {\r\n vo.rowChange = vo.opt.rowChange\r\n }\r\n\r\n //rowChecked\r\n vo.rowChecked = function() {}\r\n if (isfun(vo.opt.rowChecked)) {\r\n vo.rowChecked = vo.opt.rowChecked\r\n }\r\n\r\n //rowMouseEnter\r\n vo.rowMouseEnter = function() {}\r\n if (isfun(vo.opt.rowMouseEnter)) {\r\n vo.rowMouseEnter = vo.opt.rowMouseEnter\r\n }\r\n\r\n //rowMouseLeave\r\n vo.rowMouseLeave = function() {}\r\n if (isfun(vo.opt.rowMouseLeave)) {\r\n vo.rowMouseLeave = vo.opt.rowMouseLeave\r\n }\r\n\r\n //rowDragEnter\r\n vo.rowDragEnter = function() {}\r\n if (isfun(vo.opt.rowDragEnter)) {\r\n vo.rowDragEnter = vo.opt.rowDragEnter\r\n }\r\n\r\n //rowDragEnd\r\n vo.rowDragEnd = function() {}\r\n if (isfun(vo.opt.rowDragEnd)) {\r\n vo.rowDragEnd = vo.opt.rowDragEnd\r\n }\r\n\r\n //rowDragMove\r\n vo.rowDragMove = function() {}\r\n if (isfun(vo.opt.rowDragMove)) {\r\n vo.rowDragMove = vo.opt.rowDragMove\r\n }\r\n\r\n //rowDragLeave\r\n vo.rowDragLeave = function() {}\r\n if (isfun(vo.opt.rowDragLeave)) {\r\n vo.rowDragLeave = vo.opt.rowDragLeave\r\n }\r\n\r\n //rowDragChange\r\n vo.rowDragChange = function() {}\r\n if (isfun(vo.opt.rowDragChange)) {\r\n vo.rowDragChange = vo.opt.rowDragChange\r\n }\r\n\r\n //cellClick\r\n vo.cellClick = function() {}\r\n if (isfun(vo.opt.cellClick)) {\r\n vo.cellClick = vo.opt.cellClick\r\n vo.tableClickEnable = true\r\n }\r\n\r\n //cellDbClick\r\n vo.cellDbClick = function() {}\r\n if (isfun(vo.opt.cellDbClick)) {\r\n vo.cellDbClick = vo.opt.cellDbClick\r\n vo.tableClickEnable = true\r\n }\r\n\r\n //cellChange\r\n vo.cellChange = function() {}\r\n if (isfun(vo.opt.cellChange)) {\r\n vo.cellChange = vo.opt.cellChange\r\n }\r\n\r\n //cellMouseEnter\r\n vo.cellMouseEnter = function() {}\r\n if (isfun(vo.opt.cellMouseEnter)) {\r\n vo.cellMouseEnter = vo.opt.cellMouseEnter\r\n }\r\n\r\n //cellMouseLeave\r\n vo.cellMouseLeave = function() {}\r\n if (isfun(vo.opt.cellMouseLeave)) {\r\n vo.cellMouseLeave = vo.opt.cellMouseLeave\r\n }\r\n\r\n //filterChange\r\n vo.filterChange = function() {}\r\n if (isfun(vo.opt.filterChange)) {\r\n vo.filterChange = vo.opt.filterChange\r\n }\r\n\r\n //kpConvertKeysWhenUploadData\r\n vo.kpConvertKeysWhenUploadData = {}\r\n if (iseobj(vo.opt.kpConvertKeysWhenUploadData)) {\r\n vo.kpConvertKeysWhenUploadData = vo.opt.kpConvertKeysWhenUploadData\r\n }\r\n\r\n //language\r\n vo.language = 'en' //'en', 'zh-tw', 'zh-cn'\r\n if (isestr(vo.opt.language)) {\r\n vo.language = vo.opt.language\r\n }\r\n\r\n //columns, 需放在給予rows之前, 避免給予rows沒有column設定\r\n vo.columns = vo.keys2columns(vo.keys)\r\n\r\n //rows\r\n vo.rows = vo.opt.rows\r\n\r\n },\r\n\r\n setRowsPinnTop: function(rows) {\r\n // console.log('methods setRowsPinnTop', rows)\r\n\r\n let vo = this\r\n\r\n //check\r\n if (isfun(vo.genRowsPinnTop)) {\r\n\r\n //pinnedTopRowData\r\n let pinnedTopRowData = vo.genRowsPinnTop(rows)\r\n // console.log('pinnedTopRowData', pinnedTopRowData)\r\n\r\n //update\r\n // vo.getApi().setPinnedTopRowData(pinnedBottomRowData)\r\n vo.getApi().setGridOption('pinnedTopRowData', pinnedTopRowData) //setPinnedTopRowData已統一改為setGridOption('pinnedTopRowData',newValue)\r\n\r\n }\r\n\r\n },\r\n\r\n setRowsPinnBottom: function(rows) {\r\n // console.log('methods setRowsPinnBottom', rows)\r\n\r\n let vo = this\r\n\r\n //check\r\n if (isfun(vo.genRowsPinnBottom)) {\r\n\r\n //pinnedBottomRowData\r\n let pinnedBottomRowData = vo.genRowsPinnBottom(rows)\r\n // console.log('pinnedBottomRowData', pinnedBottomRowData)\r\n\r\n //update\r\n // vo.getApi().setPinnedBottomRowData(pinnedBottomRowData)\r\n vo.getApi().setGridOption('pinnedBottomRowData', pinnedBottomRowData) //setPinnedBottomRowData已統一改為setGridOption('pinnedBottomRowData',newValue)\r\n\r\n }\r\n\r\n },\r\n\r\n showKeys: function(keys_new) {\r\n // console.log('methods showKeys', keys_new)\r\n\r\n let vo = this\r\n\r\n //keys_old\r\n let keys_old = cloneDeep(vo.keys)\r\n // console.log('keys_old', keys_old)\r\n\r\n //keys_nouse\r\n let keys_nouse = difference(keys_old, keys_new)\r\n // console.log('keys_nouse', keys_nouse)\r\n\r\n //cs\r\n // let cs = vo.gridOptions.columnApi.getColumnState()\r\n let cs = vo.getApi().getColumnState() //gridOptions.columnApi已歸入api, 並須通過ref取得\r\n // console.log('cs', cs)\r\n\r\n //csn\r\n let csn = []\r\n each(keys_new, function(key) {\r\n let c = find(cs, { 'colId': key })\r\n c.hide = false\r\n csn.push(c)\r\n })\r\n each(keys_nouse, function(key) {\r\n let c = find(cs, { 'colId': key })\r\n c.hide = true //未顯示column改為隱藏\r\n csn.push(c)\r\n })\r\n // console.log('csn', csn)\r\n\r\n //applyColumnState\r\n // vo.gridOptions.columnApi.applyColumnState({\r\n // state: csn,\r\n // applyOrder: true, //要依照csn調整欄位順序\r\n // })\r\n vo.getApi().applyColumnState({ //gridOptions.columnApi已歸入api, 並須通過ref取得\r\n state: csn,\r\n applyOrder: true, //要依照csn調整欄位順序\r\n })\r\n\r\n },\r\n\r\n getFilters: async function() {\r\n // console.log('methods getFilters')\r\n\r\n let vo = this\r\n\r\n //keys\r\n let keys = cloneDeep(vo.keys)\r\n // console.log('keys_old', keys_old)\r\n\r\n //flts\r\n let flts = []\r\n await pmSeries(keys, async (key) => {\r\n\r\n //md\r\n let md = null\r\n try {\r\n\r\n //ft\r\n // let ft = vo.getApi().getFilterInstance(key)\r\n let ft = await vo.getApi().getColumnFilterInstance(key) //ag-grid 31.1.0準備廢棄getFilterInstance, 改用getColumnFilterInstance, 此回傳為promise\r\n // console.log(key, 'ft', ft)\r\n\r\n //md\r\n // md = ft.getModel()\r\n md = ft.appliedModel //已改用getColumnFilterInstance, 此時直接用appliedModel為model\r\n // console.log(key, 'md', md)\r\n\r\n }\r\n catch (err) {\r\n console.log(err)\r\n }\r\n\r\n //check\r\n if (iseobj(md)) {\r\n\r\n //push\r\n flts.push(md)\r\n\r\n }\r\n\r\n })\r\n\r\n return flts\r\n },\r\n\r\n clearHeadFilterAll: async function() {\r\n //console.log('methods clearHeadFilterAll')\r\n\r\n let vo = this\r\n\r\n //reset all filters\r\n vo.getApi().setFilterModel(null)\r\n\r\n //fire onFilterChanged\r\n vo.getApi().onFilterChanged()\r\n\r\n },\r\n\r\n clearHeadFilter: async function(key) {\r\n //console.log('methods clearHeadFilter', key)\r\n\r\n let vo = this\r\n\r\n //setModel\r\n // ft.setModel(null)\r\n await vo.getApi().setColumnFilterModel(key, null) //setModel改為setColumnFilterModel\r\n\r\n //fire onFilterChanged\r\n vo.getApi().onFilterChanged()\r\n\r\n },\r\n\r\n setHeadFilter: async function(key, value, type = 'contains') {\r\n //console.log('methods setHeadFilter', key, value, type)\r\n\r\n let vo = this\r\n\r\n // let tpsText = [\r\n // 'empty',\r\n // 'equals',\r\n // 'notEqual',\r\n // 'lessThan',\r\n // 'lessThanOrEqual',\r\n // 'greaterThan',\r\n // 'greaterThanOrEqual',\r\n // 'inRange',\r\n // 'contains',\r\n // 'notContains',\r\n // 'startsWith',\r\n // 'endsWith',\r\n // 'blank',\r\n // 'notBlank',\r\n // ]\r\n\r\n // let tpsNumber = [\r\n // 'empty',\r\n // 'equals',\r\n // 'notEqual',\r\n // 'lessThan',\r\n // 'lessThanOrEqual',\r\n // 'greaterThan',\r\n // 'greaterThanOrEqual',\r\n // 'inRange',\r\n // 'contains',\r\n // 'notContains',\r\n // 'startsWith',\r\n // 'endsWith',\r\n // 'blank',\r\n // 'notBlank',\r\n // ]\r\n\r\n //m\r\n let m = {\r\n type,\r\n // filter: cstr(value), //ag-grid 23版有修改filter判斷式, 其內使用trim故限定value需為字串\r\n filter: value, //ag-grid 31.1.0已修復\r\n }\r\n\r\n //setModel\r\n // ft.setModel(m)\r\n await vo.getApi().setColumnFilterModel(key, m) //setModel改為setColumnFilterModel\r\n\r\n //fire onFilterChanged\r\n vo.getApi().onFilterChanged()\r\n\r\n },\r\n\r\n getDisplayDataKeys: function() {\r\n //console.log('methods getDisplayDataKeys')\r\n\r\n let vo = this\r\n\r\n //cs\r\n // let cs = vo.gridOptions.columnApi.getColumnState()\r\n let cs = vo.getApi().getColumnState() //gridOptions.columnApi已歸入api, 並須通過ref取得\r\n // console.log('cs', cs)\r\n\r\n //show keys\r\n let keys = map(filter(cs, { 'hide': false }), 'colId')\r\n\r\n return keys\r\n },\r\n\r\n getDisplayData: function() {\r\n //console.log('methods getDisplayData')\r\n\r\n let vo = this\r\n\r\n //rs\r\n let rs = []\r\n vo.getApi().forEachNodeAfterFilterAndSort((node) => {\r\n rs.push(cloneDeep(node.data))\r\n })\r\n\r\n //show keys\r\n let keys = vo.getDisplayDataKeys()\r\n\r\n //ltdtmapping\r\n let data = ltdtmapping(rs, keys)\r\n\r\n return data\r\n },\r\n\r\n getNowData: function() {\r\n //console.log('methods getNowData')\r\n\r\n let vo = this\r\n\r\n //rs\r\n let rs = []\r\n vo.getApi().forEachNode((node) => {\r\n rs.push(cloneDeep(node.data))\r\n })\r\n\r\n //ltdtmapping\r\n let data = ltdtmapping(rs, vo.keys)\r\n\r\n return data\r\n },\r\n\r\n fitColumns: function(bDebounce = true) {\r\n // console.log('methods fitColumns', bDebounce)\r\n\r\n let vo = this\r\n\r\n //fit\r\n async function fit(w) {\r\n // console.log('call fit', w)\r\n try {\r\n\r\n //width\r\n vo.width = w\r\n\r\n // //delay\r\n // await delay(30)\r\n\r\n //api\r\n let api = vo.getApi()\r\n\r\n //sizeColumnsToFit, 有可能於高頻初始化與解構時, 例如切換分頁, 導致可能取不到sizeColumnsToFit\r\n let funSizeColumnsToFit = get(api, 'sizeColumnsToFit')\r\n if (isfun(funSizeColumnsToFit)) {\r\n api.sizeColumnsToFit()\r\n }\r\n\r\n }\r\n catch (err) {\r\n console.log('fitColumns error', err)\r\n }\r\n }\r\n\r\n //core\r\n async function core() {\r\n // console.log('call core')\r\n\r\n //ag-grid 24.1.0已能正常fit至100%, 不會因微小差距而出現水平捲軸, 故關閉先縮小再還原機制, 但縮放第3次時有些欄位header會爆版, 故還是得使用先縮小再還原機制\r\n\r\n // //先微縮小fit\r\n // await fit(99.5)\r\n\r\n // //delay\r\n // await delay(30) //不能過短, 否則先縮小再還原機制會失效, header會爆版\r\n\r\n //還原fit, ag-grid 27.3.0已能正常fit至100%\r\n await fit(100)\r\n\r\n }\r\n\r\n //core\r\n if (bDebounce) {\r\n vo.dbc(() => {\r\n core()\r\n })\r\n }\r\n else {\r\n core()\r\n }\r\n\r\n },\r\n\r\n downloadDisplayData: function(opt = {}) {\r\n //console.log('methods downloadDisplayData', opt)\r\n\r\n let vo = this\r\n\r\n //spread\r\n let {\r\n funGetKeysHook,\r\n funGetLtdtHook,\r\n funGetMatHook,\r\n useHead,\r\n fileName,\r\n sheetName,\r\n pathItems\r\n } = opt\r\n\r\n //default useHead\r\n if (!isbol(useHead)) {\r\n useHead = false\r\n }\r\n\r\n //default fileName\r\n if (!isestr(fileName)) {\r\n fileName = 'data.xlsx'\r\n }\r\n\r\n //default pathItems\r\n if (!isearr(pathItems)) {\r\n pathItems = vo.pathItems\r\n }\r\n\r\n //show keys\r\n let keys = vo.getDisplayDataKeys()\r\n\r\n //useKeys\r\n let useKeys = cloneDeep(keys)\r\n if (isfun(funGetKeysHook)) {\r\n useKeys = funGetKeysHook(useKeys)\r\n }\r\n if (!isearr(useKeys)) {\r\n useKeys = cloneDeep(keys)\r\n }\r\n\r\n //check\r\n if (!isearr(useKeys)) {\r\n console.log('invalid useKeys')\r\n return\r\n }\r\n\r\n //data, 僅組件顯示資料\r\n let data = vo.getDisplayData()\r\n\r\n //funGetLtdtHook\r\n if (isfun(funGetLtdtHook)) {\r\n data = funGetLtdtHook(data)\r\n }\r\n\r\n //ltdtkeys2mat\r\n let mat = ltdtkeys2mat(data, useKeys) //依照funGetKeysHook回傳的keys再次提取數據\r\n\r\n //heads\r\n let heads = keys\r\n if (useHead) {\r\n heads = map(keys, (v) => {\r\n return vo.kpHead[v]\r\n })\r\n }\r\n\r\n //concat\r\n mat = concat([heads], mat)\r\n\r\n //funGetMatHook\r\n if (isfun(funGetMatHook)) {\r\n mat = funGetMatHook(mat)\r\n }\r\n\r\n //downloadExcelFileFromDataDyn\r\n downloadExcelFileFromDataDyn(fileName, sheetName, mat, pathItems)\r\n .catch((err) => {\r\n console.log(err)\r\n })\r\n\r\n return mat\r\n },\r\n\r\n downloadData: function(opt = {}) {\r\n //console.log('methods downloadData', opt)\r\n\r\n let vo = this\r\n\r\n //spread\r\n let {\r\n funGetKeysHook,\r\n funGetLtdtHook,\r\n funGetMatHook,\r\n useHead,\r\n fileName,\r\n sheetName,\r\n pathItems\r\n } = opt\r\n\r\n //default useHead\r\n if (!isbol(useHead)) {\r\n useHead = false\r\n }\r\n\r\n //default fileName\r\n if (!isestr(fileName)) {\r\n fileName = 'data.xlsx'\r\n }\r\n\r\n //default pathItems\r\n if (!isearr(pathItems)) {\r\n pathItems = vo.pathItems\r\n }\r\n\r\n //keys\r\n let keys = vo.keys\r\n\r\n //useKeys\r\n let useKeys = cloneDeep(keys)\r\n if (isfun(funGetKeysHook)) {\r\n useKeys = funGetKeysHook(useKeys) //依照funGetKeysHook回傳的keys再次提取數據\r\n }\r\n if (!isearr(useKeys)) {\r\n useKeys = cloneDeep(keys)\r\n }\r\n\r\n //check\r\n if (!isearr(useKeys)) {\r\n console.log('invalid useKeys')\r\n return\r\n }\r\n\r\n //ltdtmapping\r\n let data = ltdtmapping(vo.rows, useKeys)\r\n\r\n //funGetLtdtHook\r\n if (isfun(funGetLtdtHook)) {\r\n data = funGetLtdtHook(data)\r\n }\r\n\r\n //ltdtkeys2mat\r\n let mat = ltdtkeys2mat(data, useKeys)\r\n\r\n //heads\r\n let heads = useKeys\r\n if (useHead) {\r\n heads = map(useKeys, (v) => {\r\n return vo.kpHead[v]\r\n })\r\n }\r\n\r\n //concat\r\n mat = concat([heads], mat)\r\n\r\n //funGetMatHook\r\n if (isfun(funGetMatHook)) {\r\n mat = funGetMatHook(mat)\r\n }\r\n\r\n //downloadExcelFileFromDataDyn\r\n downloadExcelFileFromDataDyn(fileName, sheetName, mat, pathItems)\r\n .catch((err) => {\r\n console.log(err)\r\n })\r\n\r\n return mat\r\n },\r\n\r\n uploadData: async function(opt = {}) {\r\n //console.log('methods uploadData', opt)\r\n\r\n let vo = this\r\n\r\n //params\r\n let { pathItems = null, beforeUpload = null, parseSheetInd = 0, uploadMode = 'replace' } = opt\r\n\r\n //parseSheetInd\r\n if (!isp0int(parseSheetInd)) {\r\n parseSheetInd = 0\r\n }\r\n parseSheetInd = cint(parseSheetInd)\r\n // console.log('parseSheetInd', parseSheetInd)\r\n\r\n //pathItems\r\n if (!isearr(pathItems)) {\r\n pathItems = vo.pathItems\r\n }\r\n\r\n //domShowInputAndGetFilesU8Arrs\r\n let d = await domShowInputAndGetFilesU8Arrs()\r\n // console.log('d', d)\r\n\r\n //取第一個檔案\r\n let file = d[0]\r\n\r\n //getDataFromExcelFileU8ArrDyn\r\n let r = await getDataFromExcelFileU8ArrDyn(file.u8a, 'ltdt', false, pathItems)\r\n\r\n //sh\r\n let sh = null\r\n try {\r\n sh = r[parseSheetInd] //取第parseSheetInd個sheet\r\n }\r\n catch (err) {\r\n return Promise.reject({\r\n msg: 'invalid parseSheetInd',\r\n err,\r\n })\r\n }\r\n // console.log('data', sh.data)\r\n\r\n //rows\r\n let rows = []\r\n try {\r\n rows = sh.data\r\n }\r\n catch (err) {\r\n return Promise.reject({\r\n msg: 'can not get data from sheet',\r\n err,\r\n })\r\n }\r\n\r\n //kpConvertKeysWhenUploadData\r\n if (iseobj(vo.kpConvertKeysWhenUploadData)) {\r\n rows = map(rows, (row) => {\r\n let t = {}\r\n each(row, (v, k) => {\r\n let rk = k\r\n let rv = v\r\n if (haskey(vo.kpConvertKeysWhenUploadData, k)) {\r\n rk = vo.kpConvertKeysWhenUploadData[k]\r\n }\r\n t[rk] = rv\r\n })\r\n return t\r\n })\r\n }\r\n\r\n //beforeUpload\r\n if (isfun(beforeUpload)) {\r\n let r = beforeUpload(rows)\r\n if (ispm(r)) {\r\n rows = await r\r\n }\r\n else {\r\n rows = r\r\n }\r\n }\r\n\r\n //ltdtmapping\r\n rows = ltdtmapping(rows, vo.keys)\r\n\r\n //uploadMode\r\n if (uploadMode === 'replace') {\r\n // rows=rows\r\n }\r\n else if (uploadMode === 'append') {\r\n\r\n //rowsTemp\r\n let rowsTemp = get(vo, 'opt.rows', [])\r\n rowsTemp = cloneDeep(rowsTemp)\r\n\r\n //push\r\n each(rows, (v) => {\r\n rowsTemp.push(v)\r\n })\r\n\r\n //save\r\n rows = rowsTemp\r\n\r\n // //setTimeout, 變更數據後頁面會先渲染, delay後才能調捲軸, 否則太快執行會被頁面渲染蓋掉\r\n // setTimeout(() => {\r\n\r\n // //getGridOptions\r\n // let o = vo.getGridOptions()\r\n\r\n // //ensureIndexVisible, scrollTo(index)\r\n // o.api.ensureIndexVisible(size(rowsTemp) - 1, 'bottom') //捲到最下\r\n\r\n // }, 1)\r\n\r\n }\r\n\r\n //需使用set強制更新外部opt物件的rows並再同步更新至內部rows, 否則外面數據會沒更動\r\n set(vo, `opt.rows`, rows)\r\n\r\n //rowsChange, rows是內部已更新數據, 直接用於回傳函數\r\n vo.rowsChange(rows)\r\n\r\n return rows\r\n },\r\n\r\n triggerFilterChange: async function(from) {\r\n //console.log('methods triggerFilterChange', from)\r\n\r\n let vo = this\r\n\r\n //filterall\r\n let filterall = vo.filterall\r\n\r\n //flts\r\n let flts = await vo.getFilters()\r\n\r\n //isFilter\r\n let isFilter = isestr(filterall) || size(flts) > 0\r\n\r\n //filterChange\r\n vo.filterChange({\r\n from,\r\n filterall,\r\n flts,\r\n isFilter,\r\n // ev,\r\n })\r\n\r\n },\r\n\r\n },\r\n}\r\n<\/script>\r\n\r\n<style>\r\n.CompCssWAgGridVue .ag-theme-balham, .ag-header {\r\n font-family: inherit;\r\n}\r\n.CompCssWAgGridVue .ag-theme-balham .ag-header {\r\n font-family: inherit;\r\n}\r\n.CompCssWAgGridVue .ag-header-cell .ag-input-field-input, .ag-filter .ag-input-field-input {\r\n transition: all 0.5s;\r\n padding: 3px 8px;\r\n box-shadow: inherit !important;\r\n background-color: #fff;\r\n border: 1px solid #ccc;\r\n border-radius: 5px;\r\n}\r\n.CompCssWAgGridVue .ag-input-field-input:focus {\r\n border: 1px solid #777;\r\n}\r\n.CompCssWAgGridVue .no-border.ag-cell:focus{\r\n border-color: transparent !important;\r\n outline: none;\r\n}\r\n</style>\r\n"]},media:void 0})}),Lc,undefined,false,undefined,!1,Sc,void 0,void 0)}));
//# sourceMappingURL=w-aggrid-vue.umd.js.map