sample-ui-component-library 0.0.5-beta → 0.0.5-dev

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/cjs/index.js CHANGED
@@ -1,4 +1,4 @@
1
- "use strict";var n=require("react/jsx-runtime"),e=require("react");function t(n){var e=Object.create(null);return n&&Object.keys(n).forEach(function(t){if("default"!==t){var r=Object.getOwnPropertyDescriptor(n,t);Object.defineProperty(e,t,r.get?r:{enumerable:!0,get:function(){return n[t]}})}}),e.default=n,Object.freeze(e)}require("react-dom");var r=t(e);function o(n,e){void 0===e&&(e={});var t=e.insertAt;if(n&&"undefined"!=typeof document){var r=document.head||document.getElementsByTagName("head")[0],o=document.createElement("style");o.type="text/css","top"===t&&r.firstChild?r.insertBefore(o,r.firstChild):r.appendChild(o),o.styleSheet?o.styleSheet.cssText=n:o.appendChild(document.createTextNode(n))}}function a(n){return n&&n.__esModule&&Object.prototype.hasOwnProperty.call(n,"default")?n.default:n}o('.stackContainer {\n width: 100%;\n height: 100%;\n overflow-y: auto;\n scrollbar-gutter: stable;\n scrollbar-color: rgba(71, 71, 71, 0.4) #252526;\n scrollbar-width: thin;\n font-size: 13px;\n font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;\n}\n\n.stackRow {\n display: flex;\n justify-content: space-between;\n height: 30px;\n align-items: center;\n color: white;\n padding: 0 20px;\n}\n\n.stackRow:hover {\n cursor: pointer;\n background-color: #2a2d2e;\n}\n\n.stackRow > .left {\n display: flex;\n}\n\n.stackRow > .right {\n display: flex;\n}\n\n.functionName {\n color: #fff;\n}\n\n.fileName {\n color: #ccc;\n font-size: 11px;\n}\n\n.lineNumber {\n background: #4d4d4d;\n color: #b0ccc3;\n border-radius: 5px;\n margin-left: 10px;\n padding: 0px 5px;\n}');var i,s={exports:{}},l={exports:{}},d={};var c,p,u,b,m,f,g,h,v,x,w,y,k,_,E,S={};
1
+ "use strict";var n=require("react/jsx-runtime"),e=require("react");require("react-dom");var t=require("@dnd-kit/core");function r(n){var e=Object.create(null);return n&&Object.keys(n).forEach(function(t){if("default"!==t){var r=Object.getOwnPropertyDescriptor(n,t);Object.defineProperty(e,t,r.get?r:{enumerable:!0,get:function(){return n[t]}})}}),e.default=n,Object.freeze(e)}var o=r(e);function a(n,e){void 0===e&&(e={});var t=e.insertAt;if(n&&"undefined"!=typeof document){var r=document.head||document.getElementsByTagName("head")[0],o=document.createElement("style");o.type="text/css","top"===t&&r.firstChild?r.insertBefore(o,r.firstChild):r.appendChild(o),o.styleSheet?o.styleSheet.cssText=n:o.appendChild(document.createTextNode(n))}}function i(n){return n&&n.__esModule&&Object.prototype.hasOwnProperty.call(n,"default")?n.default:n}a('.stackContainer {\n width: 100%;\n height: 100%;\n overflow-y: auto;\n scrollbar-gutter: stable;\n scrollbar-color: rgba(71, 71, 71, 0.4) #252526;\n scrollbar-width: thin;\n font-size: 13px;\n font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;\n}\n\n.stackRow {\n display: flex;\n justify-content: space-between;\n height: 30px;\n align-items: center;\n color: white;\n padding: 0 20px;\n}\n\n.stackRow:hover {\n cursor: pointer;\n background-color: #2a2d2e;\n}\n\n.stackRow > .left {\n display: flex;\n}\n\n.stackRow > .right {\n display: flex;\n}\n\n.functionName {\n color: #fff;\n}\n\n.fileName {\n color: #ccc;\n font-size: 11px;\n}\n\n.lineNumber {\n background: #4d4d4d;\n color: #b0ccc3;\n border-radius: 5px;\n margin-left: 10px;\n padding: 0px 5px;\n}');var s,l={exports:{}},d={exports:{}},c={};var p,u,b,m,f,g,h,v,x,w,y,k,E,_,S,O={};
2
2
  /** @license React v16.13.1
3
3
  * react-is.development.js
4
4
  *
@@ -6,17 +6,17 @@
6
6
  *
7
7
  * This source code is licensed under the MIT license found in the
8
8
  * LICENSE file in the root directory of this source tree.
9
- */function O(){return p||(p=1,"production"===process.env.NODE_ENV?l.exports=function(){if(i)return d;i=1;var n="function"==typeof Symbol&&Symbol.for,e=n?Symbol.for("react.element"):60103,t=n?Symbol.for("react.portal"):60106,r=n?Symbol.for("react.fragment"):60107,o=n?Symbol.for("react.strict_mode"):60108,a=n?Symbol.for("react.profiler"):60114,s=n?Symbol.for("react.provider"):60109,l=n?Symbol.for("react.context"):60110,c=n?Symbol.for("react.async_mode"):60111,p=n?Symbol.for("react.concurrent_mode"):60111,u=n?Symbol.for("react.forward_ref"):60112,b=n?Symbol.for("react.suspense"):60113,m=n?Symbol.for("react.suspense_list"):60120,f=n?Symbol.for("react.memo"):60115,g=n?Symbol.for("react.lazy"):60116,h=n?Symbol.for("react.block"):60121,v=n?Symbol.for("react.fundamental"):60117,x=n?Symbol.for("react.responder"):60118,w=n?Symbol.for("react.scope"):60119;function y(n){if("object"==typeof n&&null!==n){var i=n.$$typeof;switch(i){case e:switch(n=n.type){case c:case p:case r:case a:case o:case b:return n;default:switch(n=n&&n.$$typeof){case l:case u:case g:case f:case s:return n;default:return i}}case t:return i}}}function k(n){return y(n)===p}return d.AsyncMode=c,d.ConcurrentMode=p,d.ContextConsumer=l,d.ContextProvider=s,d.Element=e,d.ForwardRef=u,d.Fragment=r,d.Lazy=g,d.Memo=f,d.Portal=t,d.Profiler=a,d.StrictMode=o,d.Suspense=b,d.isAsyncMode=function(n){return k(n)||y(n)===c},d.isConcurrentMode=k,d.isContextConsumer=function(n){return y(n)===l},d.isContextProvider=function(n){return y(n)===s},d.isElement=function(n){return"object"==typeof n&&null!==n&&n.$$typeof===e},d.isForwardRef=function(n){return y(n)===u},d.isFragment=function(n){return y(n)===r},d.isLazy=function(n){return y(n)===g},d.isMemo=function(n){return y(n)===f},d.isPortal=function(n){return y(n)===t},d.isProfiler=function(n){return y(n)===a},d.isStrictMode=function(n){return y(n)===o},d.isSuspense=function(n){return y(n)===b},d.isValidElementType=function(n){return"string"==typeof n||"function"==typeof n||n===r||n===p||n===a||n===o||n===b||n===m||"object"==typeof n&&null!==n&&(n.$$typeof===g||n.$$typeof===f||n.$$typeof===s||n.$$typeof===l||n.$$typeof===u||n.$$typeof===v||n.$$typeof===x||n.$$typeof===w||n.$$typeof===h)},d.typeOf=y,d}():l.exports=(c||(c=1,"production"!==process.env.NODE_ENV&&function(){var n="function"==typeof Symbol&&Symbol.for,e=n?Symbol.for("react.element"):60103,t=n?Symbol.for("react.portal"):60106,r=n?Symbol.for("react.fragment"):60107,o=n?Symbol.for("react.strict_mode"):60108,a=n?Symbol.for("react.profiler"):60114,i=n?Symbol.for("react.provider"):60109,s=n?Symbol.for("react.context"):60110,l=n?Symbol.for("react.async_mode"):60111,d=n?Symbol.for("react.concurrent_mode"):60111,c=n?Symbol.for("react.forward_ref"):60112,p=n?Symbol.for("react.suspense"):60113,u=n?Symbol.for("react.suspense_list"):60120,b=n?Symbol.for("react.memo"):60115,m=n?Symbol.for("react.lazy"):60116,f=n?Symbol.for("react.block"):60121,g=n?Symbol.for("react.fundamental"):60117,h=n?Symbol.for("react.responder"):60118,v=n?Symbol.for("react.scope"):60119;function x(n){if("object"==typeof n&&null!==n){var u=n.$$typeof;switch(u){case e:var f=n.type;switch(f){case l:case d:case r:case a:case o:case p:return f;default:var g=f&&f.$$typeof;switch(g){case s:case c:case m:case b:case i:return g;default:return u}}case t:return u}}}var w=l,y=d,k=s,_=i,E=e,O=c,C=r,N=m,j=b,z=t,M=a,P=o,R=p,A=!1;function I(n){return x(n)===d}S.AsyncMode=w,S.ConcurrentMode=y,S.ContextConsumer=k,S.ContextProvider=_,S.Element=E,S.ForwardRef=O,S.Fragment=C,S.Lazy=N,S.Memo=j,S.Portal=z,S.Profiler=M,S.StrictMode=P,S.Suspense=R,S.isAsyncMode=function(n){return A||(A=!0,console.warn("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 17+. Update your code to use ReactIs.isConcurrentMode() instead. It has the exact same API.")),I(n)||x(n)===l},S.isConcurrentMode=I,S.isContextConsumer=function(n){return x(n)===s},S.isContextProvider=function(n){return x(n)===i},S.isElement=function(n){return"object"==typeof n&&null!==n&&n.$$typeof===e},S.isForwardRef=function(n){return x(n)===c},S.isFragment=function(n){return x(n)===r},S.isLazy=function(n){return x(n)===m},S.isMemo=function(n){return x(n)===b},S.isPortal=function(n){return x(n)===t},S.isProfiler=function(n){return x(n)===a},S.isStrictMode=function(n){return x(n)===o},S.isSuspense=function(n){return x(n)===p},S.isValidElementType=function(n){return"string"==typeof n||"function"==typeof n||n===r||n===d||n===a||n===o||n===p||n===u||"object"==typeof n&&null!==n&&(n.$$typeof===m||n.$$typeof===b||n.$$typeof===i||n.$$typeof===s||n.$$typeof===c||n.$$typeof===g||n.$$typeof===h||n.$$typeof===v||n.$$typeof===f)},S.typeOf=x}()),S)),l.exports}
9
+ */function C(){return u||(u=1,"production"===process.env.NODE_ENV?d.exports=function(){if(s)return c;s=1;var n="function"==typeof Symbol&&Symbol.for,e=n?Symbol.for("react.element"):60103,t=n?Symbol.for("react.portal"):60106,r=n?Symbol.for("react.fragment"):60107,o=n?Symbol.for("react.strict_mode"):60108,a=n?Symbol.for("react.profiler"):60114,i=n?Symbol.for("react.provider"):60109,l=n?Symbol.for("react.context"):60110,d=n?Symbol.for("react.async_mode"):60111,p=n?Symbol.for("react.concurrent_mode"):60111,u=n?Symbol.for("react.forward_ref"):60112,b=n?Symbol.for("react.suspense"):60113,m=n?Symbol.for("react.suspense_list"):60120,f=n?Symbol.for("react.memo"):60115,g=n?Symbol.for("react.lazy"):60116,h=n?Symbol.for("react.block"):60121,v=n?Symbol.for("react.fundamental"):60117,x=n?Symbol.for("react.responder"):60118,w=n?Symbol.for("react.scope"):60119;function y(n){if("object"==typeof n&&null!==n){var s=n.$$typeof;switch(s){case e:switch(n=n.type){case d:case p:case r:case a:case o:case b:return n;default:switch(n=n&&n.$$typeof){case l:case u:case g:case f:case i:return n;default:return s}}case t:return s}}}function k(n){return y(n)===p}return c.AsyncMode=d,c.ConcurrentMode=p,c.ContextConsumer=l,c.ContextProvider=i,c.Element=e,c.ForwardRef=u,c.Fragment=r,c.Lazy=g,c.Memo=f,c.Portal=t,c.Profiler=a,c.StrictMode=o,c.Suspense=b,c.isAsyncMode=function(n){return k(n)||y(n)===d},c.isConcurrentMode=k,c.isContextConsumer=function(n){return y(n)===l},c.isContextProvider=function(n){return y(n)===i},c.isElement=function(n){return"object"==typeof n&&null!==n&&n.$$typeof===e},c.isForwardRef=function(n){return y(n)===u},c.isFragment=function(n){return y(n)===r},c.isLazy=function(n){return y(n)===g},c.isMemo=function(n){return y(n)===f},c.isPortal=function(n){return y(n)===t},c.isProfiler=function(n){return y(n)===a},c.isStrictMode=function(n){return y(n)===o},c.isSuspense=function(n){return y(n)===b},c.isValidElementType=function(n){return"string"==typeof n||"function"==typeof n||n===r||n===p||n===a||n===o||n===b||n===m||"object"==typeof n&&null!==n&&(n.$$typeof===g||n.$$typeof===f||n.$$typeof===i||n.$$typeof===l||n.$$typeof===u||n.$$typeof===v||n.$$typeof===x||n.$$typeof===w||n.$$typeof===h)},c.typeOf=y,c}():d.exports=(p||(p=1,"production"!==process.env.NODE_ENV&&function(){var n="function"==typeof Symbol&&Symbol.for,e=n?Symbol.for("react.element"):60103,t=n?Symbol.for("react.portal"):60106,r=n?Symbol.for("react.fragment"):60107,o=n?Symbol.for("react.strict_mode"):60108,a=n?Symbol.for("react.profiler"):60114,i=n?Symbol.for("react.provider"):60109,s=n?Symbol.for("react.context"):60110,l=n?Symbol.for("react.async_mode"):60111,d=n?Symbol.for("react.concurrent_mode"):60111,c=n?Symbol.for("react.forward_ref"):60112,p=n?Symbol.for("react.suspense"):60113,u=n?Symbol.for("react.suspense_list"):60120,b=n?Symbol.for("react.memo"):60115,m=n?Symbol.for("react.lazy"):60116,f=n?Symbol.for("react.block"):60121,g=n?Symbol.for("react.fundamental"):60117,h=n?Symbol.for("react.responder"):60118,v=n?Symbol.for("react.scope"):60119;function x(n){if("object"==typeof n&&null!==n){var u=n.$$typeof;switch(u){case e:var f=n.type;switch(f){case l:case d:case r:case a:case o:case p:return f;default:var g=f&&f.$$typeof;switch(g){case s:case c:case m:case b:case i:return g;default:return u}}case t:return u}}}var w=l,y=d,k=s,E=i,_=e,S=c,C=r,N=m,j=b,z=t,M=a,P=o,R=p,I=!1;function A(n){return x(n)===d}O.AsyncMode=w,O.ConcurrentMode=y,O.ContextConsumer=k,O.ContextProvider=E,O.Element=_,O.ForwardRef=S,O.Fragment=C,O.Lazy=N,O.Memo=j,O.Portal=z,O.Profiler=M,O.StrictMode=P,O.Suspense=R,O.isAsyncMode=function(n){return I||(I=!0,console.warn("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 17+. Update your code to use ReactIs.isConcurrentMode() instead. It has the exact same API.")),A(n)||x(n)===l},O.isConcurrentMode=A,O.isContextConsumer=function(n){return x(n)===s},O.isContextProvider=function(n){return x(n)===i},O.isElement=function(n){return"object"==typeof n&&null!==n&&n.$$typeof===e},O.isForwardRef=function(n){return x(n)===c},O.isFragment=function(n){return x(n)===r},O.isLazy=function(n){return x(n)===m},O.isMemo=function(n){return x(n)===b},O.isPortal=function(n){return x(n)===t},O.isProfiler=function(n){return x(n)===a},O.isStrictMode=function(n){return x(n)===o},O.isSuspense=function(n){return x(n)===p},O.isValidElementType=function(n){return"string"==typeof n||"function"==typeof n||n===r||n===d||n===a||n===o||n===p||n===u||"object"==typeof n&&null!==n&&(n.$$typeof===m||n.$$typeof===b||n.$$typeof===i||n.$$typeof===s||n.$$typeof===c||n.$$typeof===g||n.$$typeof===h||n.$$typeof===v||n.$$typeof===f)},O.typeOf=x}()),O)),d.exports}
10
10
  /*
11
11
  object-assign
12
12
  (c) Sindre Sorhus
13
13
  @license MIT
14
- */function C(){if(b)return u;b=1;var n=Object.getOwnPropertySymbols,e=Object.prototype.hasOwnProperty,t=Object.prototype.propertyIsEnumerable;return u=function(){try{if(!Object.assign)return!1;var n=new String("abc");if(n[5]="de","5"===Object.getOwnPropertyNames(n)[0])return!1;for(var e={},t=0;t<10;t++)e["_"+String.fromCharCode(t)]=t;if("0123456789"!==Object.getOwnPropertyNames(e).map(function(n){return e[n]}).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach(function(n){r[n]=n}),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(n){return!1}}()?Object.assign:function(r,o){for(var a,i,s=function(n){if(null==n)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(n)}(r),l=1;l<arguments.length;l++){for(var d in a=Object(arguments[l]))e.call(a,d)&&(s[d]=a[d]);if(n){i=n(a);for(var c=0;c<i.length;c++)t.call(a,i[c])&&(s[i[c]]=a[i[c]])}}return s},u}function N(){if(f)return m;f=1;return m="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"}function j(){return h?g:(h=1,g=Function.call.bind(Object.prototype.hasOwnProperty))}function z(){if(x)return v;x=1;var n=function(){};if("production"!==process.env.NODE_ENV){var e=N(),t={},r=j();n=function(n){var e="Warning: "+n;"undefined"!=typeof console&&console.error(e);try{throw new Error(e)}catch(n){}}}function o(o,a,i,s,l){if("production"!==process.env.NODE_ENV)for(var d in o)if(r(o,d)){var c;try{if("function"!=typeof o[d]){var p=Error((s||"React class")+": "+i+" type `"+d+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof o[d]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw p.name="Invariant Violation",p}c=o[d](a,d,s,i,null,e)}catch(n){c=n}if(!c||c instanceof Error||n((s||"React class")+": type specification of "+i+" `"+d+"` is invalid; the type checker function must return `null` or an `Error` but returned a "+typeof c+". You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument)."),c instanceof Error&&!(c.message in t)){t[c.message]=!0;var u=l?l():"";n("Failed "+i+" type: "+c.message+(null!=u?u:""))}}}return o.resetWarningCache=function(){"production"!==process.env.NODE_ENV&&(t={})},v=o}function M(){if(y)return w;y=1;var n=O(),e=C(),t=N(),r=j(),o=z(),a=function(){};function i(){return null}return"production"!==process.env.NODE_ENV&&(a=function(n){var e="Warning: "+n;"undefined"!=typeof console&&console.error(e);try{throw new Error(e)}catch(n){}}),w=function(s,l){var d="function"==typeof Symbol&&Symbol.iterator;var c="<<anonymous>>",p={array:f("array"),bigint:f("bigint"),bool:f("boolean"),func:f("function"),number:f("number"),object:f("object"),string:f("string"),symbol:f("symbol"),any:m(i),arrayOf:function(n){return m(function(e,r,o,a,i){if("function"!=typeof n)return new b("Property `"+i+"` of component `"+o+"` has invalid PropType notation inside arrayOf.");var s=e[r];if(!Array.isArray(s))return new b("Invalid "+a+" `"+i+"` of type `"+v(s)+"` supplied to `"+o+"`, expected an array.");for(var l=0;l<s.length;l++){var d=n(s,l,o,a,i+"["+l+"]",t);if(d instanceof Error)return d}return null})},element:m(function(n,e,t,r,o){var a=n[e];return s(a)?null:new b("Invalid "+r+" `"+o+"` of type `"+v(a)+"` supplied to `"+t+"`, expected a single ReactElement.")}),elementType:m(function(e,t,r,o,a){var i=e[t];return n.isValidElementType(i)?null:new b("Invalid "+o+" `"+a+"` of type `"+v(i)+"` supplied to `"+r+"`, expected a single ReactElement type.")}),instanceOf:function(n){return m(function(e,t,r,o,a){if(!(e[t]instanceof n)){var i=n.name||c;return new b("Invalid "+o+" `"+a+"` of type `"+(((s=e[t]).constructor&&s.constructor.name?s.constructor.name:c)+"` supplied to `")+r+"`, expected instance of `"+i+"`.")}var s;return null})},node:m(function(n,e,t,r,o){return h(n[e])?null:new b("Invalid "+r+" `"+o+"` supplied to `"+t+"`, expected a ReactNode.")}),objectOf:function(n){return m(function(e,o,a,i,s){if("function"!=typeof n)return new b("Property `"+s+"` of component `"+a+"` has invalid PropType notation inside objectOf.");var l=e[o],d=v(l);if("object"!==d)return new b("Invalid "+i+" `"+s+"` of type `"+d+"` supplied to `"+a+"`, expected an object.");for(var c in l)if(r(l,c)){var p=n(l,c,a,i,s+"."+c,t);if(p instanceof Error)return p}return null})},oneOf:function(n){if(!Array.isArray(n))return"production"!==process.env.NODE_ENV&&a(arguments.length>1?"Invalid arguments supplied to oneOf, expected an array, got "+arguments.length+" arguments. A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).":"Invalid argument supplied to oneOf, expected an array."),i;return m(function(e,t,r,o,a){for(var i=e[t],s=0;s<n.length;s++)if(u(i,n[s]))return null;var l=JSON.stringify(n,function(n,e){return"symbol"===x(e)?String(e):e});return new b("Invalid "+o+" `"+a+"` of value `"+String(i)+"` supplied to `"+r+"`, expected one of "+l+".")})},oneOfType:function(n){if(!Array.isArray(n))return"production"!==process.env.NODE_ENV&&a("Invalid argument supplied to oneOfType, expected an instance of array."),i;for(var e=0;e<n.length;e++){var o=n[e];if("function"!=typeof o)return a("Invalid argument supplied to oneOfType. Expected an array of check functions, but received "+w(o)+" at index "+e+"."),i}return m(function(e,o,a,i,s){for(var l=[],d=0;d<n.length;d++){var c=(0,n[d])(e,o,a,i,s,t);if(null==c)return null;c.data&&r(c.data,"expectedType")&&l.push(c.data.expectedType)}return new b("Invalid "+i+" `"+s+"` supplied to `"+a+"`"+(l.length>0?", expected one of type ["+l.join(", ")+"]":"")+".")})},shape:function(n){return m(function(e,r,o,a,i){var s=e[r],l=v(s);if("object"!==l)return new b("Invalid "+a+" `"+i+"` of type `"+l+"` supplied to `"+o+"`, expected `object`.");for(var d in n){var c=n[d];if("function"!=typeof c)return g(o,a,i,d,x(c));var p=c(s,d,o,a,i+"."+d,t);if(p)return p}return null})},exact:function(n){return m(function(o,a,i,s,l){var d=o[a],c=v(d);if("object"!==c)return new b("Invalid "+s+" `"+l+"` of type `"+c+"` supplied to `"+i+"`, expected `object`.");var p=e({},o[a],n);for(var u in p){var m=n[u];if(r(n,u)&&"function"!=typeof m)return g(i,s,l,u,x(m));if(!m)return new b("Invalid "+s+" `"+l+"` key `"+u+"` supplied to `"+i+"`.\nBad object: "+JSON.stringify(o[a],null," ")+"\nValid keys: "+JSON.stringify(Object.keys(n),null," "));var f=m(d,u,i,s,l+"."+u,t);if(f)return f}return null})}};function u(n,e){return n===e?0!==n||1/n==1/e:n!=n&&e!=e}function b(n,e){this.message=n,this.data=e&&"object"==typeof e?e:{},this.stack=""}function m(n){if("production"!==process.env.NODE_ENV)var e={},r=0;function o(o,i,s,d,p,u,m){if(d=d||c,u=u||s,m!==t){if(l){var f=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use `PropTypes.checkPropTypes()` to call them. Read more at http://fb.me/use-check-prop-types");throw f.name="Invariant Violation",f}if("production"!==process.env.NODE_ENV&&"undefined"!=typeof console){var g=d+":"+s;!e[g]&&r<3&&(a("You are manually calling a React.PropTypes validation function for the `"+u+"` prop on `"+d+"`. This is deprecated and will throw in the standalone `prop-types` package. You may be seeing this warning due to a third-party PropTypes library. See https://fb.me/react-warning-dont-call-proptypes for details."),e[g]=!0,r++)}}return null==i[s]?o?null===i[s]?new b("The "+p+" `"+u+"` is marked as required in `"+d+"`, but its value is `null`."):new b("The "+p+" `"+u+"` is marked as required in `"+d+"`, but its value is `undefined`."):null:n(i,s,d,p,u)}var i=o.bind(null,!1);return i.isRequired=o.bind(null,!0),i}function f(n){return m(function(e,t,r,o,a,i){var s=e[t];return v(s)!==n?new b("Invalid "+o+" `"+a+"` of type `"+x(s)+"` supplied to `"+r+"`, expected `"+n+"`.",{expectedType:n}):null})}function g(n,e,t,r,o){return new b((n||"React class")+": "+e+" type `"+t+"."+r+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+o+"`.")}function h(n){switch(typeof n){case"number":case"string":case"undefined":return!0;case"boolean":return!n;case"object":if(Array.isArray(n))return n.every(h);if(null===n||s(n))return!0;var e=function(n){var e=n&&(d&&n[d]||n["@@iterator"]);if("function"==typeof e)return e}(n);if(!e)return!1;var t,r=e.call(n);if(e!==n.entries){for(;!(t=r.next()).done;)if(!h(t.value))return!1}else for(;!(t=r.next()).done;){var o=t.value;if(o&&!h(o[1]))return!1}return!0;default:return!1}}function v(n){var e=typeof n;return Array.isArray(n)?"array":n instanceof RegExp?"object":function(n,e){return"symbol"===n||!!e&&("Symbol"===e["@@toStringTag"]||"function"==typeof Symbol&&e instanceof Symbol)}(e,n)?"symbol":e}function x(n){if(null==n)return""+n;var e=v(n);if("object"===e){if(n instanceof Date)return"date";if(n instanceof RegExp)return"regexp"}return e}function w(n){var e=x(n);switch(e){case"array":case"object":return"an "+e;case"boolean":case"date":case"regexp":return"a "+e;default:return e}}return b.prototype=Error.prototype,p.checkPropTypes=o,p.resetWarningCache=o.resetWarningCache,p.PropTypes=p,p},w}function P(){if(_)return k;_=1;var n=N();function e(){}function t(){}return t.resetWarningCache=e,k=function(){function r(e,t,r,o,a,i){if(i!==n){var s=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name="Invariant Violation",s}}function o(){return r}r.isRequired=r;var a={array:r,bigint:r,bool:r,func:r,number:r,object:r,string:r,symbol:r,any:r,arrayOf:o,element:r,elementType:r,instanceOf:o,node:r,objectOf:o,oneOf:o,oneOfType:o,shape:o,exact:o,checkPropTypes:t,resetWarningCache:e};return a.PropTypes=a,a},k}function R(){if(E)return s.exports;if(E=1,"production"!==process.env.NODE_ENV){var n=O();s.exports=M()(n.isElement,true)}else s.exports=P()();return s.exports}var A=a(R()),I="#184b2d",D="#420b0e",L="#4b4b18",T=function(e){var t=e.index,r=e.functionName,o=e.fileName,a=e.lineNumber,i=e.selected,s=e.selectTraceItem,l=e.hasException,d={};return i&&0===t?d={backgroundColor:l?D:L}:i&&(d={backgroundColor:l?D:I}),n.jsxs("div",{className:"stackRow",style:d,onClick:function(n){return s(t)},children:[n.jsx("div",{className:"left",children:n.jsx("span",{className:"functionName",children:r})}),n.jsxs("div",{className:"right",children:[n.jsx("span",{className:"fileName",children:o}),n.jsxs("span",{className:"lineNumber",children:[a,":1"]})]})]})};T.propTypes={index:A.number,functionName:A.string,fileName:A.string,lineNumber:A.number,selected:A.bool,selectTraceItem:A.func,hasException:A.bool};var B=function(e){var t,r=e.traces,o=e.selectTraceItem;return n.jsx("div",{className:"stackContainer",children:(t=r.map(function(e,t){return n.jsx(T,{functionName:e.functionName,fileName:e.fileName,lineNumber:e.lineNumber,selected:e.selected,hasException:e.hasException,index:t,selectTraceItem:o},"".concat(e.fileName,"-").concat(e.lineNumber,"-").concat(e.functionName,"-").concat(t))}),t)})};function V(n,e){(null==e||e>n.length)&&(e=n.length);for(var t=0,r=Array(e);t<e;t++)r[t]=n[t];return r}function $(n,e,t){return(e=function(n){var e=function(n,e){if("object"!=typeof n||!n)return n;var t=n[Symbol.toPrimitive];if(void 0!==t){var r=t.call(n,e);if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===e?String:Number)(n)}(n,"string");return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function H(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})),t.push.apply(t,r)}return t}function F(n){for(var e=1;e<arguments.length;e++){var t=null!=arguments[e]?arguments[e]:{};e%2?H(Object(t),!0).forEach(function(e){$(n,e,t[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):H(Object(t)).forEach(function(e){Object.defineProperty(n,e,Object.getOwnPropertyDescriptor(t,e))})}return n}function Y(n,e){return function(n){if(Array.isArray(n))return n}(n)||function(n,e){var t=null==n?null:"undefined"!=typeof Symbol&&n[Symbol.iterator]||n["@@iterator"];if(null!=t){var r,o,a,i,s=[],l=!0,d=!1;try{if(a=(t=t.call(n)).next,0===e){if(Object(t)!==t)return;l=!1}else for(;!(l=(r=a.call(t)).done)&&(s.push(r.value),s.length!==e);l=!0);}catch(n){d=!0,o=n}finally{try{if(!l&&null!=t.return&&(i=t.return(),Object(i)!==i))return}finally{if(d)throw o}}return s}}(n,e)||X(n,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function G(n){return function(n){if(Array.isArray(n))return V(n)}(n)||function(n){if("undefined"!=typeof Symbol&&null!=n[Symbol.iterator]||null!=n["@@iterator"])return Array.from(n)}(n)||X(n)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function X(n,e){if(n){if("string"==typeof n)return V(n,e);var t={}.toString.call(n).slice(8,-1);return"Object"===t&&n.constructor&&(t=n.constructor.name),"Map"===t||"Set"===t?Array.from(n):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?V(n,e):void 0}}B.propTypes={traces:A.array,selectTraceItem:A.func};function W(n,e,t){return e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Z(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})),t.push.apply(t,r)}return t}function K(n){for(var e=1;e<arguments.length;e++){var t=null!=arguments[e]?arguments[e]:{};e%2?Z(Object(t),!0).forEach(function(e){W(n,e,t[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Z(Object(t)).forEach(function(e){Object.defineProperty(n,e,Object.getOwnPropertyDescriptor(t,e))})}return n}function q(n,e){if(null==n)return{};var t,r,o=function(n,e){if(null==n)return{};var t,r,o={},a=Object.keys(n);for(r=0;r<a.length;r++)t=a[r],e.indexOf(t)>=0||(o[t]=n[t]);return o}(n,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(n);for(r=0;r<a.length;r++)t=a[r],e.indexOf(t)>=0||Object.prototype.propertyIsEnumerable.call(n,t)&&(o[t]=n[t])}return o}function U(n,e){(null==e||e>n.length)&&(e=n.length);for(var t=0,r=new Array(e);t<e;t++)r[t]=n[t];return r}function Q(n,e,t){return e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function J(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})),t.push.apply(t,r)}return t}function nn(n){for(var e=1;e<arguments.length;e++){var t=null!=arguments[e]?arguments[e]:{};e%2?J(Object(t),!0).forEach(function(e){Q(n,e,t[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):J(Object(t)).forEach(function(e){Object.defineProperty(n,e,Object.getOwnPropertyDescriptor(t,e))})}return n}function en(n){return function e(){for(var t=this,r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return o.length>=n.length?n.apply(this,o):function(){for(var n=arguments.length,r=new Array(n),a=0;a<n;a++)r[a]=arguments[a];return e.apply(t,[].concat(o,r))}}}function tn(n){return{}.toString.call(n).includes("Object")}function rn(n){return"function"==typeof n}o(".viewerContainer {\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n right: 0;\n overflow: hidden;\n}\n\n.tabContainer {\n position: absolute;\n top: 0;\n left: 0;\n bottom: 40px;\n right: 0;\n}\n\n.monacoContainer {\n position: absolute;\n top: 40px;\n left: 0;\n bottom: 0;\n right: 0;\n}");var on=en(function(n,e){throw new Error(n[e]||n.default)})({initialIsRequired:"initial state is required",initialType:"initial state should be an object",initialContent:"initial state shouldn't be an empty object",handlerType:"handler should be an object or a function",handlersType:"all handlers should be a functions",selectorType:"selector should be a function",changeType:"provided value of changes should be an object",changeField:'it seams you want to change a field in the state which is not specified in the "initial" state',default:"an unknown error accured in `state-local` package"}),an={changes:function(n,e){return tn(e)||on("changeType"),Object.keys(e).some(function(e){return!function(n,e){return Object.prototype.hasOwnProperty.call(n,e)}(n,e)})&&on("changeField"),e},selector:function(n){rn(n)||on("selectorType")},handler:function(n){rn(n)||tn(n)||on("handlerType"),tn(n)&&Object.values(n).some(function(n){return!rn(n)})&&on("handlersType")},initial:function(n){var e;n||on("initialIsRequired"),tn(n)||on("initialType"),e=n,Object.keys(e).length||on("initialContent")}};function sn(n,e){return rn(e)?e(n.current):e}function ln(n,e){return n.current=nn(nn({},n.current),e),e}function dn(n,e,t){return rn(e)?e(n.current):Object.keys(t).forEach(function(t){var r;return null===(r=e[t])||void 0===r?void 0:r.call(e,n.current[t])}),t}var cn={create:function(n){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};an.initial(n),an.handler(e);var t={current:n},r=en(dn)(t,e),o=en(ln)(t),a=en(an.changes)(n),i=en(sn)(t);return[function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:function(n){return n};return an.selector(n),n(t.current)},function(n){!function(){for(var n=arguments.length,e=new Array(n),t=0;t<n;t++)e[t]=arguments[t];return function(n){return e.reduceRight(function(n,e){return e(n)},n)}}(r,o,a,i)(n)}]}};var pn,un={configIsRequired:"the configuration object is required",configType:"the configuration object should be an object",default:"an unknown error accured in `@monaco-editor/loader` package",deprecation:"Deprecation warning!\n You are using deprecated way of configuration.\n\n Instead of using\n monaco.config({ urls: { monacoBase: '...' } })\n use\n monaco.config({ paths: { vs: '...' } })\n\n For more please check the link https://github.com/suren-atoyan/monaco-loader#config\n "},bn=(pn=function(n,e){throw new Error(n[e]||n.default)},function n(){for(var e=this,t=arguments.length,r=new Array(t),o=0;o<t;o++)r[o]=arguments[o];return r.length>=pn.length?pn.apply(this,r):function(){for(var t=arguments.length,o=new Array(t),a=0;a<t;a++)o[a]=arguments[a];return n.apply(e,[].concat(r,o))}})(un),mn={config:function(n){var e;return n||bn("configIsRequired"),e=n,{}.toString.call(e).includes("Object")||bn("configType"),n.urls?(console.warn(un.deprecation),{paths:{vs:n.urls.monacoBase}}):n}};function fn(n,e){return Object.keys(e).forEach(function(t){e[t]instanceof Object&&n[t]&&Object.assign(e[t],fn(n[t],e[t]))}),K(K({},n),e)}var gn={type:"cancelation",msg:"operation is manually canceled"};function hn(n){var e=!1,t=new Promise(function(t,r){n.then(function(n){return e?r(gn):t(n)}),n.catch(r)});return t.cancel=function(){return e=!0},t}var vn,xn,wn=cn.create({config:{paths:{vs:"https://cdn.jsdelivr.net/npm/monaco-editor@0.52.2/min/vs"}},isInitialized:!1,resolve:null,reject:null,monaco:null}),yn=(xn=2,function(n){if(Array.isArray(n))return n}(vn=wn)||function(n,e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(n)){var t=[],r=!0,o=!1,a=void 0;try{for(var i,s=n[Symbol.iterator]();!(r=(i=s.next()).done)&&(t.push(i.value),!e||t.length!==e);r=!0);}catch(n){o=!0,a=n}finally{try{r||null==s.return||s.return()}finally{if(o)throw a}}return t}}(vn,xn)||function(n,e){if(n){if("string"==typeof n)return U(n,e);var t=Object.prototype.toString.call(n).slice(8,-1);return"Object"===t&&n.constructor&&(t=n.constructor.name),"Map"===t||"Set"===t?Array.from(n):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?U(n,e):void 0}}(vn,xn)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),kn=yn[0],_n=yn[1];function En(n){return document.body.appendChild(n)}function Sn(n){var e,t,r=kn(function(n){return{config:n.config,reject:n.reject}}),o=(e="".concat(r.config.paths.vs,"/loader.js"),t=document.createElement("script"),e&&(t.src=e),t);return o.onload=function(){return n()},o.onerror=r.reject,o}function On(){var n=kn(function(n){return{config:n.config,resolve:n.resolve,reject:n.reject}}),e=window.require;e.config(n.config),e(["vs/editor/editor.main"],function(e){Cn(e),n.resolve(e)},function(e){n.reject(e)})}function Cn(n){kn().monaco||_n({monaco:n})}var Nn=new Promise(function(n,e){return _n({resolve:n,reject:e})}),jn={config:function(n){var e=mn.config(n),t=e.monaco,r=q(e,["monaco"]);_n(function(n){return{config:fn(n.config,r),monaco:t}})},init:function(){var n=kn(function(n){return{monaco:n.monaco,isInitialized:n.isInitialized,resolve:n.resolve}});if(!n.isInitialized){if(_n({isInitialized:!0}),n.monaco)return n.resolve(n.monaco),hn(Nn);if(window.monaco&&window.monaco.editor)return Cn(window.monaco),n.resolve(window.monaco),hn(Nn);!function(){for(var n=arguments.length,e=new Array(n),t=0;t<n;t++)e[t]=arguments[t];return function(n){return e.reduceRight(function(n,e){return e(n)},n)}}(En,Sn)(On)}return hn(Nn)},__getMonacoInstance:function(){return kn(function(n){return n.monaco})}},zn={wrapper:{display:"flex",position:"relative",textAlign:"initial"},fullWidth:{width:"100%"},hide:{display:"none"}},Mn={container:{display:"flex",height:"100%",width:"100%",justifyContent:"center",alignItems:"center"}};var Pn=function({children:n}){return e.createElement("div",{style:Mn.container},n)};var Rn=function({width:n,height:t,isEditorReady:r,loading:o,_ref:a,className:i,wrapperProps:s}){return e.createElement("section",{style:{...zn.wrapper,width:n,height:t},...s},!r&&e.createElement(Pn,null,o),e.createElement("div",{ref:a,style:{...zn.fullWidth,...!r&&zn.hide},className:i}))},An=e.memo(Rn);var In=function(n){e.useEffect(n,[])};var Dn=function(n,t,r=!0){let o=e.useRef(!0);e.useEffect(o.current||!r?()=>{o.current=!1}:n,t)};function Ln(){}function Tn(n,e,t,r){return function(n,e){return n.editor.getModel(Bn(n,e))}(n,r)||function(n,e,t,r){return n.editor.createModel(e,t,r?Bn(n,r):void 0)}(n,e,t,r)}function Bn(n,e){return n.Uri.parse(e)}var Vn=function({original:n,modified:t,language:r,originalLanguage:o,modifiedLanguage:a,originalModelPath:i,modifiedModelPath:s,keepCurrentOriginalModel:l=!1,keepCurrentModifiedModel:d=!1,theme:c="light",loading:p="Loading...",options:u={},height:b="100%",width:m="100%",className:f,wrapperProps:g={},beforeMount:h=Ln,onMount:v=Ln}){let[x,w]=e.useState(!1),[y,k]=e.useState(!0),_=e.useRef(null),E=e.useRef(null),S=e.useRef(null),O=e.useRef(v),C=e.useRef(h),N=e.useRef(!1);In(()=>{let n=jn.init();return n.then(n=>(E.current=n)&&k(!1)).catch(n=>"cancelation"!==n?.type&&console.error("Monaco initialization: error:",n)),()=>_.current?function(){let n=_.current?.getModel();l||n?.original?.dispose(),d||n?.modified?.dispose(),_.current?.dispose()}():n.cancel()}),Dn(()=>{if(_.current&&E.current){let e=_.current.getOriginalEditor(),t=Tn(E.current,n||"",o||r||"text",i||"");t!==e.getModel()&&e.setModel(t)}},[i],x),Dn(()=>{if(_.current&&E.current){let n=_.current.getModifiedEditor(),e=Tn(E.current,t||"",a||r||"text",s||"");e!==n.getModel()&&n.setModel(e)}},[s],x),Dn(()=>{let n=_.current.getModifiedEditor();n.getOption(E.current.editor.EditorOption.readOnly)?n.setValue(t||""):t!==n.getValue()&&(n.executeEdits("",[{range:n.getModel().getFullModelRange(),text:t||"",forceMoveMarkers:!0}]),n.pushUndoStop())},[t],x),Dn(()=>{_.current?.getModel()?.original.setValue(n||"")},[n],x),Dn(()=>{let{original:n,modified:e}=_.current.getModel();E.current.editor.setModelLanguage(n,o||r||"text"),E.current.editor.setModelLanguage(e,a||r||"text")},[r,o,a],x),Dn(()=>{E.current?.editor.setTheme(c)},[c],x),Dn(()=>{_.current?.updateOptions(u)},[u],x);let j=e.useCallback(()=>{if(!E.current)return;C.current(E.current);let e=Tn(E.current,n||"",o||r||"text",i||""),l=Tn(E.current,t||"",a||r||"text",s||"");_.current?.setModel({original:e,modified:l})},[r,t,a,n,o,i,s]),z=e.useCallback(()=>{!N.current&&S.current&&(_.current=E.current.editor.createDiffEditor(S.current,{automaticLayout:!0,...u}),j(),E.current?.editor.setTheme(c),w(!0),N.current=!0)},[u,c,j]);return e.useEffect(()=>{x&&O.current(_.current,E.current)},[x]),e.useEffect(()=>{!y&&!x&&z()},[y,x,z]),e.createElement(An,{width:m,height:b,isEditorReady:x,loading:p,_ref:S,className:f,wrapperProps:g})};e.memo(Vn);var $n=function(n){let t=e.useRef();return e.useEffect(()=>{t.current=n},[n]),t.current},Hn=new Map;var Fn=function({defaultValue:n,defaultLanguage:t,defaultPath:r,value:o,language:a,path:i,theme:s="light",line:l,loading:d="Loading...",options:c={},overrideServices:p={},saveViewState:u=!0,keepCurrentModel:b=!1,width:m="100%",height:f="100%",className:g,wrapperProps:h={},beforeMount:v=Ln,onMount:x=Ln,onChange:w,onValidate:y=Ln}){let[k,_]=e.useState(!1),[E,S]=e.useState(!0),O=e.useRef(null),C=e.useRef(null),N=e.useRef(null),j=e.useRef(x),z=e.useRef(v),M=e.useRef(),P=e.useRef(o),R=$n(i),A=e.useRef(!1),I=e.useRef(!1);In(()=>{let n=jn.init();return n.then(n=>(O.current=n)&&S(!1)).catch(n=>"cancelation"!==n?.type&&console.error("Monaco initialization: error:",n)),()=>C.current?(M.current?.dispose(),b?u&&Hn.set(i,C.current.saveViewState()):C.current.getModel()?.dispose(),void C.current.dispose()):n.cancel()}),Dn(()=>{let e=Tn(O.current,n||o||"",t||a||"",i||r||"");e!==C.current?.getModel()&&(u&&Hn.set(R,C.current?.saveViewState()),C.current?.setModel(e),u&&C.current?.restoreViewState(Hn.get(i)))},[i],k),Dn(()=>{C.current?.updateOptions(c)},[c],k),Dn(()=>{!C.current||void 0===o||(C.current.getOption(O.current.editor.EditorOption.readOnly)?C.current.setValue(o):o!==C.current.getValue()&&(I.current=!0,C.current.executeEdits("",[{range:C.current.getModel().getFullModelRange(),text:o,forceMoveMarkers:!0}]),C.current.pushUndoStop(),I.current=!1))},[o],k),Dn(()=>{let n=C.current?.getModel();n&&a&&O.current?.editor.setModelLanguage(n,a)},[a],k),Dn(()=>{void 0!==l&&C.current?.revealLine(l)},[l],k),Dn(()=>{O.current?.editor.setTheme(s)},[s],k);let D=e.useCallback(()=>{if(N.current&&O.current&&!A.current){z.current(O.current);let e=i||r,d=Tn(O.current,o||n||"",t||a||"",e||"");C.current=O.current?.editor.create(N.current,{model:d,automaticLayout:!0,...c},p),u&&C.current.restoreViewState(Hn.get(e)),O.current.editor.setTheme(s),void 0!==l&&C.current.revealLine(l),_(!0),A.current=!0}},[n,t,r,o,a,i,c,p,u,s,l]);return e.useEffect(()=>{k&&j.current(C.current,O.current)},[k]),e.useEffect(()=>{!E&&!k&&D()},[E,k,D]),P.current=o,e.useEffect(()=>{k&&w&&(M.current?.dispose(),M.current=C.current?.onDidChangeModelContent(n=>{I.current||w(C.current.getValue(),n)}))},[k,w]),e.useEffect(()=>{if(k){let n=O.current.editor.onDidChangeMarkers(n=>{let e=C.current.getModel()?.uri;if(e&&n.find(n=>n.path===e.path)){let n=O.current.editor.getModelMarkers({resource:e});y?.(n)}});return()=>{n?.dispose()}}return()=>{}},[k,y]),e.createElement(An,{width:m,height:f,isEditorReady:k,loading:d,_ref:N,className:g,wrapperProps:h})},Yn=e.memo(Fn);o("");var Gn=function(t){var r=t.editorContent,o=e.useRef(null),a=e.useRef();return e.useEffect(function(){a.current=r,null!=o&&o.current&&a.current&&o.current.setValue(a.current)},[r]),n.jsx(Yn,{defaultLanguage:"python",defaultValue:"",onMount:function(n,e){o.current=n,null!=a&&a.current&&o.current.setValue(a.current)},theme:"vs-dark",options:{scrollBeyondLastLine:!1,fontSize:"12px",minimap:{enabled:!1}}})};Gn.propTypes={editorContent:A.string};var Xn=["color","size","title","className"];function Wn(){return Wn=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)({}).hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},Wn.apply(null,arguments)}var Zn=e.forwardRef(function(n,t){var r=n.color,o=void 0===r?"currentColor":r,a=n.size,i=void 0===a?"1em":a,s=n.title,l=void 0===s?null:s,d=n.className,c=void 0===d?"":d,p=function(n,e){if(null==n)return{};var t,r,o=function(n,e){if(null==n)return{};var t={};for(var r in n)if({}.hasOwnProperty.call(n,r)){if(-1!==e.indexOf(r))continue;t[r]=n[r]}return t}(n,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(n);for(r=0;r<a.length;r++)t=a[r],-1===e.indexOf(t)&&{}.propertyIsEnumerable.call(n,t)&&(o[t]=n[t])}return o}(n,Xn);return e.createElement("svg",Wn({ref:t,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",width:i,height:i,fill:o,className:["bi","bi-chevron-down",c].filter(Boolean).join(" ")},p),l?e.createElement("title",null,l):null,e.createElement("path",{fillRule:"evenodd",d:"M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708"}))});Zn.propTypes={color:A.string,size:A.oneOfType([A.string,A.number]),title:A.string,className:A.string};var Kn=["color","size","title","className"];function qn(){return qn=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)({}).hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},qn.apply(null,arguments)}var Un=e.forwardRef(function(n,t){var r=n.color,o=void 0===r?"currentColor":r,a=n.size,i=void 0===a?"1em":a,s=n.title,l=void 0===s?null:s,d=n.className,c=void 0===d?"":d,p=function(n,e){if(null==n)return{};var t,r,o=function(n,e){if(null==n)return{};var t={};for(var r in n)if({}.hasOwnProperty.call(n,r)){if(-1!==e.indexOf(r))continue;t[r]=n[r]}return t}(n,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(n);for(r=0;r<a.length;r++)t=a[r],-1===e.indexOf(t)&&{}.propertyIsEnumerable.call(n,t)&&(o[t]=n[t])}return o}(n,Kn);return e.createElement("svg",qn({ref:t,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",width:i,height:i,fill:o,className:["bi","bi-x",c].filter(Boolean).join(" ")},p),l?e.createElement("title",null,l):null,e.createElement("path",{d:"M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708"}))});Un.propTypes={color:A.string,size:A.oneOfType([A.string,A.number]),title:A.string,className:A.string};o(".tab {\n height: 100%;\n display: flex;\n justify-content: center;\n align-items: center;\n padding: 0 5px 0 10px;\n margin-right: 2px;\n cursor: default;\n}\n\n.fileName {\n font-family: sans-serif;\n font-size: 12px;\n padding-right: 5px;\n}\n\n.close {\n display: flex;\n float: right;\n cursor: pointer;\n}");var Qn="#1e1e1e",Jn="#2d2d2d",ne=function(e){var t=e.file,r=e.activeTab,o=e.selectTab,a=e.closeTab;return n.jsxs("div",{onClick:function(n){return o(n,t)},className:"tab",style:{backgroundColor:r===t.key?Qn:Jn},children:[n.jsx("div",{className:"fileName",children:t.fileName}),n.jsx("div",{className:"close",onClick:function(n){n.stopPropagation(),a(n,t)},children:n.jsx(Un,{style:{color:"white"}})})]})};ne.propTypes={file:A.shape({key:A.string.isRequired,fileName:A.oneOfType([A.string,A.array]).isRequired,path:A.string}).isRequired,activeTab:A.string.isRequired,selectTab:A.func.isRequired,closeTab:A.func.isRequired};var ee,te={exports:{}};
14
+ */function N(){if(m)return b;m=1;var n=Object.getOwnPropertySymbols,e=Object.prototype.hasOwnProperty,t=Object.prototype.propertyIsEnumerable;return b=function(){try{if(!Object.assign)return!1;var n=new String("abc");if(n[5]="de","5"===Object.getOwnPropertyNames(n)[0])return!1;for(var e={},t=0;t<10;t++)e["_"+String.fromCharCode(t)]=t;if("0123456789"!==Object.getOwnPropertyNames(e).map(function(n){return e[n]}).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach(function(n){r[n]=n}),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(n){return!1}}()?Object.assign:function(r,o){for(var a,i,s=function(n){if(null==n)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(n)}(r),l=1;l<arguments.length;l++){for(var d in a=Object(arguments[l]))e.call(a,d)&&(s[d]=a[d]);if(n){i=n(a);for(var c=0;c<i.length;c++)t.call(a,i[c])&&(s[i[c]]=a[i[c]])}}return s},b}function j(){if(g)return f;g=1;return f="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"}function z(){return v?h:(v=1,h=Function.call.bind(Object.prototype.hasOwnProperty))}function M(){if(w)return x;w=1;var n=function(){};if("production"!==process.env.NODE_ENV){var e=j(),t={},r=z();n=function(n){var e="Warning: "+n;"undefined"!=typeof console&&console.error(e);try{throw new Error(e)}catch(n){}}}function o(o,a,i,s,l){if("production"!==process.env.NODE_ENV)for(var d in o)if(r(o,d)){var c;try{if("function"!=typeof o[d]){var p=Error((s||"React class")+": "+i+" type `"+d+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof o[d]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw p.name="Invariant Violation",p}c=o[d](a,d,s,i,null,e)}catch(n){c=n}if(!c||c instanceof Error||n((s||"React class")+": type specification of "+i+" `"+d+"` is invalid; the type checker function must return `null` or an `Error` but returned a "+typeof c+". You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument)."),c instanceof Error&&!(c.message in t)){t[c.message]=!0;var u=l?l():"";n("Failed "+i+" type: "+c.message+(null!=u?u:""))}}}return o.resetWarningCache=function(){"production"!==process.env.NODE_ENV&&(t={})},x=o}function P(){if(k)return y;k=1;var n=C(),e=N(),t=j(),r=z(),o=M(),a=function(){};function i(){return null}return"production"!==process.env.NODE_ENV&&(a=function(n){var e="Warning: "+n;"undefined"!=typeof console&&console.error(e);try{throw new Error(e)}catch(n){}}),y=function(s,l){var d="function"==typeof Symbol&&Symbol.iterator;var c="<<anonymous>>",p={array:f("array"),bigint:f("bigint"),bool:f("boolean"),func:f("function"),number:f("number"),object:f("object"),string:f("string"),symbol:f("symbol"),any:m(i),arrayOf:function(n){return m(function(e,r,o,a,i){if("function"!=typeof n)return new b("Property `"+i+"` of component `"+o+"` has invalid PropType notation inside arrayOf.");var s=e[r];if(!Array.isArray(s))return new b("Invalid "+a+" `"+i+"` of type `"+v(s)+"` supplied to `"+o+"`, expected an array.");for(var l=0;l<s.length;l++){var d=n(s,l,o,a,i+"["+l+"]",t);if(d instanceof Error)return d}return null})},element:m(function(n,e,t,r,o){var a=n[e];return s(a)?null:new b("Invalid "+r+" `"+o+"` of type `"+v(a)+"` supplied to `"+t+"`, expected a single ReactElement.")}),elementType:m(function(e,t,r,o,a){var i=e[t];return n.isValidElementType(i)?null:new b("Invalid "+o+" `"+a+"` of type `"+v(i)+"` supplied to `"+r+"`, expected a single ReactElement type.")}),instanceOf:function(n){return m(function(e,t,r,o,a){if(!(e[t]instanceof n)){var i=n.name||c;return new b("Invalid "+o+" `"+a+"` of type `"+(((s=e[t]).constructor&&s.constructor.name?s.constructor.name:c)+"` supplied to `")+r+"`, expected instance of `"+i+"`.")}var s;return null})},node:m(function(n,e,t,r,o){return h(n[e])?null:new b("Invalid "+r+" `"+o+"` supplied to `"+t+"`, expected a ReactNode.")}),objectOf:function(n){return m(function(e,o,a,i,s){if("function"!=typeof n)return new b("Property `"+s+"` of component `"+a+"` has invalid PropType notation inside objectOf.");var l=e[o],d=v(l);if("object"!==d)return new b("Invalid "+i+" `"+s+"` of type `"+d+"` supplied to `"+a+"`, expected an object.");for(var c in l)if(r(l,c)){var p=n(l,c,a,i,s+"."+c,t);if(p instanceof Error)return p}return null})},oneOf:function(n){if(!Array.isArray(n))return"production"!==process.env.NODE_ENV&&a(arguments.length>1?"Invalid arguments supplied to oneOf, expected an array, got "+arguments.length+" arguments. A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).":"Invalid argument supplied to oneOf, expected an array."),i;return m(function(e,t,r,o,a){for(var i=e[t],s=0;s<n.length;s++)if(u(i,n[s]))return null;var l=JSON.stringify(n,function(n,e){return"symbol"===x(e)?String(e):e});return new b("Invalid "+o+" `"+a+"` of value `"+String(i)+"` supplied to `"+r+"`, expected one of "+l+".")})},oneOfType:function(n){if(!Array.isArray(n))return"production"!==process.env.NODE_ENV&&a("Invalid argument supplied to oneOfType, expected an instance of array."),i;for(var e=0;e<n.length;e++){var o=n[e];if("function"!=typeof o)return a("Invalid argument supplied to oneOfType. Expected an array of check functions, but received "+w(o)+" at index "+e+"."),i}return m(function(e,o,a,i,s){for(var l=[],d=0;d<n.length;d++){var c=(0,n[d])(e,o,a,i,s,t);if(null==c)return null;c.data&&r(c.data,"expectedType")&&l.push(c.data.expectedType)}return new b("Invalid "+i+" `"+s+"` supplied to `"+a+"`"+(l.length>0?", expected one of type ["+l.join(", ")+"]":"")+".")})},shape:function(n){return m(function(e,r,o,a,i){var s=e[r],l=v(s);if("object"!==l)return new b("Invalid "+a+" `"+i+"` of type `"+l+"` supplied to `"+o+"`, expected `object`.");for(var d in n){var c=n[d];if("function"!=typeof c)return g(o,a,i,d,x(c));var p=c(s,d,o,a,i+"."+d,t);if(p)return p}return null})},exact:function(n){return m(function(o,a,i,s,l){var d=o[a],c=v(d);if("object"!==c)return new b("Invalid "+s+" `"+l+"` of type `"+c+"` supplied to `"+i+"`, expected `object`.");var p=e({},o[a],n);for(var u in p){var m=n[u];if(r(n,u)&&"function"!=typeof m)return g(i,s,l,u,x(m));if(!m)return new b("Invalid "+s+" `"+l+"` key `"+u+"` supplied to `"+i+"`.\nBad object: "+JSON.stringify(o[a],null," ")+"\nValid keys: "+JSON.stringify(Object.keys(n),null," "));var f=m(d,u,i,s,l+"."+u,t);if(f)return f}return null})}};function u(n,e){return n===e?0!==n||1/n==1/e:n!=n&&e!=e}function b(n,e){this.message=n,this.data=e&&"object"==typeof e?e:{},this.stack=""}function m(n){if("production"!==process.env.NODE_ENV)var e={},r=0;function o(o,i,s,d,p,u,m){if(d=d||c,u=u||s,m!==t){if(l){var f=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use `PropTypes.checkPropTypes()` to call them. Read more at http://fb.me/use-check-prop-types");throw f.name="Invariant Violation",f}if("production"!==process.env.NODE_ENV&&"undefined"!=typeof console){var g=d+":"+s;!e[g]&&r<3&&(a("You are manually calling a React.PropTypes validation function for the `"+u+"` prop on `"+d+"`. This is deprecated and will throw in the standalone `prop-types` package. You may be seeing this warning due to a third-party PropTypes library. See https://fb.me/react-warning-dont-call-proptypes for details."),e[g]=!0,r++)}}return null==i[s]?o?null===i[s]?new b("The "+p+" `"+u+"` is marked as required in `"+d+"`, but its value is `null`."):new b("The "+p+" `"+u+"` is marked as required in `"+d+"`, but its value is `undefined`."):null:n(i,s,d,p,u)}var i=o.bind(null,!1);return i.isRequired=o.bind(null,!0),i}function f(n){return m(function(e,t,r,o,a,i){var s=e[t];return v(s)!==n?new b("Invalid "+o+" `"+a+"` of type `"+x(s)+"` supplied to `"+r+"`, expected `"+n+"`.",{expectedType:n}):null})}function g(n,e,t,r,o){return new b((n||"React class")+": "+e+" type `"+t+"."+r+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+o+"`.")}function h(n){switch(typeof n){case"number":case"string":case"undefined":return!0;case"boolean":return!n;case"object":if(Array.isArray(n))return n.every(h);if(null===n||s(n))return!0;var e=function(n){var e=n&&(d&&n[d]||n["@@iterator"]);if("function"==typeof e)return e}(n);if(!e)return!1;var t,r=e.call(n);if(e!==n.entries){for(;!(t=r.next()).done;)if(!h(t.value))return!1}else for(;!(t=r.next()).done;){var o=t.value;if(o&&!h(o[1]))return!1}return!0;default:return!1}}function v(n){var e=typeof n;return Array.isArray(n)?"array":n instanceof RegExp?"object":function(n,e){return"symbol"===n||!!e&&("Symbol"===e["@@toStringTag"]||"function"==typeof Symbol&&e instanceof Symbol)}(e,n)?"symbol":e}function x(n){if(null==n)return""+n;var e=v(n);if("object"===e){if(n instanceof Date)return"date";if(n instanceof RegExp)return"regexp"}return e}function w(n){var e=x(n);switch(e){case"array":case"object":return"an "+e;case"boolean":case"date":case"regexp":return"a "+e;default:return e}}return b.prototype=Error.prototype,p.checkPropTypes=o,p.resetWarningCache=o.resetWarningCache,p.PropTypes=p,p},y}function R(){if(_)return E;_=1;var n=j();function e(){}function t(){}return t.resetWarningCache=e,E=function(){function r(e,t,r,o,a,i){if(i!==n){var s=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name="Invariant Violation",s}}function o(){return r}r.isRequired=r;var a={array:r,bigint:r,bool:r,func:r,number:r,object:r,string:r,symbol:r,any:r,arrayOf:o,element:r,elementType:r,instanceOf:o,node:r,objectOf:o,oneOf:o,oneOfType:o,shape:o,exact:o,checkPropTypes:t,resetWarningCache:e};return a.PropTypes=a,a},E}function I(){if(S)return l.exports;if(S=1,"production"!==process.env.NODE_ENV){var n=C();l.exports=P()(n.isElement,true)}else l.exports=R()();return l.exports}var A=i(I()),D="#184b2d",T="#420b0e",L="#4b4b18",B=function(e){var t=e.index,r=e.functionName,o=e.fileName,a=e.lineNumber,i=e.selected,s=e.selectTraceItem,l=e.hasException,d={};return i&&0===t?d={backgroundColor:l?T:L}:i&&(d={backgroundColor:l?T:D}),n.jsxs("div",{className:"stackRow",style:d,onClick:function(n){return s(t)},children:[n.jsx("div",{className:"left",children:n.jsx("span",{className:"functionName",children:r})}),n.jsxs("div",{className:"right",children:[n.jsx("span",{className:"fileName",children:o}),n.jsxs("span",{className:"lineNumber",children:[a,":1"]})]})]})};B.propTypes={index:A.number,functionName:A.string,fileName:A.string,lineNumber:A.number,selected:A.bool,selectTraceItem:A.func,hasException:A.bool};var V=function(e){var t,r=e.traces,o=e.selectTraceItem;return n.jsx("div",{className:"stackContainer",children:(t=r.map(function(e,t){return n.jsx(B,{functionName:e.functionName,fileName:e.fileName,lineNumber:e.lineNumber,selected:e.selected,hasException:e.hasException,index:t,selectTraceItem:o},"".concat(e.fileName,"-").concat(e.lineNumber,"-").concat(e.functionName,"-").concat(t))}),t)})};function $(n,e){(null==e||e>n.length)&&(e=n.length);for(var t=0,r=Array(e);t<e;t++)r[t]=n[t];return r}function H(n,e,t){return(e=function(n){var e=function(n,e){if("object"!=typeof n||!n)return n;var t=n[Symbol.toPrimitive];if(void 0!==t){var r=t.call(n,e);if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===e?String:Number)(n)}(n,"string");return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function F(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})),t.push.apply(t,r)}return t}function Y(n){for(var e=1;e<arguments.length;e++){var t=null!=arguments[e]?arguments[e]:{};e%2?F(Object(t),!0).forEach(function(e){H(n,e,t[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):F(Object(t)).forEach(function(e){Object.defineProperty(n,e,Object.getOwnPropertyDescriptor(t,e))})}return n}function G(n,e){return function(n){if(Array.isArray(n))return n}(n)||function(n,e){var t=null==n?null:"undefined"!=typeof Symbol&&n[Symbol.iterator]||n["@@iterator"];if(null!=t){var r,o,a,i,s=[],l=!0,d=!1;try{if(a=(t=t.call(n)).next,0===e){if(Object(t)!==t)return;l=!1}else for(;!(l=(r=a.call(t)).done)&&(s.push(r.value),s.length!==e);l=!0);}catch(n){d=!0,o=n}finally{try{if(!l&&null!=t.return&&(i=t.return(),Object(i)!==i))return}finally{if(d)throw o}}return s}}(n,e)||q(n,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function X(n){return function(n){if(Array.isArray(n))return $(n)}(n)||function(n){if("undefined"!=typeof Symbol&&null!=n[Symbol.iterator]||null!=n["@@iterator"])return Array.from(n)}(n)||q(n)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function q(n,e){if(n){if("string"==typeof n)return $(n,e);var t={}.toString.call(n).slice(8,-1);return"Object"===t&&n.constructor&&(t=n.constructor.name),"Map"===t||"Set"===t?Array.from(n):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?$(n,e):void 0}}V.propTypes={traces:A.array,selectTraceItem:A.func};function W(n,e,t){return e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Z(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})),t.push.apply(t,r)}return t}function K(n){for(var e=1;e<arguments.length;e++){var t=null!=arguments[e]?arguments[e]:{};e%2?Z(Object(t),!0).forEach(function(e){W(n,e,t[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Z(Object(t)).forEach(function(e){Object.defineProperty(n,e,Object.getOwnPropertyDescriptor(t,e))})}return n}function U(n,e){if(null==n)return{};var t,r,o=function(n,e){if(null==n)return{};var t,r,o={},a=Object.keys(n);for(r=0;r<a.length;r++)t=a[r],e.indexOf(t)>=0||(o[t]=n[t]);return o}(n,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(n);for(r=0;r<a.length;r++)t=a[r],e.indexOf(t)>=0||Object.prototype.propertyIsEnumerable.call(n,t)&&(o[t]=n[t])}return o}function Q(n,e){(null==e||e>n.length)&&(e=n.length);for(var t=0,r=new Array(e);t<e;t++)r[t]=n[t];return r}function J(n,e,t){return e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function nn(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})),t.push.apply(t,r)}return t}function en(n){for(var e=1;e<arguments.length;e++){var t=null!=arguments[e]?arguments[e]:{};e%2?nn(Object(t),!0).forEach(function(e){J(n,e,t[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):nn(Object(t)).forEach(function(e){Object.defineProperty(n,e,Object.getOwnPropertyDescriptor(t,e))})}return n}function tn(n){return function e(){for(var t=this,r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return o.length>=n.length?n.apply(this,o):function(){for(var n=arguments.length,r=new Array(n),a=0;a<n;a++)r[a]=arguments[a];return e.apply(t,[].concat(o,r))}}}function rn(n){return{}.toString.call(n).includes("Object")}function on(n){return"function"==typeof n}a(".viewerContainer {\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n right: 0;\n overflow: hidden;\n}\n\n.tabContainer {\n position: absolute;\n top: 0;\n left: 0;\n bottom: 40px;\n right: 0;\n}\n\n.monacoContainer {\n position: absolute;\n top: 40px;\n left: 0;\n bottom: 0;\n right: 0;\n}");var an=tn(function(n,e){throw new Error(n[e]||n.default)})({initialIsRequired:"initial state is required",initialType:"initial state should be an object",initialContent:"initial state shouldn't be an empty object",handlerType:"handler should be an object or a function",handlersType:"all handlers should be a functions",selectorType:"selector should be a function",changeType:"provided value of changes should be an object",changeField:'it seams you want to change a field in the state which is not specified in the "initial" state',default:"an unknown error accured in `state-local` package"}),sn={changes:function(n,e){return rn(e)||an("changeType"),Object.keys(e).some(function(e){return!function(n,e){return Object.prototype.hasOwnProperty.call(n,e)}(n,e)})&&an("changeField"),e},selector:function(n){on(n)||an("selectorType")},handler:function(n){on(n)||rn(n)||an("handlerType"),rn(n)&&Object.values(n).some(function(n){return!on(n)})&&an("handlersType")},initial:function(n){var e;n||an("initialIsRequired"),rn(n)||an("initialType"),e=n,Object.keys(e).length||an("initialContent")}};function ln(n,e){return on(e)?e(n.current):e}function dn(n,e){return n.current=en(en({},n.current),e),e}function cn(n,e,t){return on(e)?e(n.current):Object.keys(t).forEach(function(t){var r;return null===(r=e[t])||void 0===r?void 0:r.call(e,n.current[t])}),t}var pn={create:function(n){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};sn.initial(n),sn.handler(e);var t={current:n},r=tn(cn)(t,e),o=tn(dn)(t),a=tn(sn.changes)(n),i=tn(ln)(t);return[function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:function(n){return n};return sn.selector(n),n(t.current)},function(n){!function(){for(var n=arguments.length,e=new Array(n),t=0;t<n;t++)e[t]=arguments[t];return function(n){return e.reduceRight(function(n,e){return e(n)},n)}}(r,o,a,i)(n)}]}};var un,bn={configIsRequired:"the configuration object is required",configType:"the configuration object should be an object",default:"an unknown error accured in `@monaco-editor/loader` package",deprecation:"Deprecation warning!\n You are using deprecated way of configuration.\n\n Instead of using\n monaco.config({ urls: { monacoBase: '...' } })\n use\n monaco.config({ paths: { vs: '...' } })\n\n For more please check the link https://github.com/suren-atoyan/monaco-loader#config\n "},mn=(un=function(n,e){throw new Error(n[e]||n.default)},function n(){for(var e=this,t=arguments.length,r=new Array(t),o=0;o<t;o++)r[o]=arguments[o];return r.length>=un.length?un.apply(this,r):function(){for(var t=arguments.length,o=new Array(t),a=0;a<t;a++)o[a]=arguments[a];return n.apply(e,[].concat(r,o))}})(bn),fn={config:function(n){var e;return n||mn("configIsRequired"),e=n,{}.toString.call(e).includes("Object")||mn("configType"),n.urls?(console.warn(bn.deprecation),{paths:{vs:n.urls.monacoBase}}):n}};function gn(n,e){return Object.keys(e).forEach(function(t){e[t]instanceof Object&&n[t]&&Object.assign(e[t],gn(n[t],e[t]))}),K(K({},n),e)}var hn={type:"cancelation",msg:"operation is manually canceled"};function vn(n){var e=!1,t=new Promise(function(t,r){n.then(function(n){return e?r(hn):t(n)}),n.catch(r)});return t.cancel=function(){return e=!0},t}var xn,wn,yn=pn.create({config:{paths:{vs:"https://cdn.jsdelivr.net/npm/monaco-editor@0.52.2/min/vs"}},isInitialized:!1,resolve:null,reject:null,monaco:null}),kn=(wn=2,function(n){if(Array.isArray(n))return n}(xn=yn)||function(n,e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(n)){var t=[],r=!0,o=!1,a=void 0;try{for(var i,s=n[Symbol.iterator]();!(r=(i=s.next()).done)&&(t.push(i.value),!e||t.length!==e);r=!0);}catch(n){o=!0,a=n}finally{try{r||null==s.return||s.return()}finally{if(o)throw a}}return t}}(xn,wn)||function(n,e){if(n){if("string"==typeof n)return Q(n,e);var t=Object.prototype.toString.call(n).slice(8,-1);return"Object"===t&&n.constructor&&(t=n.constructor.name),"Map"===t||"Set"===t?Array.from(n):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?Q(n,e):void 0}}(xn,wn)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),En=kn[0],_n=kn[1];function Sn(n){return document.body.appendChild(n)}function On(n){var e,t,r=En(function(n){return{config:n.config,reject:n.reject}}),o=(e="".concat(r.config.paths.vs,"/loader.js"),t=document.createElement("script"),e&&(t.src=e),t);return o.onload=function(){return n()},o.onerror=r.reject,o}function Cn(){var n=En(function(n){return{config:n.config,resolve:n.resolve,reject:n.reject}}),e=window.require;e.config(n.config),e(["vs/editor/editor.main"],function(e){Nn(e),n.resolve(e)},function(e){n.reject(e)})}function Nn(n){En().monaco||_n({monaco:n})}var jn=new Promise(function(n,e){return _n({resolve:n,reject:e})}),zn={config:function(n){var e=fn.config(n),t=e.monaco,r=U(e,["monaco"]);_n(function(n){return{config:gn(n.config,r),monaco:t}})},init:function(){var n=En(function(n){return{monaco:n.monaco,isInitialized:n.isInitialized,resolve:n.resolve}});if(!n.isInitialized){if(_n({isInitialized:!0}),n.monaco)return n.resolve(n.monaco),vn(jn);if(window.monaco&&window.monaco.editor)return Nn(window.monaco),n.resolve(window.monaco),vn(jn);!function(){for(var n=arguments.length,e=new Array(n),t=0;t<n;t++)e[t]=arguments[t];return function(n){return e.reduceRight(function(n,e){return e(n)},n)}}(Sn,On)(Cn)}return vn(jn)},__getMonacoInstance:function(){return En(function(n){return n.monaco})}},Mn={wrapper:{display:"flex",position:"relative",textAlign:"initial"},fullWidth:{width:"100%"},hide:{display:"none"}},Pn={container:{display:"flex",height:"100%",width:"100%",justifyContent:"center",alignItems:"center"}};var Rn=function({children:n}){return e.createElement("div",{style:Pn.container},n)};var In=function({width:n,height:t,isEditorReady:r,loading:o,_ref:a,className:i,wrapperProps:s}){return e.createElement("section",{style:{...Mn.wrapper,width:n,height:t},...s},!r&&e.createElement(Rn,null,o),e.createElement("div",{ref:a,style:{...Mn.fullWidth,...!r&&Mn.hide},className:i}))},An=e.memo(In);var Dn=function(n){e.useEffect(n,[])};var Tn=function(n,t,r=!0){let o=e.useRef(!0);e.useEffect(o.current||!r?()=>{o.current=!1}:n,t)};function Ln(){}function Bn(n,e,t,r){return function(n,e){return n.editor.getModel(Vn(n,e))}(n,r)||function(n,e,t,r){return n.editor.createModel(e,t,r?Vn(n,r):void 0)}(n,e,t,r)}function Vn(n,e){return n.Uri.parse(e)}var $n=function({original:n,modified:t,language:r,originalLanguage:o,modifiedLanguage:a,originalModelPath:i,modifiedModelPath:s,keepCurrentOriginalModel:l=!1,keepCurrentModifiedModel:d=!1,theme:c="light",loading:p="Loading...",options:u={},height:b="100%",width:m="100%",className:f,wrapperProps:g={},beforeMount:h=Ln,onMount:v=Ln}){let[x,w]=e.useState(!1),[y,k]=e.useState(!0),E=e.useRef(null),_=e.useRef(null),S=e.useRef(null),O=e.useRef(v),C=e.useRef(h),N=e.useRef(!1);Dn(()=>{let n=zn.init();return n.then(n=>(_.current=n)&&k(!1)).catch(n=>"cancelation"!==n?.type&&console.error("Monaco initialization: error:",n)),()=>E.current?function(){let n=E.current?.getModel();l||n?.original?.dispose(),d||n?.modified?.dispose(),E.current?.dispose()}():n.cancel()}),Tn(()=>{if(E.current&&_.current){let e=E.current.getOriginalEditor(),t=Bn(_.current,n||"",o||r||"text",i||"");t!==e.getModel()&&e.setModel(t)}},[i],x),Tn(()=>{if(E.current&&_.current){let n=E.current.getModifiedEditor(),e=Bn(_.current,t||"",a||r||"text",s||"");e!==n.getModel()&&n.setModel(e)}},[s],x),Tn(()=>{let n=E.current.getModifiedEditor();n.getOption(_.current.editor.EditorOption.readOnly)?n.setValue(t||""):t!==n.getValue()&&(n.executeEdits("",[{range:n.getModel().getFullModelRange(),text:t||"",forceMoveMarkers:!0}]),n.pushUndoStop())},[t],x),Tn(()=>{E.current?.getModel()?.original.setValue(n||"")},[n],x),Tn(()=>{let{original:n,modified:e}=E.current.getModel();_.current.editor.setModelLanguage(n,o||r||"text"),_.current.editor.setModelLanguage(e,a||r||"text")},[r,o,a],x),Tn(()=>{_.current?.editor.setTheme(c)},[c],x),Tn(()=>{E.current?.updateOptions(u)},[u],x);let j=e.useCallback(()=>{if(!_.current)return;C.current(_.current);let e=Bn(_.current,n||"",o||r||"text",i||""),l=Bn(_.current,t||"",a||r||"text",s||"");E.current?.setModel({original:e,modified:l})},[r,t,a,n,o,i,s]),z=e.useCallback(()=>{!N.current&&S.current&&(E.current=_.current.editor.createDiffEditor(S.current,{automaticLayout:!0,...u}),j(),_.current?.editor.setTheme(c),w(!0),N.current=!0)},[u,c,j]);return e.useEffect(()=>{x&&O.current(E.current,_.current)},[x]),e.useEffect(()=>{!y&&!x&&z()},[y,x,z]),e.createElement(An,{width:m,height:b,isEditorReady:x,loading:p,_ref:S,className:f,wrapperProps:g})};e.memo($n);var Hn=function(n){let t=e.useRef();return e.useEffect(()=>{t.current=n},[n]),t.current},Fn=new Map;var Yn=function({defaultValue:n,defaultLanguage:t,defaultPath:r,value:o,language:a,path:i,theme:s="light",line:l,loading:d="Loading...",options:c={},overrideServices:p={},saveViewState:u=!0,keepCurrentModel:b=!1,width:m="100%",height:f="100%",className:g,wrapperProps:h={},beforeMount:v=Ln,onMount:x=Ln,onChange:w,onValidate:y=Ln}){let[k,E]=e.useState(!1),[_,S]=e.useState(!0),O=e.useRef(null),C=e.useRef(null),N=e.useRef(null),j=e.useRef(x),z=e.useRef(v),M=e.useRef(),P=e.useRef(o),R=Hn(i),I=e.useRef(!1),A=e.useRef(!1);Dn(()=>{let n=zn.init();return n.then(n=>(O.current=n)&&S(!1)).catch(n=>"cancelation"!==n?.type&&console.error("Monaco initialization: error:",n)),()=>C.current?(M.current?.dispose(),b?u&&Fn.set(i,C.current.saveViewState()):C.current.getModel()?.dispose(),void C.current.dispose()):n.cancel()}),Tn(()=>{let e=Bn(O.current,n||o||"",t||a||"",i||r||"");e!==C.current?.getModel()&&(u&&Fn.set(R,C.current?.saveViewState()),C.current?.setModel(e),u&&C.current?.restoreViewState(Fn.get(i)))},[i],k),Tn(()=>{C.current?.updateOptions(c)},[c],k),Tn(()=>{!C.current||void 0===o||(C.current.getOption(O.current.editor.EditorOption.readOnly)?C.current.setValue(o):o!==C.current.getValue()&&(A.current=!0,C.current.executeEdits("",[{range:C.current.getModel().getFullModelRange(),text:o,forceMoveMarkers:!0}]),C.current.pushUndoStop(),A.current=!1))},[o],k),Tn(()=>{let n=C.current?.getModel();n&&a&&O.current?.editor.setModelLanguage(n,a)},[a],k),Tn(()=>{void 0!==l&&C.current?.revealLine(l)},[l],k),Tn(()=>{O.current?.editor.setTheme(s)},[s],k);let D=e.useCallback(()=>{if(N.current&&O.current&&!I.current){z.current(O.current);let e=i||r,d=Bn(O.current,o||n||"",t||a||"",e||"");C.current=O.current?.editor.create(N.current,{model:d,automaticLayout:!0,...c},p),u&&C.current.restoreViewState(Fn.get(e)),O.current.editor.setTheme(s),void 0!==l&&C.current.revealLine(l),E(!0),I.current=!0}},[n,t,r,o,a,i,c,p,u,s,l]);return e.useEffect(()=>{k&&j.current(C.current,O.current)},[k]),e.useEffect(()=>{!_&&!k&&D()},[_,k,D]),P.current=o,e.useEffect(()=>{k&&w&&(M.current?.dispose(),M.current=C.current?.onDidChangeModelContent(n=>{A.current||w(C.current.getValue(),n)}))},[k,w]),e.useEffect(()=>{if(k){let n=O.current.editor.onDidChangeMarkers(n=>{let e=C.current.getModel()?.uri;if(e&&n.find(n=>n.path===e.path)){let n=O.current.editor.getModelMarkers({resource:e});y?.(n)}});return()=>{n?.dispose()}}return()=>{}},[k,y]),e.createElement(An,{width:m,height:f,isEditorReady:k,loading:d,_ref:N,className:g,wrapperProps:h})},Gn=e.memo(Yn);a("");var Xn=function(t){var r=t.editorContent,o=e.useRef(null),a=e.useRef();return e.useEffect(function(){a.current=r,null!=o&&o.current&&a.current&&o.current.setValue(a.current)},[r]),n.jsx(Gn,{defaultLanguage:"python",defaultValue:"",onMount:function(n,e){o.current=n,null!=a&&a.current&&o.current.setValue(a.current)},theme:"vs-dark",options:{scrollBeyondLastLine:!1,fontSize:"12px",minimap:{enabled:!1}}})};Xn.propTypes={editorContent:A.string};var qn=["color","size","title","className"];function Wn(){return Wn=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)({}).hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},Wn.apply(null,arguments)}var Zn=e.forwardRef(function(n,t){var r=n.color,o=void 0===r?"currentColor":r,a=n.size,i=void 0===a?"1em":a,s=n.title,l=void 0===s?null:s,d=n.className,c=void 0===d?"":d,p=function(n,e){if(null==n)return{};var t,r,o=function(n,e){if(null==n)return{};var t={};for(var r in n)if({}.hasOwnProperty.call(n,r)){if(-1!==e.indexOf(r))continue;t[r]=n[r]}return t}(n,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(n);for(r=0;r<a.length;r++)t=a[r],-1===e.indexOf(t)&&{}.propertyIsEnumerable.call(n,t)&&(o[t]=n[t])}return o}(n,qn);return e.createElement("svg",Wn({ref:t,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",width:i,height:i,fill:o,className:["bi","bi-braces",c].filter(Boolean).join(" ")},p),l?e.createElement("title",null,l):null,e.createElement("path",{d:"M2.114 8.063V7.9c1.005-.102 1.497-.615 1.497-1.6V4.503c0-1.094.39-1.538 1.354-1.538h.273V2h-.376C3.25 2 2.49 2.759 2.49 4.352v1.524c0 1.094-.376 1.456-1.49 1.456v1.299c1.114 0 1.49.362 1.49 1.456v1.524c0 1.593.759 2.352 2.372 2.352h.376v-.964h-.273c-.964 0-1.354-.444-1.354-1.538V9.663c0-.984-.492-1.497-1.497-1.6M13.886 7.9v.163c-1.005.103-1.497.616-1.497 1.6v1.798c0 1.094-.39 1.538-1.354 1.538h-.273v.964h.376c1.613 0 2.372-.759 2.372-2.352v-1.524c0-1.094.376-1.456 1.49-1.456V7.332c-1.114 0-1.49-.362-1.49-1.456V4.352C13.51 2.759 12.75 2 11.138 2h-.376v.964h.273c.964 0 1.354.444 1.354 1.538V6.3c0 .984.492 1.497 1.497 1.6"}))});Zn.propTypes={color:A.string,size:A.oneOfType([A.string,A.number]),title:A.string,className:A.string};var Kn=["color","size","title","className"];function Un(){return Un=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)({}).hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},Un.apply(null,arguments)}var Qn=e.forwardRef(function(n,t){var r=n.color,o=void 0===r?"currentColor":r,a=n.size,i=void 0===a?"1em":a,s=n.title,l=void 0===s?null:s,d=n.className,c=void 0===d?"":d,p=function(n,e){if(null==n)return{};var t,r,o=function(n,e){if(null==n)return{};var t={};for(var r in n)if({}.hasOwnProperty.call(n,r)){if(-1!==e.indexOf(r))continue;t[r]=n[r]}return t}(n,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(n);for(r=0;r<a.length;r++)t=a[r],-1===e.indexOf(t)&&{}.propertyIsEnumerable.call(n,t)&&(o[t]=n[t])}return o}(n,Kn);return e.createElement("svg",Un({ref:t,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",width:i,height:i,fill:o,className:["bi","bi-chevron-down",c].filter(Boolean).join(" ")},p),l?e.createElement("title",null,l):null,e.createElement("path",{fillRule:"evenodd",d:"M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708"}))});Qn.propTypes={color:A.string,size:A.oneOfType([A.string,A.number]),title:A.string,className:A.string};var Jn=["color","size","title","className"];function ne(){return ne=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)({}).hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},ne.apply(null,arguments)}var ee=e.forwardRef(function(n,t){var r=n.color,o=void 0===r?"currentColor":r,a=n.size,i=void 0===a?"1em":a,s=n.title,l=void 0===s?null:s,d=n.className,c=void 0===d?"":d,p=function(n,e){if(null==n)return{};var t,r,o=function(n,e){if(null==n)return{};var t={};for(var r in n)if({}.hasOwnProperty.call(n,r)){if(-1!==e.indexOf(r))continue;t[r]=n[r]}return t}(n,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(n);for(r=0;r<a.length;r++)t=a[r],-1===e.indexOf(t)&&{}.propertyIsEnumerable.call(n,t)&&(o[t]=n[t])}return o}(n,Jn);return e.createElement("svg",ne({ref:t,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",width:i,height:i,fill:o,className:["bi","bi-chevron-right",c].filter(Boolean).join(" ")},p),l?e.createElement("title",null,l):null,e.createElement("path",{fillRule:"evenodd",d:"M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708"}))});ee.propTypes={color:A.string,size:A.oneOfType([A.string,A.number]),title:A.string,className:A.string};var te=["color","size","title","className"];function re(){return re=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)({}).hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},re.apply(null,arguments)}var oe=e.forwardRef(function(n,t){var r=n.color,o=void 0===r?"currentColor":r,a=n.size,i=void 0===a?"1em":a,s=n.title,l=void 0===s?null:s,d=n.className,c=void 0===d?"":d,p=function(n,e){if(null==n)return{};var t,r,o=function(n,e){if(null==n)return{};var t={};for(var r in n)if({}.hasOwnProperty.call(n,r)){if(-1!==e.indexOf(r))continue;t[r]=n[r]}return t}(n,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(n);for(r=0;r<a.length;r++)t=a[r],-1===e.indexOf(t)&&{}.propertyIsEnumerable.call(n,t)&&(o[t]=n[t])}return o}(n,te);return e.createElement("svg",re({ref:t,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",width:i,height:i,fill:o,className:["bi","bi-file-code",c].filter(Boolean).join(" ")},p),l?e.createElement("title",null,l):null,e.createElement("path",{d:"M6.646 5.646a.5.5 0 1 1 .708.708L5.707 8l1.647 1.646a.5.5 0 0 1-.708.708l-2-2a.5.5 0 0 1 0-.708zm2.708 0a.5.5 0 1 0-.708.708L10.293 8 8.646 9.646a.5.5 0 0 0 .708.708l2-2a.5.5 0 0 0 0-.708z"}),e.createElement("path",{d:"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2zm10-1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1"}))});oe.propTypes={color:A.string,size:A.oneOfType([A.string,A.number]),title:A.string,className:A.string};var ae=["color","size","title","className"];function ie(){return ie=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)({}).hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},ie.apply(null,arguments)}var se=e.forwardRef(function(n,t){var r=n.color,o=void 0===r?"currentColor":r,a=n.size,i=void 0===a?"1em":a,s=n.title,l=void 0===s?null:s,d=n.className,c=void 0===d?"":d,p=function(n,e){if(null==n)return{};var t,r,o=function(n,e){if(null==n)return{};var t={};for(var r in n)if({}.hasOwnProperty.call(n,r)){if(-1!==e.indexOf(r))continue;t[r]=n[r]}return t}(n,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(n);for(r=0;r<a.length;r++)t=a[r],-1===e.indexOf(t)&&{}.propertyIsEnumerable.call(n,t)&&(o[t]=n[t])}return o}(n,ae);return e.createElement("svg",ie({ref:t,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",width:i,height:i,fill:o,className:["bi","bi-filetype-js",c].filter(Boolean).join(" ")},p),l?e.createElement("title",null,l):null,e.createElement("path",{fillRule:"evenodd",d:"M14 4.5V14a2 2 0 0 1-2 2H8v-1h4a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM3.186 15.29a1.2 1.2 0 0 1-.111-.449h.765a.58.58 0 0 0 .255.384q.105.073.249.114.143.041.319.041.246 0 .413-.07a.56.56 0 0 0 .255-.193.5.5 0 0 0 .085-.29.39.39 0 0 0-.153-.326q-.151-.12-.462-.193l-.619-.143a1.7 1.7 0 0 1-.539-.214 1 1 0 0 1-.351-.367 1.1 1.1 0 0 1-.123-.524q0-.366.19-.639.19-.272.528-.422.336-.15.776-.149.457 0 .78.152.324.153.5.41.18.255.2.566h-.75a.56.56 0 0 0-.12-.258.6.6 0 0 0-.247-.181.9.9 0 0 0-.369-.068q-.325 0-.513.152a.47.47 0 0 0-.184.384q0 .18.143.3a1 1 0 0 0 .405.175l.62.143q.327.075.566.211.24.136.375.358t.135.56q0 .37-.188.656a1.2 1.2 0 0 1-.539.439q-.351.158-.858.158-.381 0-.665-.09a1.4 1.4 0 0 1-.478-.252 1.1 1.1 0 0 1-.29-.375m-3.104-.033A1.3 1.3 0 0 1 0 14.791h.765a.6.6 0 0 0 .073.27.5.5 0 0 0 .454.246q.285 0 .422-.164.138-.165.138-.466v-2.745h.79v2.725q0 .66-.357 1.005-.354.345-.984.345a1.6 1.6 0 0 1-.569-.094 1.15 1.15 0 0 1-.407-.266 1.1 1.1 0 0 1-.243-.39"}))});se.propTypes={color:A.string,size:A.oneOfType([A.string,A.number]),title:A.string,className:A.string};var le=["color","size","title","className"];function de(){return de=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)({}).hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},de.apply(null,arguments)}var ce=e.forwardRef(function(n,t){var r=n.color,o=void 0===r?"currentColor":r,a=n.size,i=void 0===a?"1em":a,s=n.title,l=void 0===s?null:s,d=n.className,c=void 0===d?"":d,p=function(n,e){if(null==n)return{};var t,r,o=function(n,e){if(null==n)return{};var t={};for(var r in n)if({}.hasOwnProperty.call(n,r)){if(-1!==e.indexOf(r))continue;t[r]=n[r]}return t}(n,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(n);for(r=0;r<a.length;r++)t=a[r],-1===e.indexOf(t)&&{}.propertyIsEnumerable.call(n,t)&&(o[t]=n[t])}return o}(n,le);return e.createElement("svg",de({ref:t,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",width:i,height:i,fill:o,className:["bi","bi-filetype-py",c].filter(Boolean).join(" ")},p),l?e.createElement("title",null,l):null,e.createElement("path",{fillRule:"evenodd",d:"M14 4.5V14a2 2 0 0 1-2 2H7v-1h5a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM0 11.85h1.6q.434 0 .732.179.302.175.46.477t.158.677-.16.677q-.158.299-.464.474a1.45 1.45 0 0 1-.732.173H.79v1.342H0zm2.06 1.714a.8.8 0 0 0 .085-.381q0-.34-.185-.521-.185-.182-.513-.182H.788v1.406h.66a.8.8 0 0 0 .374-.082.57.57 0 0 0 .238-.24m2.963.75v1.535H4.23v-1.52L2.89 11.85h.876l.853 1.696h.032l.856-1.696h.855z"}))});ce.propTypes={color:A.string,size:A.oneOfType([A.string,A.number]),title:A.string,className:A.string};var pe=["color","size","title","className"];function ue(){return ue=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)({}).hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},ue.apply(null,arguments)}var be=e.forwardRef(function(n,t){var r=n.color,o=void 0===r?"currentColor":r,a=n.size,i=void 0===a?"1em":a,s=n.title,l=void 0===s?null:s,d=n.className,c=void 0===d?"":d,p=function(n,e){if(null==n)return{};var t,r,o=function(n,e){if(null==n)return{};var t={};for(var r in n)if({}.hasOwnProperty.call(n,r)){if(-1!==e.indexOf(r))continue;t[r]=n[r]}return t}(n,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(n);for(r=0;r<a.length;r++)t=a[r],-1===e.indexOf(t)&&{}.propertyIsEnumerable.call(n,t)&&(o[t]=n[t])}return o}(n,pe);return e.createElement("svg",ue({ref:t,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",width:i,height:i,fill:o,className:["bi","bi-filetype-scss",c].filter(Boolean).join(" ")},p),l?e.createElement("title",null,l):null,e.createElement("path",{fillRule:"evenodd",d:"M14 4.5V11h-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM1.356 15.29a1.2 1.2 0 0 1-.111-.449h.765a.58.58 0 0 0 .255.384q.105.073.249.114.143.041.319.041.246 0 .413-.07a.56.56 0 0 0 .255-.193.5.5 0 0 0 .085-.29.39.39 0 0 0-.153-.326q-.151-.12-.462-.193l-.619-.143a1.7 1.7 0 0 1-.539-.214 1 1 0 0 1-.351-.367 1.1 1.1 0 0 1-.123-.524q0-.366.19-.639.19-.272.528-.422.336-.15.776-.149.457 0 .78.152.324.153.5.41.18.255.2.566h-.75a.56.56 0 0 0-.12-.258.6.6 0 0 0-.247-.181.9.9 0 0 0-.369-.068q-.325 0-.513.152a.47.47 0 0 0-.184.384q0 .18.143.3a1 1 0 0 0 .405.175l.62.143q.326.075.566.211t.375.358.135.56q0 .37-.188.656a1.2 1.2 0 0 1-.539.439q-.351.158-.858.158-.381 0-.665-.09a1.4 1.4 0 0 1-.478-.252 1.1 1.1 0 0 1-.29-.375m4.274-2.23a1.7 1.7 0 0 0-.103.633v.495q0 .369.103.627a.83.83 0 0 0 .298.392.85.85 0 0 0 .478.132.9.9 0 0 0 .401-.088.7.7 0 0 0 .273-.249.8.8 0 0 0 .117-.363h.765v.076a1.27 1.27 0 0 1-.226.674 1.4 1.4 0 0 1-.55.454 1.8 1.8 0 0 1-.786.164q-.54 0-.914-.217a1.4 1.4 0 0 1-.571-.626q-.195-.408-.194-.976v-.498q0-.569.197-.979a1.44 1.44 0 0 1 .57-.633q.38-.222.912-.222.328 0 .607.097.28.093.489.272a1.32 1.32 0 0 1 .466.964v.073h-.765a.85.85 0 0 0-.12-.38.7.7 0 0 0-.273-.261.8.8 0 0 0-.398-.097.8.8 0 0 0-.475.138.87.87 0 0 0-.301.398m2.609 1.781a1.13 1.13 0 0 0 .401.823q.193.162.478.252.284.091.665.091.507 0 .858-.158.354-.158.54-.44a1.17 1.17 0 0 0 .187-.656q0-.336-.135-.56a1 1 0 0 0-.375-.357 2 2 0 0 0-.566-.21l-.62-.144a1 1 0 0 1-.405-.176.37.37 0 0 1-.143-.299q0-.234.184-.384.188-.152.513-.152.213 0 .369.068a.6.6 0 0 1 .246.181.56.56 0 0 1 .12.258h.75a1.1 1.1 0 0 0-.2-.566 1.2 1.2 0 0 0-.5-.41 1.8 1.8 0 0 0-.78-.152q-.438 0-.776.15-.336.149-.527.421-.19.273-.19.639 0 .302.123.524t.351.367q.228.143.54.213l.617.144q.311.073.463.193a.39.39 0 0 1 .153.326.5.5 0 0 1-.085.29.56.56 0 0 1-.255.193 1.1 1.1 0 0 1-.413.07q-.177 0-.32-.04a.8.8 0 0 1-.249-.115.58.58 0 0 1-.255-.384zm3.502.449a1.2 1.2 0 0 1-.11-.449h.764a.58.58 0 0 0 .255.384q.105.073.249.114.143.041.319.041.246 0 .413-.07a.56.56 0 0 0 .255-.193.5.5 0 0 0 .085-.29.39.39 0 0 0-.152-.326q-.153-.12-.463-.193l-.618-.143a1.7 1.7 0 0 1-.54-.214 1 1 0 0 1-.351-.367 1.1 1.1 0 0 1-.123-.524q0-.366.19-.639.19-.272.528-.422.336-.15.776-.149.458 0 .78.152.324.153.5.41.18.255.2.566h-.75a.56.56 0 0 0-.12-.258.6.6 0 0 0-.247-.181.9.9 0 0 0-.369-.068q-.325 0-.512.152a.47.47 0 0 0-.185.384q0 .18.143.3a1 1 0 0 0 .405.175l.62.143q.326.075.566.211t.375.358.135.56q0 .37-.187.656a1.2 1.2 0 0 1-.54.439q-.351.158-.858.158-.381 0-.665-.09a1.4 1.4 0 0 1-.478-.252 1.1 1.1 0 0 1-.29-.375"}))});be.propTypes={color:A.string,size:A.oneOfType([A.string,A.number]),title:A.string,className:A.string};var me=["color","size","title","className"];function fe(){return fe=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)({}).hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},fe.apply(null,arguments)}var ge=e.forwardRef(function(n,t){var r=n.color,o=void 0===r?"currentColor":r,a=n.size,i=void 0===a?"1em":a,s=n.title,l=void 0===s?null:s,d=n.className,c=void 0===d?"":d,p=function(n,e){if(null==n)return{};var t,r,o=function(n,e){if(null==n)return{};var t={};for(var r in n)if({}.hasOwnProperty.call(n,r)){if(-1!==e.indexOf(r))continue;t[r]=n[r]}return t}(n,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(n);for(r=0;r<a.length;r++)t=a[r],-1===e.indexOf(t)&&{}.propertyIsEnumerable.call(n,t)&&(o[t]=n[t])}return o}(n,me);return e.createElement("svg",fe({ref:t,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",width:i,height:i,fill:o,className:["bi","bi-x",c].filter(Boolean).join(" ")},p),l?e.createElement("title",null,l):null,e.createElement("path",{d:"M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708"}))});ge.propTypes={color:A.string,size:A.oneOfType([A.string,A.number]),title:A.string,className:A.string};a(".tab {\n height: 100%;\n display: flex;\n justify-content: center;\n align-items: center;\n padding: 0 5px 0 10px;\n margin-right: 2px;\n cursor: default;\n}\n\n.fileName {\n font-family: sans-serif;\n font-size: 12px;\n padding-right: 5px;\n}\n\n.close {\n display: flex;\n float: right;\n cursor: pointer;\n}");var he="#1e1e1e",ve="#2d2d2d",xe=function(e){var t=e.file,r=e.activeTab,o=e.selectTab,a=e.closeTab;return n.jsxs("div",{onClick:function(n){return o(n,t)},className:"tab",style:{backgroundColor:r===t.key?he:ve},children:[n.jsx("div",{className:"fileName",children:t.fileName}),n.jsx("div",{className:"close",onClick:function(n){n.stopPropagation(),a(n,t)},children:n.jsx(ge,{style:{color:"white"}})})]})};xe.propTypes={file:A.shape({key:A.string.isRequired,fileName:A.oneOfType([A.string,A.array]).isRequired,path:A.string}).isRequired,activeTab:A.string.isRequired,selectTab:A.func.isRequired,closeTab:A.func.isRequired};var we,ye={exports:{}};
15
15
  /*!
16
16
  Copyright (c) 2018 Jed Watson.
17
17
  Licensed under the MIT License (MIT), see
18
18
  http://jedwatson.github.io/classnames
19
- */var re,oe=(ee||(ee=1,re=te,function(){var n={}.hasOwnProperty;function e(){for(var n="",e=0;e<arguments.length;e++){var o=arguments[e];o&&(n=r(n,t(o)))}return n}function t(t){if("string"==typeof t||"number"==typeof t)return t;if("object"!=typeof t)return"";if(Array.isArray(t))return e.apply(null,t);if(t.toString!==Object.prototype.toString&&!t.toString.toString().includes("[native code]"))return t.toString();var o="";for(var a in t)n.call(t,a)&&t[a]&&(o=r(o,a));return o}function r(n,e){return e?n?n+" "+e:n+e:n}re.exports?(e.default=e,re.exports=e):window.classNames=e}()),te.exports),ae=a(oe),ie=Function.prototype.bind.call(Function.prototype.call,[].slice);function se(n,e){return ie(n.querySelectorAll(e))}var le=!("undefined"==typeof window||!window.document||!window.document.createElement),de=!1,ce=!1;try{var pe={get passive(){return de=!0},get once(){return ce=de=!0}};le&&(window.addEventListener("test",pe,pe),window.removeEventListener("test",pe,!0))}catch(n){}function ue(n,e,t,r){if(r&&"boolean"!=typeof r&&!ce){var o=r.once,a=r.capture,i=t;!ce&&o&&(i=t.__once||function n(r){this.removeEventListener(e,n,a),t.call(this,r)},t.__once=i),n.addEventListener(e,i,de?r:a)}n.addEventListener(e,t,r)}function be(n){const t=function(n){const t=e.useRef(n);return e.useEffect(()=>{t.current=n},[n]),t}(n);return e.useCallback(function(...n){return t.current&&t.current(...n)},[t])}const me=r.createContext(null);var fe=Object.prototype.hasOwnProperty;function ge(n,e,t){for(t of n.keys())if(he(t,e))return t}function he(n,e){var t,r,o;if(n===e)return!0;if(n&&e&&(t=n.constructor)===e.constructor){if(t===Date)return n.getTime()===e.getTime();if(t===RegExp)return n.toString()===e.toString();if(t===Array){if((r=n.length)===e.length)for(;r--&&he(n[r],e[r]););return-1===r}if(t===Set){if(n.size!==e.size)return!1;for(r of n){if((o=r)&&"object"==typeof o&&!(o=ge(e,o)))return!1;if(!e.has(o))return!1}return!0}if(t===Map){if(n.size!==e.size)return!1;for(r of n){if((o=r[0])&&"object"==typeof o&&!(o=ge(e,o)))return!1;if(!he(r[1],e.get(o)))return!1}return!0}if(t===ArrayBuffer)n=new Uint8Array(n),e=new Uint8Array(e);else if(t===DataView){if((r=n.byteLength)===e.byteLength)for(;r--&&n.getInt8(r)===e.getInt8(r););return-1===r}if(ArrayBuffer.isView(n)){if((r=n.byteLength)===e.byteLength)for(;r--&&n[r]===e[r];);return-1===r}if(!t||"object"==typeof n){for(t in r=0,n){if(fe.call(n,t)&&++r&&!fe.call(e,t))return!1;if(!(t in e)||!he(n[t],e[t]))return!1}return Object.keys(e).length===r}}return n!=n&&e!=e}function ve(n){const t=function(){const n=e.useRef(!0),t=e.useRef(()=>n.current);return e.useEffect(()=>(n.current=!0,()=>{n.current=!1}),[]),t.current}();return[n[0],e.useCallback(e=>{if(t())return n[1](e)},[t,n[1]])]}var xe="top",we="bottom",ye="right",ke="left",_e="auto",Ee=[xe,we,ye,ke],Se="start",Oe="end",Ce="viewport",Ne="popper",je=Ee.reduce(function(n,e){return n.concat([e+"-"+Se,e+"-"+Oe])},[]),ze=[].concat(Ee,[_e]).reduce(function(n,e){return n.concat([e,e+"-"+Se,e+"-"+Oe])},[]),Me=["beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite"];function Pe(n){return n.split("-")[0]}function Re(n){if(null==n)return window;if("[object Window]"!==n.toString()){var e=n.ownerDocument;return e&&e.defaultView||window}return n}function Ae(n){return n instanceof Re(n).Element||n instanceof Element}function Ie(n){return n instanceof Re(n).HTMLElement||n instanceof HTMLElement}function De(n){return"undefined"!=typeof ShadowRoot&&(n instanceof Re(n).ShadowRoot||n instanceof ShadowRoot)}var Le=Math.max,Te=Math.min,Be=Math.round;function Ve(){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 $e(){return!/^((?!chrome|android).)*safari/i.test(Ve())}function He(n,e,t){void 0===e&&(e=!1),void 0===t&&(t=!1);var r=n.getBoundingClientRect(),o=1,a=1;e&&Ie(n)&&(o=n.offsetWidth>0&&Be(r.width)/n.offsetWidth||1,a=n.offsetHeight>0&&Be(r.height)/n.offsetHeight||1);var i=(Ae(n)?Re(n):window).visualViewport,s=!$e()&&t,l=(r.left+(s&&i?i.offsetLeft:0))/o,d=(r.top+(s&&i?i.offsetTop:0))/a,c=r.width/o,p=r.height/a;return{width:c,height:p,top:d,right:l+c,bottom:d+p,left:l,x:l,y:d}}function Fe(n){var e=He(n),t=n.offsetWidth,r=n.offsetHeight;return Math.abs(e.width-t)<=1&&(t=e.width),Math.abs(e.height-r)<=1&&(r=e.height),{x:n.offsetLeft,y:n.offsetTop,width:t,height:r}}function Ye(n,e){var t=e.getRootNode&&e.getRootNode();if(n.contains(e))return!0;if(t&&De(t)){var r=e;do{if(r&&n.isSameNode(r))return!0;r=r.parentNode||r.host}while(r)}return!1}function Ge(n){return n?(n.nodeName||"").toLowerCase():null}function Xe(n){return Re(n).getComputedStyle(n)}function We(n){return["table","td","th"].indexOf(Ge(n))>=0}function Ze(n){return((Ae(n)?n.ownerDocument:n.document)||window.document).documentElement}function Ke(n){return"html"===Ge(n)?n:n.assignedSlot||n.parentNode||(De(n)?n.host:null)||Ze(n)}function qe(n){return Ie(n)&&"fixed"!==Xe(n).position?n.offsetParent:null}function Ue(n){for(var e=Re(n),t=qe(n);t&&We(t)&&"static"===Xe(t).position;)t=qe(t);return t&&("html"===Ge(t)||"body"===Ge(t)&&"static"===Xe(t).position)?e:t||function(n){var e=/firefox/i.test(Ve());if(/Trident/i.test(Ve())&&Ie(n)&&"fixed"===Xe(n).position)return null;var t=Ke(n);for(De(t)&&(t=t.host);Ie(t)&&["html","body"].indexOf(Ge(t))<0;){var r=Xe(t);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 t;t=t.parentNode}return null}(n)||e}function Qe(n){return["top","bottom"].indexOf(n)>=0?"x":"y"}function Je(n,e,t){return Le(n,Te(e,t))}function nt(n){return Object.assign({},{top:0,right:0,bottom:0,left:0},n)}function et(n,e){return e.reduce(function(e,t){return e[t]=n,e},{})}var tt={name:"arrow",enabled:!0,phase:"main",fn:function(n){var e,t=n.state,r=n.name,o=n.options,a=t.elements.arrow,i=t.modifiersData.popperOffsets,s=Pe(t.placement),l=Qe(s),d=[ke,ye].indexOf(s)>=0?"height":"width";if(a&&i){var c=function(n,e){return nt("number"!=typeof(n="function"==typeof n?n(Object.assign({},e.rects,{placement:e.placement})):n)?n:et(n,Ee))}(o.padding,t),p=Fe(a),u="y"===l?xe:ke,b="y"===l?we:ye,m=t.rects.reference[d]+t.rects.reference[l]-i[l]-t.rects.popper[d],f=i[l]-t.rects.reference[l],g=Ue(a),h=g?"y"===l?g.clientHeight||0:g.clientWidth||0:0,v=m/2-f/2,x=c[u],w=h-p[d]-c[b],y=h/2-p[d]/2+v,k=Je(x,y,w),_=l;t.modifiersData[r]=((e={})[_]=k,e.centerOffset=k-y,e)}},effect:function(n){var e=n.state,t=n.options.element,r=void 0===t?"[data-popper-arrow]":t;null!=r&&("string"!=typeof r||(r=e.elements.popper.querySelector(r)))&&Ye(e.elements.popper,r)&&(e.elements.arrow=r)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function rt(n){return n.split("-")[1]}var ot={top:"auto",right:"auto",bottom:"auto",left:"auto"};function at(n){var e,t=n.popper,r=n.popperRect,o=n.placement,a=n.variation,i=n.offsets,s=n.position,l=n.gpuAcceleration,d=n.adaptive,c=n.roundOffsets,p=n.isFixed,u=i.x,b=void 0===u?0:u,m=i.y,f=void 0===m?0:m,g="function"==typeof c?c({x:b,y:f}):{x:b,y:f};b=g.x,f=g.y;var h=i.hasOwnProperty("x"),v=i.hasOwnProperty("y"),x=ke,w=xe,y=window;if(d){var k=Ue(t),_="clientHeight",E="clientWidth";if(k===Re(t)&&"static"!==Xe(k=Ze(t)).position&&"absolute"===s&&(_="scrollHeight",E="scrollWidth"),o===xe||(o===ke||o===ye)&&a===Oe)w=we,f-=(p&&k===y&&y.visualViewport?y.visualViewport.height:k[_])-r.height,f*=l?1:-1;if(o===ke||(o===xe||o===we)&&a===Oe)x=ye,b-=(p&&k===y&&y.visualViewport?y.visualViewport.width:k[E])-r.width,b*=l?1:-1}var S,O=Object.assign({position:s},d&&ot),C=!0===c?function(n,e){var t=n.x,r=n.y,o=e.devicePixelRatio||1;return{x:Be(t*o)/o||0,y:Be(r*o)/o||0}}({x:b,y:f},Re(t)):{x:b,y:f};return b=C.x,f=C.y,l?Object.assign({},O,((S={})[w]=v?"0":"",S[x]=h?"0":"",S.transform=(y.devicePixelRatio||1)<=1?"translate("+b+"px, "+f+"px)":"translate3d("+b+"px, "+f+"px, 0)",S)):Object.assign({},O,((e={})[w]=v?f+"px":"",e[x]=h?b+"px":"",e.transform="",e))}var it={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(n){var e=n.state,t=n.options,r=t.gpuAcceleration,o=void 0===r||r,a=t.adaptive,i=void 0===a||a,s=t.roundOffsets,l=void 0===s||s,d={placement:Pe(e.placement),variation:rt(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,at(Object.assign({},d,{offsets:e.modifiersData.popperOffsets,position:e.options.strategy,adaptive:i,roundOffsets:l})))),null!=e.modifiersData.arrow&&(e.styles.arrow=Object.assign({},e.styles.arrow,at(Object.assign({},d,{offsets:e.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-placement":e.placement})},data:{}},st={passive:!0};var lt={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(n){var e=n.state,t=n.instance,r=n.options,o=r.scroll,a=void 0===o||o,i=r.resize,s=void 0===i||i,l=Re(e.elements.popper),d=[].concat(e.scrollParents.reference,e.scrollParents.popper);return a&&d.forEach(function(n){n.addEventListener("scroll",t.update,st)}),s&&l.addEventListener("resize",t.update,st),function(){a&&d.forEach(function(n){n.removeEventListener("scroll",t.update,st)}),s&&l.removeEventListener("resize",t.update,st)}},data:{}},dt={left:"right",right:"left",bottom:"top",top:"bottom"};function ct(n){return n.replace(/left|right|bottom|top/g,function(n){return dt[n]})}var pt={start:"end",end:"start"};function ut(n){return n.replace(/start|end/g,function(n){return pt[n]})}function bt(n){var e=Re(n);return{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function mt(n){return He(Ze(n)).left+bt(n).scrollLeft}function ft(n){var e=Xe(n),t=e.overflow,r=e.overflowX,o=e.overflowY;return/auto|scroll|overlay|hidden/.test(t+o+r)}function gt(n){return["html","body","#document"].indexOf(Ge(n))>=0?n.ownerDocument.body:Ie(n)&&ft(n)?n:gt(Ke(n))}function ht(n,e){var t;void 0===e&&(e=[]);var r=gt(n),o=r===(null==(t=n.ownerDocument)?void 0:t.body),a=Re(r),i=o?[a].concat(a.visualViewport||[],ft(r)?r:[]):r,s=e.concat(i);return o?s:s.concat(ht(Ke(i)))}function vt(n){return Object.assign({},n,{left:n.x,top:n.y,right:n.x+n.width,bottom:n.y+n.height})}function xt(n,e,t){return e===Ce?vt(function(n,e){var t=Re(n),r=Ze(n),o=t.visualViewport,a=r.clientWidth,i=r.clientHeight,s=0,l=0;if(o){a=o.width,i=o.height;var d=$e();(d||!d&&"fixed"===e)&&(s=o.offsetLeft,l=o.offsetTop)}return{width:a,height:i,x:s+mt(n),y:l}}(n,t)):Ae(e)?function(n,e){var t=He(n,!1,"fixed"===e);return t.top=t.top+n.clientTop,t.left=t.left+n.clientLeft,t.bottom=t.top+n.clientHeight,t.right=t.left+n.clientWidth,t.width=n.clientWidth,t.height=n.clientHeight,t.x=t.left,t.y=t.top,t}(e,t):vt(function(n){var e,t=Ze(n),r=bt(n),o=null==(e=n.ownerDocument)?void 0:e.body,a=Le(t.scrollWidth,t.clientWidth,o?o.scrollWidth:0,o?o.clientWidth:0),i=Le(t.scrollHeight,t.clientHeight,o?o.scrollHeight:0,o?o.clientHeight:0),s=-r.scrollLeft+mt(n),l=-r.scrollTop;return"rtl"===Xe(o||t).direction&&(s+=Le(t.clientWidth,o?o.clientWidth:0)-a),{width:a,height:i,x:s,y:l}}(Ze(n)))}function wt(n,e,t,r){var o="clippingParents"===e?function(n){var e=ht(Ke(n)),t=["absolute","fixed"].indexOf(Xe(n).position)>=0&&Ie(n)?Ue(n):n;return Ae(t)?e.filter(function(n){return Ae(n)&&Ye(n,t)&&"body"!==Ge(n)}):[]}(n):[].concat(e),a=[].concat(o,[t]),i=a[0],s=a.reduce(function(e,t){var o=xt(n,t,r);return e.top=Le(o.top,e.top),e.right=Te(o.right,e.right),e.bottom=Te(o.bottom,e.bottom),e.left=Le(o.left,e.left),e},xt(n,i,r));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}function yt(n){var e,t=n.reference,r=n.element,o=n.placement,a=o?Pe(o):null,i=o?rt(o):null,s=t.x+t.width/2-r.width/2,l=t.y+t.height/2-r.height/2;switch(a){case xe:e={x:s,y:t.y-r.height};break;case we:e={x:s,y:t.y+t.height};break;case ye:e={x:t.x+t.width,y:l};break;case ke:e={x:t.x-r.width,y:l};break;default:e={x:t.x,y:t.y}}var d=a?Qe(a):null;if(null!=d){var c="y"===d?"height":"width";switch(i){case Se:e[d]=e[d]-(t[c]/2-r[c]/2);break;case Oe:e[d]=e[d]+(t[c]/2-r[c]/2)}}return e}function kt(n,e){void 0===e&&(e={});var t=e,r=t.placement,o=void 0===r?n.placement:r,a=t.strategy,i=void 0===a?n.strategy:a,s=t.boundary,l=void 0===s?"clippingParents":s,d=t.rootBoundary,c=void 0===d?Ce:d,p=t.elementContext,u=void 0===p?Ne:p,b=t.altBoundary,m=void 0!==b&&b,f=t.padding,g=void 0===f?0:f,h=nt("number"!=typeof g?g:et(g,Ee)),v=u===Ne?"reference":Ne,x=n.rects.popper,w=n.elements[m?v:u],y=wt(Ae(w)?w:w.contextElement||Ze(n.elements.popper),l,c,i),k=He(n.elements.reference),_=yt({reference:k,element:x,placement:o}),E=vt(Object.assign({},x,_)),S=u===Ne?E:k,O={top:y.top-S.top+h.top,bottom:S.bottom-y.bottom+h.bottom,left:y.left-S.left+h.left,right:S.right-y.right+h.right},C=n.modifiersData.offset;if(u===Ne&&C){var N=C[o];Object.keys(O).forEach(function(n){var e=[ye,we].indexOf(n)>=0?1:-1,t=[xe,we].indexOf(n)>=0?"y":"x";O[n]+=N[t]*e})}return O}function _t(n,e){void 0===e&&(e={});var t=e,r=t.placement,o=t.boundary,a=t.rootBoundary,i=t.padding,s=t.flipVariations,l=t.allowedAutoPlacements,d=void 0===l?ze:l,c=rt(r),p=c?s?je:je.filter(function(n){return rt(n)===c}):Ee,u=p.filter(function(n){return d.indexOf(n)>=0});0===u.length&&(u=p);var b=u.reduce(function(e,t){return e[t]=kt(n,{placement:t,boundary:o,rootBoundary:a,padding:i})[Pe(t)],e},{});return Object.keys(b).sort(function(n,e){return b[n]-b[e]})}var Et={name:"flip",enabled:!0,phase:"main",fn:function(n){var e=n.state,t=n.options,r=n.name;if(!e.modifiersData[r]._skip){for(var o=t.mainAxis,a=void 0===o||o,i=t.altAxis,s=void 0===i||i,l=t.fallbackPlacements,d=t.padding,c=t.boundary,p=t.rootBoundary,u=t.altBoundary,b=t.flipVariations,m=void 0===b||b,f=t.allowedAutoPlacements,g=e.options.placement,h=Pe(g),v=l||(h===g||!m?[ct(g)]:function(n){if(Pe(n)===_e)return[];var e=ct(n);return[ut(n),e,ut(e)]}(g)),x=[g].concat(v).reduce(function(n,t){return n.concat(Pe(t)===_e?_t(e,{placement:t,boundary:c,rootBoundary:p,padding:d,flipVariations:m,allowedAutoPlacements:f}):t)},[]),w=e.rects.reference,y=e.rects.popper,k=new Map,_=!0,E=x[0],S=0;S<x.length;S++){var O=x[S],C=Pe(O),N=rt(O)===Se,j=[xe,we].indexOf(C)>=0,z=j?"width":"height",M=kt(e,{placement:O,boundary:c,rootBoundary:p,altBoundary:u,padding:d}),P=j?N?ye:ke:N?we:xe;w[z]>y[z]&&(P=ct(P));var R=ct(P),A=[];if(a&&A.push(M[C]<=0),s&&A.push(M[P]<=0,M[R]<=0),A.every(function(n){return n})){E=O,_=!1;break}k.set(O,A)}if(_)for(var I=function(n){var e=x.find(function(e){var t=k.get(e);if(t)return t.slice(0,n).every(function(n){return n})});if(e)return E=e,"break"},D=m?3:1;D>0;D--){if("break"===I(D))break}e.placement!==E&&(e.modifiersData[r]._skip=!0,e.placement=E,e.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function St(n,e,t){return void 0===t&&(t={x:0,y:0}),{top:n.top-e.height-t.y,right:n.right-e.width+t.x,bottom:n.bottom-e.height+t.y,left:n.left-e.width-t.x}}function Ot(n){return[xe,ye,we,ke].some(function(e){return n[e]>=0})}var Ct={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(n){var e=n.state,t=n.options,r=n.name,o=t.offset,a=void 0===o?[0,0]:o,i=ze.reduce(function(n,t){return n[t]=function(n,e,t){var r=Pe(n),o=[ke,xe].indexOf(r)>=0?-1:1,a="function"==typeof t?t(Object.assign({},e,{placement:n})):t,i=a[0],s=a[1];return i=i||0,s=(s||0)*o,[ke,ye].indexOf(r)>=0?{x:s,y:i}:{x:i,y:s}}(t,e.rects,a),n},{}),s=i[e.placement],l=s.x,d=s.y;null!=e.modifiersData.popperOffsets&&(e.modifiersData.popperOffsets.x+=l,e.modifiersData.popperOffsets.y+=d),e.modifiersData[r]=i}};var Nt={name:"preventOverflow",enabled:!0,phase:"main",fn:function(n){var e=n.state,t=n.options,r=n.name,o=t.mainAxis,a=void 0===o||o,i=t.altAxis,s=void 0!==i&&i,l=t.boundary,d=t.rootBoundary,c=t.altBoundary,p=t.padding,u=t.tether,b=void 0===u||u,m=t.tetherOffset,f=void 0===m?0:m,g=kt(e,{boundary:l,rootBoundary:d,padding:p,altBoundary:c}),h=Pe(e.placement),v=rt(e.placement),x=!v,w=Qe(h),y="x"===w?"y":"x",k=e.modifiersData.popperOffsets,_=e.rects.reference,E=e.rects.popper,S="function"==typeof f?f(Object.assign({},e.rects,{placement:e.placement})):f,O="number"==typeof S?{mainAxis:S,altAxis:S}:Object.assign({mainAxis:0,altAxis:0},S),C=e.modifiersData.offset?e.modifiersData.offset[e.placement]:null,N={x:0,y:0};if(k){if(a){var j,z="y"===w?xe:ke,M="y"===w?we:ye,P="y"===w?"height":"width",R=k[w],A=R+g[z],I=R-g[M],D=b?-E[P]/2:0,L=v===Se?_[P]:E[P],T=v===Se?-E[P]:-_[P],B=e.elements.arrow,V=b&&B?Fe(B):{width:0,height:0},$=e.modifiersData["arrow#persistent"]?e.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},H=$[z],F=$[M],Y=Je(0,_[P],V[P]),G=x?_[P]/2-D-Y-H-O.mainAxis:L-Y-H-O.mainAxis,X=x?-_[P]/2+D+Y+F+O.mainAxis:T+Y+F+O.mainAxis,W=e.elements.arrow&&Ue(e.elements.arrow),Z=W?"y"===w?W.clientTop||0:W.clientLeft||0:0,K=null!=(j=null==C?void 0:C[w])?j:0,q=R+X-K,U=Je(b?Te(A,R+G-K-Z):A,R,b?Le(I,q):I);k[w]=U,N[w]=U-R}if(s){var Q,J="x"===w?xe:ke,nn="x"===w?we:ye,en=k[y],tn="y"===y?"height":"width",rn=en+g[J],on=en-g[nn],an=-1!==[xe,ke].indexOf(h),sn=null!=(Q=null==C?void 0:C[y])?Q:0,ln=an?rn:en-_[tn]-E[tn]-sn+O.altAxis,dn=an?en+_[tn]+E[tn]-sn-O.altAxis:on,cn=b&&an?function(n,e,t){var r=Je(n,e,t);return r>t?t:r}(ln,en,dn):Je(b?ln:rn,en,b?dn:on);k[y]=cn,N[y]=cn-en}e.modifiersData[r]=N}},requiresIfExists:["offset"]};function jt(n,e,t){void 0===t&&(t=!1);var r,o,a=Ie(e),i=Ie(e)&&function(n){var e=n.getBoundingClientRect(),t=Be(e.width)/n.offsetWidth||1,r=Be(e.height)/n.offsetHeight||1;return 1!==t||1!==r}(e),s=Ze(e),l=He(n,i,t),d={scrollLeft:0,scrollTop:0},c={x:0,y:0};return(a||!a&&!t)&&(("body"!==Ge(e)||ft(s))&&(d=(r=e)!==Re(r)&&Ie(r)?{scrollLeft:(o=r).scrollLeft,scrollTop:o.scrollTop}:bt(r)),Ie(e)?((c=He(e,!0)).x+=e.clientLeft,c.y+=e.clientTop):s&&(c.x=mt(s))),{x:l.left+d.scrollLeft-c.x,y:l.top+d.scrollTop-c.y,width:l.width,height:l.height}}function zt(n){var e=new Map,t=new Set,r=[];function o(n){t.add(n.name),[].concat(n.requires||[],n.requiresIfExists||[]).forEach(function(n){if(!t.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){t.has(n.name)||o(n)}),r}function Mt(n){var e;return function(){return e||(e=new Promise(function(t){Promise.resolve().then(function(){e=void 0,t(n())})})),e}}var Pt={placement:"bottom",modifiers:[],strategy:"absolute"};function Rt(){for(var n=arguments.length,e=new Array(n),t=0;t<n;t++)e[t]=arguments[t];return!e.some(function(n){return!(n&&"function"==typeof n.getBoundingClientRect)})}const At=function(n){void 0===n&&(n={});var e=n,t=e.defaultModifiers,r=void 0===t?[]:t,o=e.defaultOptions,a=void 0===o?Pt:o;return function(n,e,t){void 0===t&&(t=a);var o={placement:"bottom",orderedModifiers:[],options:Object.assign({},Pt,a),modifiersData:{},elements:{reference:n,popper:e},attributes:{},styles:{}},i=[],s=!1,l={state:o,setOptions:function(t){var s="function"==typeof t?t(o.options):t;d(),o.options=Object.assign({},a,o.options,s),o.scrollParents={reference:Ae(n)?ht(n):n.contextElement?ht(n.contextElement):[],popper:ht(e)};var c,p,u=function(n){var e=zt(n);return Me.reduce(function(n,t){return n.concat(e.filter(function(n){return n.phase===t}))},[])}((c=[].concat(r,o.options.modifiers),p=c.reduce(function(n,e){var t=n[e.name];return n[e.name]=t?Object.assign({},t,e,{options:Object.assign({},t.options,e.options),data:Object.assign({},t.data,e.data)}):e,n},{}),Object.keys(p).map(function(n){return p[n]})));return o.orderedModifiers=u.filter(function(n){return n.enabled}),o.orderedModifiers.forEach(function(n){var e=n.name,t=n.options,r=void 0===t?{}:t,a=n.effect;if("function"==typeof a){var s=a({state:o,name:e,instance:l,options:r}),d=function(){};i.push(s||d)}}),l.update()},forceUpdate:function(){if(!s){var n=o.elements,e=n.reference,t=n.popper;if(Rt(e,t)){o.rects={reference:jt(e,Ue(t),"fixed"===o.options.strategy),popper:Fe(t)},o.reset=!1,o.placement=o.options.placement,o.orderedModifiers.forEach(function(n){return o.modifiersData[n.name]=Object.assign({},n.data)});for(var r=0;r<o.orderedModifiers.length;r++)if(!0!==o.reset){var a=o.orderedModifiers[r],i=a.fn,d=a.options,c=void 0===d?{}:d,p=a.name;"function"==typeof i&&(o=i({state:o,options:c,name:p,instance:l})||o)}else o.reset=!1,r=-1}}},update:Mt(function(){return new Promise(function(n){l.forceUpdate(),n(o)})}),destroy:function(){d(),s=!0}};if(!Rt(n,e))return l;function d(){i.forEach(function(n){return n()}),i=[]}return l.setOptions(t).then(function(n){!s&&t.onFirstUpdate&&t.onFirstUpdate(n)}),l}}({defaultModifiers:[{name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(n){var e=n.state,t=n.name,r=e.rects.reference,o=e.rects.popper,a=e.modifiersData.preventOverflow,i=kt(e,{elementContext:"reference"}),s=kt(e,{altBoundary:!0}),l=St(i,r),d=St(s,o,a),c=Ot(l),p=Ot(d);e.modifiersData[t]={referenceClippingOffsets:l,popperEscapeOffsets:d,isReferenceHidden:c,hasPopperEscaped:p},e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-reference-hidden":c,"data-popper-escaped":p})}},{name:"popperOffsets",enabled:!0,phase:"read",fn:function(n){var e=n.state,t=n.name;e.modifiersData[t]=yt({reference:e.rects.reference,element:e.rects.popper,placement:e.placement})},data:{}},it,lt,Ct,Et,Nt,tt]}),It=["enabled","placement","strategy","modifiers"];const Dt={name:"applyStyles",enabled:!1,phase:"afterWrite",fn:()=>{}},Lt={name:"ariaDescribedBy",enabled:!0,phase:"afterWrite",effect:({state:n})=>()=>{const{reference:e,popper:t}=n.elements;if("removeAttribute"in e){const n=(e.getAttribute("aria-describedby")||"").split(",").filter(n=>n.trim()!==t.id);n.length?e.setAttribute("aria-describedby",n.join(",")):e.removeAttribute("aria-describedby")}},fn:({state:n})=>{var e;const{popper:t,reference:r}=n.elements,o=null==(e=t.getAttribute("role"))?void 0:e.toLowerCase();if(t.id&&"tooltip"===o&&"setAttribute"in r){const n=r.getAttribute("aria-describedby");if(n&&-1!==n.split(",").indexOf(t.id))return;r.setAttribute("aria-describedby",n?`${n},${t.id}`:t.id)}}},Tt=[];function Bt(n,e){return n.contains?n.contains(e):n.compareDocumentPosition?n===e||!!(16&n.compareDocumentPosition(e)):void 0}function Vt(n,e,t,r){return ue(n,e,t,r),function(){!function(n,e,t,r){var o=r&&"boolean"!=typeof r?r.capture:r;n.removeEventListener(e,t,o),t.__once&&n.removeEventListener(e,t.__once,o)}(n,e,t,r)}}var $t,Ht;var Ft=function(){if(Ht)return $t;Ht=1;var n=function(){};if("production"!==process.env.NODE_ENV){var e=function(n,e){var t=arguments.length;e=new Array(t>1?t-1:0);for(var r=1;r<t;r++)e[r-1]=arguments[r];var o=0,a="Warning: "+n.replace(/%s/g,function(){return e[o++]});"undefined"!=typeof console&&console.error(a);try{throw new Error(a)}catch(n){}};n=function(n,t,r){var o=arguments.length;r=new Array(o>2?o-2:0);for(var a=2;a<o;a++)r[a-2]=arguments[a];if(void 0===t)throw new Error("`warning(condition, format, ...args)` requires a warning message argument");n||e.apply(null,[t].concat(r))}}return $t=n}(),Yt=a(Ft);const Gt=()=>{};const Xt=n=>n&&("current"in n?n.current:n),Wt={click:"mousedown",mouseup:"mousedown",pointerup:"pointerdown"};function Zt(n,t=Gt,{disabled:r,clickTrigger:o="click"}={}){const a=e.useRef(!1),i=e.useRef(!1),s=e.useCallback(e=>{const t=Xt(n);var r;Yt(!!t,"ClickOutside captured a close event but does not have a ref to compare it to. useClickOutside(), should be passed a ref that resolves to a DOM node"),a.current=!t||!!((r=e).metaKey||r.altKey||r.ctrlKey||r.shiftKey)||!function(n){return 0===n.button}(e)||!!Bt(t,e.target)||i.current,i.current=!1},[n]),l=be(e=>{const t=Xt(n);t&&Bt(t,e.target)?i.current=!0:i.current=!1}),d=be(n=>{a.current||t(n)});e.useEffect(()=>{var e,t;if(r||null==n)return;const a=(i=Xt(n))&&i.ownerDocument||document;var i;const c=a.defaultView||window;let p=null!=(e=c.event)?e:null==(t=c.parent)?void 0:t.event,u=null;Wt[o]&&(u=Vt(a,Wt[o],l,!0));const b=Vt(a,o,s,!0),m=Vt(a,o,n=>{n!==p?d(n):p=void 0});let f=[];return"ontouchstart"in a.documentElement&&(f=[].slice.call(a.body.children).map(n=>Vt(n,"mousemove",Gt))),()=>{null==u||u(),b(),m(),f.forEach(n=>n())}},[n,r,o,s,l,d])}function Kt(n={}){return Array.isArray(n)?n:Object.keys(n).map(e=>(n[e].name=e,n[e]))}function qt({enabled:n,enableEvents:e,placement:t,flip:r,offset:o,fixed:a,containerPadding:i,arrowElement:s,popperConfig:l={}}){var d,c,p,u,b;const m=function(n){const e={};return Array.isArray(n)?(null==n||n.forEach(n=>{e[n.name]=n}),e):n||e}(l.modifiers);return Object.assign({},l,{placement:t,enabled:n,strategy:a?"fixed":l.strategy,modifiers:Kt(Object.assign({},m,{eventListeners:{enabled:e,options:null==(d=m.eventListeners)?void 0:d.options},preventOverflow:Object.assign({},m.preventOverflow,{options:i?Object.assign({padding:i},null==(c=m.preventOverflow)?void 0:c.options):null==(p=m.preventOverflow)?void 0:p.options}),offset:{options:Object.assign({offset:o},null==(u=m.offset)?void 0:u.options)},arrow:Object.assign({},m.arrow,{enabled:!!s,options:Object.assign({},null==(b=m.arrow)?void 0:b.options,{element:s})}),flip:Object.assign({enabled:!!r},m.flip)}))})}const Ut=["children","usePopper"];const Qt=()=>{};function Jt(n={}){const t=e.useContext(me),[r,o]=e.useState(null),a=e.useRef(!1),{flip:i,offset:s,rootCloseEvent:l,fixed:d=!1,placement:c,popperConfig:p={},enableEventListeners:u=!0,usePopper:b=!!t}=n,m=null==(null==t?void 0:t.show)?!!n.show:t.show;m&&!a.current&&(a.current=!0);const{placement:f,setMenu:g,menuElement:h,toggleElement:v}=t||{},x=function(n,t,r={}){let{enabled:o=!0,placement:a="bottom",strategy:i="absolute",modifiers:s=Tt}=r,l=function(n,e){if(null==n)return{};var t={};for(var r in n)if({}.hasOwnProperty.call(n,r)){if(e.indexOf(r)>=0)continue;t[r]=n[r]}return t}(r,It);const d=e.useRef(s),c=e.useRef(),p=e.useCallback(()=>{var n;null==(n=c.current)||n.update()},[]),u=e.useCallback(()=>{var n;null==(n=c.current)||n.forceUpdate()},[]),[b,m]=ve(e.useState({placement:a,update:p,forceUpdate:u,attributes:{},styles:{popper:{},arrow:{}}})),f=e.useMemo(()=>({name:"updateStateModifier",enabled:!0,phase:"write",requires:["computeStyles"],fn:({state:n})=>{const e={},t={};Object.keys(n.elements).forEach(r=>{e[r]=n.styles[r],t[r]=n.attributes[r]}),m({state:n,styles:e,attributes:t,update:p,forceUpdate:u,placement:n.placement})}}),[p,u,m]),g=e.useMemo(()=>(he(d.current,s)||(d.current=s),d.current),[s]);return e.useEffect(()=>{c.current&&o&&c.current.setOptions({placement:a,strategy:i,modifiers:[...g,f,Dt]})},[i,a,f,o,g]),e.useEffect(()=>{if(o&&null!=n&&null!=t)return c.current=At(n,t,Object.assign({},l,{placement:a,strategy:i,modifiers:[...g,Lt,f]})),()=>{null!=c.current&&(c.current.destroy(),c.current=void 0,m(n=>Object.assign({},n,{attributes:{},styles:{popper:{}}})))}},[o,n,t]),b}(v,h,qt({placement:c||f||"bottom-start",enabled:b,enableEvents:null==u?m:u,offset:s,flip:i,fixed:d,arrowElement:r,popperConfig:p})),w=Object.assign({ref:g||Qt,"aria-labelledby":null==v?void 0:v.id},x.attributes.popper,{style:x.styles.popper}),y={show:m,placement:f,hasShown:a.current,toggle:null==t?void 0:t.toggle,popper:b?x:null,arrowProps:b?Object.assign({ref:o},x.attributes.arrow,{style:x.styles.arrow}):{}};return Zt(h,n=>{null==t||t.toggle(!1,n)},{clickTrigger:l,disabled:!m}),[w,y]}function nr(e){let{children:t,usePopper:r=!0}=e,o=function(n,e){if(null==n)return{};var t={};for(var r in n)if({}.hasOwnProperty.call(n,r)){if(e.indexOf(r)>=0)continue;t[r]=n[r]}return t}(e,Ut);const[a,i]=Jt(Object.assign({},o,{usePopper:r}));return n.jsx(n.Fragment,{children:t(a,i)})}nr.displayName="DropdownMenu";const er={prefix:String(Math.round(1e10*Math.random())),current:0},tr=e.createContext(er),rr=e.createContext(!1);let or=Boolean("undefined"!=typeof window&&window.document&&window.document.createElement),ar=new WeakMap;const ir="function"==typeof e.useId?function(n){let t=e.useId(),[r]=e.useState("function"==typeof e.useSyncExternalStore?e.useSyncExternalStore(dr,sr,lr):e.useContext(rr)),o=r||"test"===process.env.NODE_ENV?"react-aria":`react-aria${er.prefix}`;return n||`${o}-${t}`}:function(n){let t=e.useContext(tr);t!==er||or||"production"===process.env.NODE_ENV||console.warn("When server rendering, you must wrap your application in an <SSRProvider> to ensure consistent ids are generated between the client and server.");let r=function(n=!1){let t=e.useContext(tr),r=e.useRef(null);if(null===r.current&&!n){var o,a;let n=null===(a=e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED)||void 0===a||null===(o=a.ReactCurrentOwner)||void 0===o?void 0:o.current;if(n){let e=ar.get(n);null==e?ar.set(n,{id:t.current,state:n.memoizedState}):n.memoizedState!==e.state&&(t.current=e.id,ar.delete(n))}r.current=++t.current}return r.current}(!!n),o=t===er&&"test"===process.env.NODE_ENV?"react-aria":`react-aria${t.prefix}`;return n||`${o}-${r}`};function sr(){return!1}function lr(){return!0}function dr(n){return()=>{}}const cr=n=>{var e;return"menu"===(null==(e=n.getAttribute("role"))?void 0:e.toLowerCase())},pr=()=>{};function ur(){const n=ir(),{show:t=!1,toggle:r=pr,setToggle:o,menuElement:a}=e.useContext(me)||{},i=e.useCallback(n=>{r(!t,n)},[t,r]),s={id:n,ref:o||pr,onClick:i,"aria-expanded":!!t};return a&&cr(a)&&(s["aria-haspopup"]=!0),[s,{show:t,toggle:r}]}function br({children:e}){const[t,r]=ur();return n.jsx(n.Fragment,{children:e(t,r)})}br.displayName="DropdownToggle";const mr=r.createContext(null),fr=(n,e=null)=>null!=n?String(n):e||null,gr=r.createContext(null);gr.displayName="NavContext";const hr=["as","disabled"];function vr({tagName:n,disabled:e,href:t,target:r,rel:o,role:a,onClick:i,tabIndex:s=0,type:l}){n||(n=null!=t||null!=r||null!=o?"a":"button");const d={tagName:n};if("button"===n)return[{type:l||"button",disabled:e},d];const c=r=>{(e||"a"===n&&function(n){return!n||"#"===n.trim()}(t))&&r.preventDefault(),e?r.stopPropagation():null==i||i(r)};return"a"===n&&(t||(t="#"),e&&(t=void 0)),[{role:null!=a?a:"button",disabled:void 0,tabIndex:e?void 0:s,href:t,target:"a"===n?r:void 0,"aria-disabled":e||void 0,rel:"a"===n?o:void 0,onClick:c,onKeyDown:n=>{" "===n.key&&(n.preventDefault(),c(n))}},d]}const xr=r.forwardRef((e,t)=>{let{as:r,disabled:o}=e,a=function(n,e){if(null==n)return{};var t={};for(var r in n)if({}.hasOwnProperty.call(n,r)){if(e.indexOf(r)>=0)continue;t[r]=n[r]}return t}(e,hr);const[i,{tagName:s}]=vr(Object.assign({tagName:r,disabled:o},a));return n.jsx(s,Object.assign({},a,i,{ref:t}))});xr.displayName="Button";function wr(n){return`data-rr-ui-${n}`}const yr=["eventKey","disabled","onClick","active","as"];function kr({key:n,href:t,active:r,disabled:o,onClick:a}){const i=e.useContext(mr),s=e.useContext(gr),{activeKey:l}=s||{},d=fr(n,t),c=null==r&&null!=n?fr(l)===d:r;return[{onClick:be(n=>{o||(null==a||a(n),i&&!n.isPropagationStopped()&&i(d,n))}),"aria-disabled":o||void 0,"aria-selected":c,[wr("dropdown-item")]:""},{isActive:c}]}const _r=r.forwardRef((e,t)=>{let{eventKey:r,disabled:o,onClick:a,active:i,as:s=xr}=e,l=function(n,e){if(null==n)return{};var t={};for(var r in n)if({}.hasOwnProperty.call(n,r)){if(e.indexOf(r)>=0)continue;t[r]=n[r]}return t}(e,yr);const[d]=kr({key:r,href:l.href,disabled:o,onClick:a,active:i});return n.jsx(s,Object.assign({},l,{ref:t},d))});_r.displayName="DropdownItem";const Er=e.createContext(le?window:void 0);function Sr(){const n=function(){const[,n]=e.useReducer(n=>n+1,0);return n}(),t=e.useRef(null),r=e.useCallback(e=>{t.current=e,n()},[n]);return[t,r]}function Or({defaultShow:t,show:r,onSelect:o,onToggle:a,itemSelector:i=`* [${wr("dropdown-item")}]`,focusFirstItemOnShow:s,placement:l="bottom-start",children:d}){const c=e.useContext(Er),[p,u]=function(n,t,r){const o=e.useRef(void 0!==n),[a,i]=e.useState(t),s=void 0!==n,l=o.current;return o.current=s,!s&&l&&a!==t&&i(t),[s?n:a,e.useCallback((...n)=>{const[e,...t]=n;let o=null==r?void 0:r(e,...t);return i(e),o},[r])]}(r,t,a),[b,m]=Sr(),f=b.current,[g,h]=Sr(),v=g.current,x=function(n){const t=e.useRef(null);return e.useEffect(()=>{t.current=n}),t.current}(p),w=e.useRef(null),y=e.useRef(!1),k=e.useContext(mr),_=e.useCallback((n,e,t=(null==e?void 0:e.type))=>{u(n,{originalEvent:e,source:t})},[u]),E=be((n,e)=>{null==o||o(n,e),_(!1,e,"select"),e.isPropagationStopped()||null==k||k(n,e)}),S=e.useMemo(()=>({toggle:_,placement:l,show:p,menuElement:f,toggleElement:v,setMenu:m,setToggle:h}),[_,l,p,f,v,m,h]);f&&x&&!p&&(y.current=f.contains(f.ownerDocument.activeElement));const O=be(()=>{v&&v.focus&&v.focus()}),C=be(()=>{const n=w.current;let e=s;if(null==e&&(e=!(!b.current||!cr(b.current))&&"keyboard"),!1===e||"keyboard"===e&&!/^key.+$/.test(n))return;const t=se(b.current,i)[0];t&&t.focus&&t.focus()});e.useEffect(()=>{p?C():y.current&&(y.current=!1,O())},[p,y,O,C]),e.useEffect(()=>{w.current=null});const N=(n,e)=>{if(!b.current)return null;const t=se(b.current,i);let r=t.indexOf(n)+e;return r=Math.max(0,Math.min(r,t.length)),t[r]};return function(n,t,r,o=!1){const a=be(r);e.useEffect(()=>{const e="function"==typeof n?n():n;return e.addEventListener(t,a,o),()=>e.removeEventListener(t,a,o)},[n])}(e.useCallback(()=>c.document,[c]),"keydown",n=>{var e,t;const{key:r}=n,o=n.target,a=null==(e=b.current)?void 0:e.contains(o),i=null==(t=g.current)?void 0:t.contains(o);if(/input|textarea/i.test(o.tagName)&&(" "===r||"Escape"!==r&&a||"Escape"===r&&"search"===o.type))return;if(!a&&!i)return;if(!("Tab"!==r||b.current&&p))return;w.current=n.type;const s={originalEvent:n,source:n.type};switch(r){case"ArrowUp":{const e=N(o,-1);return e&&e.focus&&e.focus(),void n.preventDefault()}case"ArrowDown":if(n.preventDefault(),p){const n=N(o,1);n&&n.focus&&n.focus()}else u(!0,s);return;case"Tab":ue(o.ownerDocument,"keyup",n=>{var e;("Tab"!==n.key||n.target)&&null!=(e=b.current)&&e.contains(n.target)||u(!1,s)},{once:!0});break;case"Escape":"Escape"===r&&(n.preventDefault(),n.stopPropagation()),u(!1,s)}}),n.jsx(mr.Provider,{value:E,children:n.jsx(me.Provider,{value:S,children:d})})}function Cr(){return Cr=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)({}).hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},Cr.apply(null,arguments)}var Nr,jr;Er.Provider,Or.displayName="Dropdown",Or.Menu=nr,Or.Toggle=br,Or.Item=_r;var zr=a(function(){if(jr)return Nr;jr=1;var n=process.env.NODE_ENV;return Nr=function(e,t,r,o,a,i,s,l){if("production"!==n&&void 0===t)throw new Error("invariant requires an error message argument");if(!e){var d;if(void 0===t)d=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var c=[r,o,a,i,s,l],p=0;(d=new Error(t.replace(/%s/g,function(){return c[p++]}))).name="Invariant Violation"}throw d.framesToPop=1,d}}}());function Mr(n){return"default"+n.charAt(0).toUpperCase()+n.substr(1)}function Pr(n){var e=function(n,e){if("object"!=typeof n||null===n)return n;var t=n[Symbol.toPrimitive];if(void 0!==t){var r=t.call(n,e);if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n,"string");return"symbol"==typeof e?e:String(e)}function Rr(n,t){return Object.keys(t).reduce(function(r,o){var a,i=r,s=i[Mr(o)],l=i[o],d=function(n,e){if(null==n)return{};var t={};for(var r in n)if({}.hasOwnProperty.call(n,r)){if(-1!==e.indexOf(r))continue;t[r]=n[r]}return t}(i,[Mr(o),o].map(Pr)),c=t[o],p=function(n,t,r){var o=e.useRef(void 0!==n),a=e.useState(t),i=a[0],s=a[1],l=void 0!==n,d=o.current;return o.current=l,!l&&d&&i!==t&&s(t),[l?n:i,e.useCallback(function(n){for(var e=arguments.length,t=new Array(e>1?e-1:0),o=1;o<e;o++)t[o-1]=arguments[o];r&&r.apply(void 0,[n].concat(t)),s(n)},[r])]}(l,s,n[c]),u=p[0],b=p[1];return Cr({},d,((a={})[o]=u,a[c]=b,a))},n)}function Ar(n){const t=function(n){const t=e.useRef(n);return e.useEffect(()=>{t.current=n},[n]),t}(n);return e.useCallback(function(...n){return t.current&&t.current(...n)},[t])}const Ir=r.createContext({});Ir.displayName="DropdownContext";const Dr=r.createContext({prefixes:{},breakpoints:["xxl","xl","lg","md","sm","xs"],minBreakpoint:"xs"}),{Consumer:Lr,Provider:Tr}=Dr;function Br(n,t){const{prefixes:r}=e.useContext(Dr);return n||r[t]||t}const Vr=r.forwardRef(({className:e,bsPrefix:t,as:r="hr",role:o="separator",...a},i)=>(t=Br(t,"dropdown-divider"),n.jsx(r,{ref:i,className:ae(e,t),role:o,...a})));Vr.displayName="DropdownDivider";const $r=r.forwardRef(({className:e,bsPrefix:t,as:r="div",role:o="heading",...a},i)=>(t=Br(t,"dropdown-header"),n.jsx(r,{ref:i,className:ae(e,t),role:o,...a})));$r.displayName="DropdownHeader";const Hr=["onKeyDown"];const Fr=r.forwardRef((e,t)=>{let{onKeyDown:r}=e,o=function(n,e){if(null==n)return{};var t={};for(var r in n)if({}.hasOwnProperty.call(n,r)){if(e.indexOf(r)>=0)continue;t[r]=n[r]}return t}(e,Hr);const[a]=vr(Object.assign({tagName:"a"},o)),i=be(n=>{a.onKeyDown(n),null==r||r(n)});return(s=o.href)&&"#"!==s.trim()&&"button"!==o.role?n.jsx("a",Object.assign({ref:t},o,{onKeyDown:r})):n.jsx("a",Object.assign({ref:t},o,a,{onKeyDown:i}));var s});Fr.displayName="Anchor";const Yr=r.forwardRef(({bsPrefix:e,className:t,eventKey:r,disabled:o=!1,onClick:a,active:i,as:s=Fr,...l},d)=>{const c=Br(e,"dropdown-item"),[p,u]=kr({key:r,href:l.href,disabled:o,onClick:a,active:i});return n.jsx(s,{...l,...p,ref:d,className:ae(t,c,u.isActive&&"active",o&&"disabled")})});Yr.displayName="DropdownItem";const Gr=r.forwardRef(({className:e,bsPrefix:t,as:r="span",...o},a)=>(t=Br(t,"dropdown-item-text"),n.jsx(r,{ref:a,className:ae(e,t),...o})));Gr.displayName="DropdownItemText";const Xr="undefined"!=typeof global&&global.navigator&&"ReactNative"===global.navigator.product;var Wr="undefined"!=typeof document||Xr?e.useLayoutEffect:e.useEffect;const Zr=n=>n&&"function"!=typeof n?e=>{n.current=e}:n;function Kr(n,t){return e.useMemo(()=>function(n,e){const t=Zr(n),r=Zr(e);return n=>{t&&t(n),r&&r(n)}}(n,t),[n,t])}const qr=r.createContext(null);qr.displayName="InputGroupContext";const Ur=r.createContext(null);function Qr(n,t){if("production"===process.env.NODE_ENV)return n;return Kr(e.useCallback(n=>{null!=n&&n.isReactComponent&&("production"!==process.env.NODE_ENV?zr(!1,`${t} injected a ref to a provided \`as\` component that resolved to a component instance instead of a DOM element. Use \`React.forwardRef\` to provide the injected ref to the class component as a prop in order to pass it directly to a DOM element`):zr(!1))},[t]),n)}function Jr(n,e,t){let r=n?t?"bottom-start":"bottom-end":t?"bottom-end":"bottom-start";return"up"===e?r=n?t?"top-start":"top-end":t?"top-end":"top-start":"end"===e?r=n?t?"left-end":"right-end":t?"left-start":"right-start":"start"===e?r=n?t?"right-end":"left-end":t?"right-start":"left-start":"down-centered"===e?r="bottom":"up-centered"===e&&(r="top"),r}Ur.displayName="NavbarContext";const no=r.forwardRef(({bsPrefix:t,className:r,align:o,rootCloseEvent:a,flip:i=!0,show:s,renderOnMount:l,as:d="div",popperConfig:c,variant:p,...u},b)=>{let m=!1;const f=e.useContext(Ur),g=Br(t,"dropdown-menu"),{align:h,drop:v,isRTL:x}=e.useContext(Ir);o=o||h;const w=e.useContext(qr),y=[];if(o)if("object"==typeof o){const n=Object.keys(o);if("production"!==process.env.NODE_ENV&&Yt(1===n.length,"There should only be 1 breakpoint when passing an object to `align`"),n.length){const e=n[0],t=o[e];m="start"===t,y.push(`${g}-${e}-${t}`)}}else"end"===o&&(m=!0);const k=Jr(m,v,x),[_,{hasShown:E,popper:S,show:O,toggle:C}]=Jt({flip:i,rootCloseEvent:a,show:s,usePopper:!f&&0===y.length,offset:[0,2],popperConfig:c,placement:k});if(_.ref=Kr(Qr(b,"DropdownMenu"),_.ref),Wr(()=>{O&&(null==S||S.update())},[O]),!E&&!l&&!w)return null;"string"!=typeof d&&(_.show=O,_.close=()=>null==C?void 0:C(!1),_.align=o);let N=u.style;return null!=S&&S.placement&&(N={...u.style,..._.style},u["x-placement"]=S.placement),n.jsx(d,{...u,..._,style:N,...(y.length||f)&&{"data-bs-popper":"static"},className:ae(r,g,O&&"show",m&&`${g}-end`,p&&`${g}-${p}`,...y)})});no.displayName="DropdownMenu";const eo=r.forwardRef(({as:e,bsPrefix:t,variant:r="primary",size:o,active:a=!1,disabled:i=!1,className:s,...l},d)=>{const c=Br(t,"btn"),[p,{tagName:u}]=vr({tagName:e,disabled:i,...l}),b=u;return n.jsx(b,{...p,...l,ref:d,disabled:i,className:ae(s,c,a&&"active",r&&`${c}-${r}`,o&&`${c}-${o}`,l.href&&i&&"disabled")})});eo.displayName="Button";const to=r.forwardRef(({bsPrefix:t,split:r,className:o,childBsPrefix:a,as:i=eo,...s},l)=>{const d=Br(t,"dropdown-toggle"),c=e.useContext(me);void 0!==a&&(s.bsPrefix=a);const[p]=ur();return p.ref=Kr(p.ref,Qr(l,"DropdownToggle")),n.jsx(i,{className:ae(o,d,r&&`${d}-split`,(null==c?void 0:c.show)&&"show"),...p,...s})});to.displayName="DropdownToggle";const ro=r.forwardRef((t,r)=>{const{bsPrefix:o,drop:a="down",show:i,className:s,align:l="start",onSelect:d,onToggle:c,focusFirstItemOnShow:p,as:u="div",navbar:b,autoClose:m=!0,...f}=Rr(t,{show:"onToggle"}),g=e.useContext(qr),h=Br(o,"dropdown"),v=function(){const{dir:n}=e.useContext(Dr);return"rtl"===n}(),x=Ar((n,e)=>{var t;var r;(null==(t=e.originalEvent)||null==(t=t.target)?void 0:t.classList.contains("dropdown-toggle"))&&"mousedown"===e.source||(e.originalEvent.currentTarget!==document||"keydown"===e.source&&"Escape"!==e.originalEvent.key||(e.source="rootClose"),r=e.source,(!1===m?"click"===r:"inside"===m?"rootClose"!==r:"outside"!==m||"select"!==r)&&(null==c||c(n,e)))}),w=Jr("end"===l,a,v),y=e.useMemo(()=>({align:l,drop:a,isRTL:v}),[l,a,v]),k={down:h,"down-centered":`${h}-center`,up:"dropup","up-centered":"dropup-center dropup",end:"dropend",start:"dropstart"};return n.jsx(Ir.Provider,{value:y,children:n.jsx(Or,{placement:w,show:i,onSelect:d,onToggle:x,focusFirstItemOnShow:p,itemSelector:`.${h}-item:not(.disabled):not(:disabled)`,children:g?f.children:n.jsx(u,{...f,ref:r,className:ae(s,i&&"show",k[a])})})})});ro.displayName="Dropdown";var oo=Object.assign(ro,{Toggle:to,Menu:no,Item:Yr,ItemText:Gr,Divider:Vr,Header:$r});o("@charset \"UTF-8\";\n/*!\n * Bootstrap v5.3.7 (https://getbootstrap.com/)\n * Copyright 2011-2025 The Bootstrap Authors\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n */\n:root,\n[data-bs-theme=light] {\n --bs-blue: #0d6efd;\n --bs-indigo: #6610f2;\n --bs-purple: #6f42c1;\n --bs-pink: #d63384;\n --bs-red: #dc3545;\n --bs-orange: #fd7e14;\n --bs-yellow: #ffc107;\n --bs-green: #198754;\n --bs-teal: #20c997;\n --bs-cyan: #0dcaf0;\n --bs-black: #000;\n --bs-white: #fff;\n --bs-gray: #6c757d;\n --bs-gray-dark: #343a40;\n --bs-gray-100: #f8f9fa;\n --bs-gray-200: #e9ecef;\n --bs-gray-300: #dee2e6;\n --bs-gray-400: #ced4da;\n --bs-gray-500: #adb5bd;\n --bs-gray-600: #6c757d;\n --bs-gray-700: #495057;\n --bs-gray-800: #343a40;\n --bs-gray-900: #212529;\n --bs-primary: #0d6efd;\n --bs-secondary: #6c757d;\n --bs-success: #198754;\n --bs-info: #0dcaf0;\n --bs-warning: #ffc107;\n --bs-danger: #dc3545;\n --bs-light: #f8f9fa;\n --bs-dark: #212529;\n --bs-primary-rgb: 13, 110, 253;\n --bs-secondary-rgb: 108, 117, 125;\n --bs-success-rgb: 25, 135, 84;\n --bs-info-rgb: 13, 202, 240;\n --bs-warning-rgb: 255, 193, 7;\n --bs-danger-rgb: 220, 53, 69;\n --bs-light-rgb: 248, 249, 250;\n --bs-dark-rgb: 33, 37, 41;\n --bs-primary-text-emphasis: #052c65;\n --bs-secondary-text-emphasis: #2b2f32;\n --bs-success-text-emphasis: #0a3622;\n --bs-info-text-emphasis: #055160;\n --bs-warning-text-emphasis: #664d03;\n --bs-danger-text-emphasis: #58151c;\n --bs-light-text-emphasis: #495057;\n --bs-dark-text-emphasis: #495057;\n --bs-primary-bg-subtle: #cfe2ff;\n --bs-secondary-bg-subtle: #e2e3e5;\n --bs-success-bg-subtle: #d1e7dd;\n --bs-info-bg-subtle: #cff4fc;\n --bs-warning-bg-subtle: #fff3cd;\n --bs-danger-bg-subtle: #f8d7da;\n --bs-light-bg-subtle: #fcfcfd;\n --bs-dark-bg-subtle: #ced4da;\n --bs-primary-border-subtle: #9ec5fe;\n --bs-secondary-border-subtle: #c4c8cb;\n --bs-success-border-subtle: #a3cfbb;\n --bs-info-border-subtle: #9eeaf9;\n --bs-warning-border-subtle: #ffe69c;\n --bs-danger-border-subtle: #f1aeb5;\n --bs-light-border-subtle: #e9ecef;\n --bs-dark-border-subtle: #adb5bd;\n --bs-white-rgb: 255, 255, 255;\n --bs-black-rgb: 0, 0, 0;\n --bs-font-sans-serif: system-ui, -apple-system, \"Segoe UI\", Roboto, \"Helvetica Neue\", \"Noto Sans\", \"Liberation Sans\", Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\n --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));\n --bs-body-font-family: var(--bs-font-sans-serif);\n --bs-body-font-size: 1rem;\n --bs-body-font-weight: 400;\n --bs-body-line-height: 1.5;\n --bs-body-color: #212529;\n --bs-body-color-rgb: 33, 37, 41;\n --bs-body-bg: #fff;\n --bs-body-bg-rgb: 255, 255, 255;\n --bs-emphasis-color: #000;\n --bs-emphasis-color-rgb: 0, 0, 0;\n --bs-secondary-color: rgba(33, 37, 41, 0.75);\n --bs-secondary-color-rgb: 33, 37, 41;\n --bs-secondary-bg: #e9ecef;\n --bs-secondary-bg-rgb: 233, 236, 239;\n --bs-tertiary-color: rgba(33, 37, 41, 0.5);\n --bs-tertiary-color-rgb: 33, 37, 41;\n --bs-tertiary-bg: #f8f9fa;\n --bs-tertiary-bg-rgb: 248, 249, 250;\n --bs-heading-color: inherit;\n --bs-link-color: #0d6efd;\n --bs-link-color-rgb: 13, 110, 253;\n --bs-link-decoration: underline;\n --bs-link-hover-color: #0a58ca;\n --bs-link-hover-color-rgb: 10, 88, 202;\n --bs-code-color: #d63384;\n --bs-highlight-color: #212529;\n --bs-highlight-bg: #fff3cd;\n --bs-border-width: 1px;\n --bs-border-style: solid;\n --bs-border-color: #dee2e6;\n --bs-border-color-translucent: rgba(0, 0, 0, 0.175);\n --bs-border-radius: 0.375rem;\n --bs-border-radius-sm: 0.25rem;\n --bs-border-radius-lg: 0.5rem;\n --bs-border-radius-xl: 1rem;\n --bs-border-radius-xxl: 2rem;\n --bs-border-radius-2xl: var(--bs-border-radius-xxl);\n --bs-border-radius-pill: 50rem;\n --bs-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);\n --bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);\n --bs-box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.175);\n --bs-box-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, 0.075);\n --bs-focus-ring-width: 0.25rem;\n --bs-focus-ring-opacity: 0.25;\n --bs-focus-ring-color: rgba(13, 110, 253, 0.25);\n --bs-form-valid-color: #198754;\n --bs-form-valid-border-color: #198754;\n --bs-form-invalid-color: #dc3545;\n --bs-form-invalid-border-color: #dc3545;\n}\n\n[data-bs-theme=dark] {\n color-scheme: dark;\n --bs-body-color: #dee2e6;\n --bs-body-color-rgb: 222, 226, 230;\n --bs-body-bg: #212529;\n --bs-body-bg-rgb: 33, 37, 41;\n --bs-emphasis-color: #fff;\n --bs-emphasis-color-rgb: 255, 255, 255;\n --bs-secondary-color: rgba(222, 226, 230, 0.75);\n --bs-secondary-color-rgb: 222, 226, 230;\n --bs-secondary-bg: #343a40;\n --bs-secondary-bg-rgb: 52, 58, 64;\n --bs-tertiary-color: rgba(222, 226, 230, 0.5);\n --bs-tertiary-color-rgb: 222, 226, 230;\n --bs-tertiary-bg: #2b3035;\n --bs-tertiary-bg-rgb: 43, 48, 53;\n --bs-primary-text-emphasis: #6ea8fe;\n --bs-secondary-text-emphasis: #a7acb1;\n --bs-success-text-emphasis: #75b798;\n --bs-info-text-emphasis: #6edff6;\n --bs-warning-text-emphasis: #ffda6a;\n --bs-danger-text-emphasis: #ea868f;\n --bs-light-text-emphasis: #f8f9fa;\n --bs-dark-text-emphasis: #dee2e6;\n --bs-primary-bg-subtle: #031633;\n --bs-secondary-bg-subtle: #161719;\n --bs-success-bg-subtle: #051b11;\n --bs-info-bg-subtle: #032830;\n --bs-warning-bg-subtle: #332701;\n --bs-danger-bg-subtle: #2c0b0e;\n --bs-light-bg-subtle: #343a40;\n --bs-dark-bg-subtle: #1a1d20;\n --bs-primary-border-subtle: #084298;\n --bs-secondary-border-subtle: #41464b;\n --bs-success-border-subtle: #0f5132;\n --bs-info-border-subtle: #087990;\n --bs-warning-border-subtle: #997404;\n --bs-danger-border-subtle: #842029;\n --bs-light-border-subtle: #495057;\n --bs-dark-border-subtle: #343a40;\n --bs-heading-color: inherit;\n --bs-link-color: #6ea8fe;\n --bs-link-hover-color: #8bb9fe;\n --bs-link-color-rgb: 110, 168, 254;\n --bs-link-hover-color-rgb: 139, 185, 254;\n --bs-code-color: #e685b5;\n --bs-highlight-color: #dee2e6;\n --bs-highlight-bg: #664d03;\n --bs-border-color: #495057;\n --bs-border-color-translucent: rgba(255, 255, 255, 0.15);\n --bs-form-valid-color: #75b798;\n --bs-form-valid-border-color: #75b798;\n --bs-form-invalid-color: #ea868f;\n --bs-form-invalid-border-color: #ea868f;\n}\n\n*,\n*::before,\n*::after {\n box-sizing: border-box;\n}\n\n@media (prefers-reduced-motion: no-preference) {\n :root {\n scroll-behavior: smooth;\n }\n}\n\nbody {\n margin: 0;\n font-family: var(--bs-body-font-family);\n font-size: var(--bs-body-font-size);\n font-weight: var(--bs-body-font-weight);\n line-height: var(--bs-body-line-height);\n color: var(--bs-body-color);\n text-align: var(--bs-body-text-align);\n background-color: var(--bs-body-bg);\n -webkit-text-size-adjust: 100%;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\n\nhr {\n margin: 1rem 0;\n color: inherit;\n border: 0;\n border-top: var(--bs-border-width) solid;\n opacity: 0.25;\n}\n\nh6, .h6, h5, .h5, h4, .h4, h3, .h3, h2, .h2, h1, .h1 {\n margin-top: 0;\n margin-bottom: 0.5rem;\n font-weight: 500;\n line-height: 1.2;\n color: var(--bs-heading-color);\n}\n\nh1, .h1 {\n font-size: calc(1.375rem + 1.5vw);\n}\n@media (min-width: 1200px) {\n h1, .h1 {\n font-size: 2.5rem;\n }\n}\n\nh2, .h2 {\n font-size: calc(1.325rem + 0.9vw);\n}\n@media (min-width: 1200px) {\n h2, .h2 {\n font-size: 2rem;\n }\n}\n\nh3, .h3 {\n font-size: calc(1.3rem + 0.6vw);\n}\n@media (min-width: 1200px) {\n h3, .h3 {\n font-size: 1.75rem;\n }\n}\n\nh4, .h4 {\n font-size: calc(1.275rem + 0.3vw);\n}\n@media (min-width: 1200px) {\n h4, .h4 {\n font-size: 1.5rem;\n }\n}\n\nh5, .h5 {\n font-size: 1.25rem;\n}\n\nh6, .h6 {\n font-size: 1rem;\n}\n\np {\n margin-top: 0;\n margin-bottom: 1rem;\n}\n\nabbr[title] {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n cursor: help;\n -webkit-text-decoration-skip-ink: none;\n text-decoration-skip-ink: none;\n}\n\naddress {\n margin-bottom: 1rem;\n font-style: normal;\n line-height: inherit;\n}\n\nol,\nul {\n padding-left: 2rem;\n}\n\nol,\nul,\ndl {\n margin-top: 0;\n margin-bottom: 1rem;\n}\n\nol ol,\nul ul,\nol ul,\nul ol {\n margin-bottom: 0;\n}\n\ndt {\n font-weight: 700;\n}\n\ndd {\n margin-bottom: 0.5rem;\n margin-left: 0;\n}\n\nblockquote {\n margin: 0 0 1rem;\n}\n\nb,\nstrong {\n font-weight: bolder;\n}\n\nsmall, .small {\n font-size: 0.875em;\n}\n\nmark, .mark {\n padding: 0.1875em;\n color: var(--bs-highlight-color);\n background-color: var(--bs-highlight-bg);\n}\n\nsub,\nsup {\n position: relative;\n font-size: 0.75em;\n line-height: 0;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\na {\n color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 1));\n text-decoration: underline;\n}\na:hover {\n --bs-link-color-rgb: var(--bs-link-hover-color-rgb);\n}\n\na:not([href]):not([class]), a:not([href]):not([class]):hover {\n color: inherit;\n text-decoration: none;\n}\n\npre,\ncode,\nkbd,\nsamp {\n font-family: var(--bs-font-monospace);\n font-size: 1em;\n}\n\npre {\n display: block;\n margin-top: 0;\n margin-bottom: 1rem;\n overflow: auto;\n font-size: 0.875em;\n}\npre code {\n font-size: inherit;\n color: inherit;\n word-break: normal;\n}\n\ncode {\n font-size: 0.875em;\n color: var(--bs-code-color);\n word-wrap: break-word;\n}\na > code {\n color: inherit;\n}\n\nkbd {\n padding: 0.1875rem 0.375rem;\n font-size: 0.875em;\n color: var(--bs-body-bg);\n background-color: var(--bs-body-color);\n border-radius: 0.25rem;\n}\nkbd kbd {\n padding: 0;\n font-size: 1em;\n}\n\nfigure {\n margin: 0 0 1rem;\n}\n\nimg,\nsvg {\n vertical-align: middle;\n}\n\ntable {\n caption-side: bottom;\n border-collapse: collapse;\n}\n\ncaption {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n color: var(--bs-secondary-color);\n text-align: left;\n}\n\nth {\n text-align: inherit;\n text-align: -webkit-match-parent;\n}\n\nthead,\ntbody,\ntfoot,\ntr,\ntd,\nth {\n border-color: inherit;\n border-style: solid;\n border-width: 0;\n}\n\nlabel {\n display: inline-block;\n}\n\nbutton {\n border-radius: 0;\n}\n\nbutton:focus:not(:focus-visible) {\n outline: 0;\n}\n\ninput,\nbutton,\nselect,\noptgroup,\ntextarea {\n margin: 0;\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\n\nbutton,\nselect {\n text-transform: none;\n}\n\n[role=button] {\n cursor: pointer;\n}\n\nselect {\n word-wrap: normal;\n}\nselect:disabled {\n opacity: 1;\n}\n\n[list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator {\n display: none !important;\n}\n\nbutton,\n[type=button],\n[type=reset],\n[type=submit] {\n -webkit-appearance: button;\n}\nbutton:not(:disabled),\n[type=button]:not(:disabled),\n[type=reset]:not(:disabled),\n[type=submit]:not(:disabled) {\n cursor: pointer;\n}\n\n::-moz-focus-inner {\n padding: 0;\n border-style: none;\n}\n\ntextarea {\n resize: vertical;\n}\n\nfieldset {\n min-width: 0;\n padding: 0;\n margin: 0;\n border: 0;\n}\n\nlegend {\n float: left;\n width: 100%;\n padding: 0;\n margin-bottom: 0.5rem;\n line-height: inherit;\n font-size: calc(1.275rem + 0.3vw);\n}\n@media (min-width: 1200px) {\n legend {\n font-size: 1.5rem;\n }\n}\nlegend + * {\n clear: left;\n}\n\n::-webkit-datetime-edit-fields-wrapper,\n::-webkit-datetime-edit-text,\n::-webkit-datetime-edit-minute,\n::-webkit-datetime-edit-hour-field,\n::-webkit-datetime-edit-day-field,\n::-webkit-datetime-edit-month-field,\n::-webkit-datetime-edit-year-field {\n padding: 0;\n}\n\n::-webkit-inner-spin-button {\n height: auto;\n}\n\n[type=search] {\n -webkit-appearance: textfield;\n outline-offset: -2px;\n}\n\n/* rtl:raw:\n[type=\"tel\"],\n[type=\"url\"],\n[type=\"email\"],\n[type=\"number\"] {\n direction: ltr;\n}\n*/\n::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n::-webkit-color-swatch-wrapper {\n padding: 0;\n}\n\n::-webkit-file-upload-button {\n font: inherit;\n -webkit-appearance: button;\n}\n\n::file-selector-button {\n font: inherit;\n -webkit-appearance: button;\n}\n\noutput {\n display: inline-block;\n}\n\niframe {\n border: 0;\n}\n\nsummary {\n display: list-item;\n cursor: pointer;\n}\n\nprogress {\n vertical-align: baseline;\n}\n\n[hidden] {\n display: none !important;\n}\n\n.lead {\n font-size: 1.25rem;\n font-weight: 300;\n}\n\n.display-1 {\n font-weight: 300;\n line-height: 1.2;\n font-size: calc(1.625rem + 4.5vw);\n}\n@media (min-width: 1200px) {\n .display-1 {\n font-size: 5rem;\n }\n}\n\n.display-2 {\n font-weight: 300;\n line-height: 1.2;\n font-size: calc(1.575rem + 3.9vw);\n}\n@media (min-width: 1200px) {\n .display-2 {\n font-size: 4.5rem;\n }\n}\n\n.display-3 {\n font-weight: 300;\n line-height: 1.2;\n font-size: calc(1.525rem + 3.3vw);\n}\n@media (min-width: 1200px) {\n .display-3 {\n font-size: 4rem;\n }\n}\n\n.display-4 {\n font-weight: 300;\n line-height: 1.2;\n font-size: calc(1.475rem + 2.7vw);\n}\n@media (min-width: 1200px) {\n .display-4 {\n font-size: 3.5rem;\n }\n}\n\n.display-5 {\n font-weight: 300;\n line-height: 1.2;\n font-size: calc(1.425rem + 2.1vw);\n}\n@media (min-width: 1200px) {\n .display-5 {\n font-size: 3rem;\n }\n}\n\n.display-6 {\n font-weight: 300;\n line-height: 1.2;\n font-size: calc(1.375rem + 1.5vw);\n}\n@media (min-width: 1200px) {\n .display-6 {\n font-size: 2.5rem;\n }\n}\n\n.list-unstyled {\n padding-left: 0;\n list-style: none;\n}\n\n.list-inline {\n padding-left: 0;\n list-style: none;\n}\n\n.list-inline-item {\n display: inline-block;\n}\n.list-inline-item:not(:last-child) {\n margin-right: 0.5rem;\n}\n\n.initialism {\n font-size: 0.875em;\n text-transform: uppercase;\n}\n\n.blockquote {\n margin-bottom: 1rem;\n font-size: 1.25rem;\n}\n.blockquote > :last-child {\n margin-bottom: 0;\n}\n\n.blockquote-footer {\n margin-top: -1rem;\n margin-bottom: 1rem;\n font-size: 0.875em;\n color: #6c757d;\n}\n.blockquote-footer::before {\n content: \"— \";\n}\n\n.img-fluid {\n max-width: 100%;\n height: auto;\n}\n\n.img-thumbnail {\n padding: 0.25rem;\n background-color: var(--bs-body-bg);\n border: var(--bs-border-width) solid var(--bs-border-color);\n border-radius: var(--bs-border-radius);\n max-width: 100%;\n height: auto;\n}\n\n.figure {\n display: inline-block;\n}\n\n.figure-img {\n margin-bottom: 0.5rem;\n line-height: 1;\n}\n\n.figure-caption {\n font-size: 0.875em;\n color: var(--bs-secondary-color);\n}\n\n.container,\n.container-fluid,\n.container-xxl,\n.container-xl,\n.container-lg,\n.container-md,\n.container-sm {\n --bs-gutter-x: 1.5rem;\n --bs-gutter-y: 0;\n width: 100%;\n padding-right: calc(var(--bs-gutter-x) * 0.5);\n padding-left: calc(var(--bs-gutter-x) * 0.5);\n margin-right: auto;\n margin-left: auto;\n}\n\n@media (min-width: 576px) {\n .container-sm, .container {\n max-width: 540px;\n }\n}\n@media (min-width: 768px) {\n .container-md, .container-sm, .container {\n max-width: 720px;\n }\n}\n@media (min-width: 992px) {\n .container-lg, .container-md, .container-sm, .container {\n max-width: 960px;\n }\n}\n@media (min-width: 1200px) {\n .container-xl, .container-lg, .container-md, .container-sm, .container {\n max-width: 1140px;\n }\n}\n@media (min-width: 1400px) {\n .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container {\n max-width: 1320px;\n }\n}\n:root {\n --bs-breakpoint-xs: 0;\n --bs-breakpoint-sm: 576px;\n --bs-breakpoint-md: 768px;\n --bs-breakpoint-lg: 992px;\n --bs-breakpoint-xl: 1200px;\n --bs-breakpoint-xxl: 1400px;\n}\n\n.row {\n --bs-gutter-x: 1.5rem;\n --bs-gutter-y: 0;\n display: flex;\n flex-wrap: wrap;\n margin-top: calc(-1 * var(--bs-gutter-y));\n margin-right: calc(-0.5 * var(--bs-gutter-x));\n margin-left: calc(-0.5 * var(--bs-gutter-x));\n}\n.row > * {\n flex-shrink: 0;\n width: 100%;\n max-width: 100%;\n padding-right: calc(var(--bs-gutter-x) * 0.5);\n padding-left: calc(var(--bs-gutter-x) * 0.5);\n margin-top: var(--bs-gutter-y);\n}\n\n.col {\n flex: 1 0 0;\n}\n\n.row-cols-auto > * {\n flex: 0 0 auto;\n width: auto;\n}\n\n.row-cols-1 > * {\n flex: 0 0 auto;\n width: 100%;\n}\n\n.row-cols-2 > * {\n flex: 0 0 auto;\n width: 50%;\n}\n\n.row-cols-3 > * {\n flex: 0 0 auto;\n width: 33.33333333%;\n}\n\n.row-cols-4 > * {\n flex: 0 0 auto;\n width: 25%;\n}\n\n.row-cols-5 > * {\n flex: 0 0 auto;\n width: 20%;\n}\n\n.row-cols-6 > * {\n flex: 0 0 auto;\n width: 16.66666667%;\n}\n\n.col-auto {\n flex: 0 0 auto;\n width: auto;\n}\n\n.col-1 {\n flex: 0 0 auto;\n width: 8.33333333%;\n}\n\n.col-2 {\n flex: 0 0 auto;\n width: 16.66666667%;\n}\n\n.col-3 {\n flex: 0 0 auto;\n width: 25%;\n}\n\n.col-4 {\n flex: 0 0 auto;\n width: 33.33333333%;\n}\n\n.col-5 {\n flex: 0 0 auto;\n width: 41.66666667%;\n}\n\n.col-6 {\n flex: 0 0 auto;\n width: 50%;\n}\n\n.col-7 {\n flex: 0 0 auto;\n width: 58.33333333%;\n}\n\n.col-8 {\n flex: 0 0 auto;\n width: 66.66666667%;\n}\n\n.col-9 {\n flex: 0 0 auto;\n width: 75%;\n}\n\n.col-10 {\n flex: 0 0 auto;\n width: 83.33333333%;\n}\n\n.col-11 {\n flex: 0 0 auto;\n width: 91.66666667%;\n}\n\n.col-12 {\n flex: 0 0 auto;\n width: 100%;\n}\n\n.offset-1 {\n margin-left: 8.33333333%;\n}\n\n.offset-2 {\n margin-left: 16.66666667%;\n}\n\n.offset-3 {\n margin-left: 25%;\n}\n\n.offset-4 {\n margin-left: 33.33333333%;\n}\n\n.offset-5 {\n margin-left: 41.66666667%;\n}\n\n.offset-6 {\n margin-left: 50%;\n}\n\n.offset-7 {\n margin-left: 58.33333333%;\n}\n\n.offset-8 {\n margin-left: 66.66666667%;\n}\n\n.offset-9 {\n margin-left: 75%;\n}\n\n.offset-10 {\n margin-left: 83.33333333%;\n}\n\n.offset-11 {\n margin-left: 91.66666667%;\n}\n\n.g-0,\n.gx-0 {\n --bs-gutter-x: 0;\n}\n\n.g-0,\n.gy-0 {\n --bs-gutter-y: 0;\n}\n\n.g-1,\n.gx-1 {\n --bs-gutter-x: 0.25rem;\n}\n\n.g-1,\n.gy-1 {\n --bs-gutter-y: 0.25rem;\n}\n\n.g-2,\n.gx-2 {\n --bs-gutter-x: 0.5rem;\n}\n\n.g-2,\n.gy-2 {\n --bs-gutter-y: 0.5rem;\n}\n\n.g-3,\n.gx-3 {\n --bs-gutter-x: 1rem;\n}\n\n.g-3,\n.gy-3 {\n --bs-gutter-y: 1rem;\n}\n\n.g-4,\n.gx-4 {\n --bs-gutter-x: 1.5rem;\n}\n\n.g-4,\n.gy-4 {\n --bs-gutter-y: 1.5rem;\n}\n\n.g-5,\n.gx-5 {\n --bs-gutter-x: 3rem;\n}\n\n.g-5,\n.gy-5 {\n --bs-gutter-y: 3rem;\n}\n\n@media (min-width: 576px) {\n .col-sm {\n flex: 1 0 0;\n }\n .row-cols-sm-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-sm-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-sm-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-sm-3 > * {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .row-cols-sm-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-sm-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-sm-6 > * {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-sm-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .col-sm-1 {\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-sm-2 {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-sm-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .col-sm-4 {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-sm-5 {\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-sm-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .col-sm-7 {\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-sm-8 {\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-sm-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .col-sm-10 {\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-sm-11 {\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-sm-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-sm-0 {\n margin-left: 0;\n }\n .offset-sm-1 {\n margin-left: 8.33333333%;\n }\n .offset-sm-2 {\n margin-left: 16.66666667%;\n }\n .offset-sm-3 {\n margin-left: 25%;\n }\n .offset-sm-4 {\n margin-left: 33.33333333%;\n }\n .offset-sm-5 {\n margin-left: 41.66666667%;\n }\n .offset-sm-6 {\n margin-left: 50%;\n }\n .offset-sm-7 {\n margin-left: 58.33333333%;\n }\n .offset-sm-8 {\n margin-left: 66.66666667%;\n }\n .offset-sm-9 {\n margin-left: 75%;\n }\n .offset-sm-10 {\n margin-left: 83.33333333%;\n }\n .offset-sm-11 {\n margin-left: 91.66666667%;\n }\n .g-sm-0,\n .gx-sm-0 {\n --bs-gutter-x: 0;\n }\n .g-sm-0,\n .gy-sm-0 {\n --bs-gutter-y: 0;\n }\n .g-sm-1,\n .gx-sm-1 {\n --bs-gutter-x: 0.25rem;\n }\n .g-sm-1,\n .gy-sm-1 {\n --bs-gutter-y: 0.25rem;\n }\n .g-sm-2,\n .gx-sm-2 {\n --bs-gutter-x: 0.5rem;\n }\n .g-sm-2,\n .gy-sm-2 {\n --bs-gutter-y: 0.5rem;\n }\n .g-sm-3,\n .gx-sm-3 {\n --bs-gutter-x: 1rem;\n }\n .g-sm-3,\n .gy-sm-3 {\n --bs-gutter-y: 1rem;\n }\n .g-sm-4,\n .gx-sm-4 {\n --bs-gutter-x: 1.5rem;\n }\n .g-sm-4,\n .gy-sm-4 {\n --bs-gutter-y: 1.5rem;\n }\n .g-sm-5,\n .gx-sm-5 {\n --bs-gutter-x: 3rem;\n }\n .g-sm-5,\n .gy-sm-5 {\n --bs-gutter-y: 3rem;\n }\n}\n@media (min-width: 768px) {\n .col-md {\n flex: 1 0 0;\n }\n .row-cols-md-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-md-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-md-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-md-3 > * {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .row-cols-md-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-md-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-md-6 > * {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-md-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .col-md-1 {\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-md-2 {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-md-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .col-md-4 {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-md-5 {\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-md-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .col-md-7 {\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-md-8 {\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-md-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .col-md-10 {\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-md-11 {\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-md-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-md-0 {\n margin-left: 0;\n }\n .offset-md-1 {\n margin-left: 8.33333333%;\n }\n .offset-md-2 {\n margin-left: 16.66666667%;\n }\n .offset-md-3 {\n margin-left: 25%;\n }\n .offset-md-4 {\n margin-left: 33.33333333%;\n }\n .offset-md-5 {\n margin-left: 41.66666667%;\n }\n .offset-md-6 {\n margin-left: 50%;\n }\n .offset-md-7 {\n margin-left: 58.33333333%;\n }\n .offset-md-8 {\n margin-left: 66.66666667%;\n }\n .offset-md-9 {\n margin-left: 75%;\n }\n .offset-md-10 {\n margin-left: 83.33333333%;\n }\n .offset-md-11 {\n margin-left: 91.66666667%;\n }\n .g-md-0,\n .gx-md-0 {\n --bs-gutter-x: 0;\n }\n .g-md-0,\n .gy-md-0 {\n --bs-gutter-y: 0;\n }\n .g-md-1,\n .gx-md-1 {\n --bs-gutter-x: 0.25rem;\n }\n .g-md-1,\n .gy-md-1 {\n --bs-gutter-y: 0.25rem;\n }\n .g-md-2,\n .gx-md-2 {\n --bs-gutter-x: 0.5rem;\n }\n .g-md-2,\n .gy-md-2 {\n --bs-gutter-y: 0.5rem;\n }\n .g-md-3,\n .gx-md-3 {\n --bs-gutter-x: 1rem;\n }\n .g-md-3,\n .gy-md-3 {\n --bs-gutter-y: 1rem;\n }\n .g-md-4,\n .gx-md-4 {\n --bs-gutter-x: 1.5rem;\n }\n .g-md-4,\n .gy-md-4 {\n --bs-gutter-y: 1.5rem;\n }\n .g-md-5,\n .gx-md-5 {\n --bs-gutter-x: 3rem;\n }\n .g-md-5,\n .gy-md-5 {\n --bs-gutter-y: 3rem;\n }\n}\n@media (min-width: 992px) {\n .col-lg {\n flex: 1 0 0;\n }\n .row-cols-lg-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-lg-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-lg-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-lg-3 > * {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .row-cols-lg-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-lg-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-lg-6 > * {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-lg-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .col-lg-1 {\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-lg-2 {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-lg-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .col-lg-4 {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-lg-5 {\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-lg-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .col-lg-7 {\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-lg-8 {\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-lg-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .col-lg-10 {\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-lg-11 {\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-lg-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-lg-0 {\n margin-left: 0;\n }\n .offset-lg-1 {\n margin-left: 8.33333333%;\n }\n .offset-lg-2 {\n margin-left: 16.66666667%;\n }\n .offset-lg-3 {\n margin-left: 25%;\n }\n .offset-lg-4 {\n margin-left: 33.33333333%;\n }\n .offset-lg-5 {\n margin-left: 41.66666667%;\n }\n .offset-lg-6 {\n margin-left: 50%;\n }\n .offset-lg-7 {\n margin-left: 58.33333333%;\n }\n .offset-lg-8 {\n margin-left: 66.66666667%;\n }\n .offset-lg-9 {\n margin-left: 75%;\n }\n .offset-lg-10 {\n margin-left: 83.33333333%;\n }\n .offset-lg-11 {\n margin-left: 91.66666667%;\n }\n .g-lg-0,\n .gx-lg-0 {\n --bs-gutter-x: 0;\n }\n .g-lg-0,\n .gy-lg-0 {\n --bs-gutter-y: 0;\n }\n .g-lg-1,\n .gx-lg-1 {\n --bs-gutter-x: 0.25rem;\n }\n .g-lg-1,\n .gy-lg-1 {\n --bs-gutter-y: 0.25rem;\n }\n .g-lg-2,\n .gx-lg-2 {\n --bs-gutter-x: 0.5rem;\n }\n .g-lg-2,\n .gy-lg-2 {\n --bs-gutter-y: 0.5rem;\n }\n .g-lg-3,\n .gx-lg-3 {\n --bs-gutter-x: 1rem;\n }\n .g-lg-3,\n .gy-lg-3 {\n --bs-gutter-y: 1rem;\n }\n .g-lg-4,\n .gx-lg-4 {\n --bs-gutter-x: 1.5rem;\n }\n .g-lg-4,\n .gy-lg-4 {\n --bs-gutter-y: 1.5rem;\n }\n .g-lg-5,\n .gx-lg-5 {\n --bs-gutter-x: 3rem;\n }\n .g-lg-5,\n .gy-lg-5 {\n --bs-gutter-y: 3rem;\n }\n}\n@media (min-width: 1200px) {\n .col-xl {\n flex: 1 0 0;\n }\n .row-cols-xl-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-xl-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-xl-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-xl-3 > * {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .row-cols-xl-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-xl-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-xl-6 > * {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-xl-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .col-xl-1 {\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-xl-2 {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-xl-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .col-xl-4 {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-xl-5 {\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-xl-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .col-xl-7 {\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-xl-8 {\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-xl-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .col-xl-10 {\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-xl-11 {\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-xl-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-xl-0 {\n margin-left: 0;\n }\n .offset-xl-1 {\n margin-left: 8.33333333%;\n }\n .offset-xl-2 {\n margin-left: 16.66666667%;\n }\n .offset-xl-3 {\n margin-left: 25%;\n }\n .offset-xl-4 {\n margin-left: 33.33333333%;\n }\n .offset-xl-5 {\n margin-left: 41.66666667%;\n }\n .offset-xl-6 {\n margin-left: 50%;\n }\n .offset-xl-7 {\n margin-left: 58.33333333%;\n }\n .offset-xl-8 {\n margin-left: 66.66666667%;\n }\n .offset-xl-9 {\n margin-left: 75%;\n }\n .offset-xl-10 {\n margin-left: 83.33333333%;\n }\n .offset-xl-11 {\n margin-left: 91.66666667%;\n }\n .g-xl-0,\n .gx-xl-0 {\n --bs-gutter-x: 0;\n }\n .g-xl-0,\n .gy-xl-0 {\n --bs-gutter-y: 0;\n }\n .g-xl-1,\n .gx-xl-1 {\n --bs-gutter-x: 0.25rem;\n }\n .g-xl-1,\n .gy-xl-1 {\n --bs-gutter-y: 0.25rem;\n }\n .g-xl-2,\n .gx-xl-2 {\n --bs-gutter-x: 0.5rem;\n }\n .g-xl-2,\n .gy-xl-2 {\n --bs-gutter-y: 0.5rem;\n }\n .g-xl-3,\n .gx-xl-3 {\n --bs-gutter-x: 1rem;\n }\n .g-xl-3,\n .gy-xl-3 {\n --bs-gutter-y: 1rem;\n }\n .g-xl-4,\n .gx-xl-4 {\n --bs-gutter-x: 1.5rem;\n }\n .g-xl-4,\n .gy-xl-4 {\n --bs-gutter-y: 1.5rem;\n }\n .g-xl-5,\n .gx-xl-5 {\n --bs-gutter-x: 3rem;\n }\n .g-xl-5,\n .gy-xl-5 {\n --bs-gutter-y: 3rem;\n }\n}\n@media (min-width: 1400px) {\n .col-xxl {\n flex: 1 0 0;\n }\n .row-cols-xxl-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-xxl-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-xxl-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-xxl-3 > * {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .row-cols-xxl-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-xxl-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-xxl-6 > * {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-xxl-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .col-xxl-1 {\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-xxl-2 {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-xxl-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .col-xxl-4 {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-xxl-5 {\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-xxl-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .col-xxl-7 {\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-xxl-8 {\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-xxl-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .col-xxl-10 {\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-xxl-11 {\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-xxl-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-xxl-0 {\n margin-left: 0;\n }\n .offset-xxl-1 {\n margin-left: 8.33333333%;\n }\n .offset-xxl-2 {\n margin-left: 16.66666667%;\n }\n .offset-xxl-3 {\n margin-left: 25%;\n }\n .offset-xxl-4 {\n margin-left: 33.33333333%;\n }\n .offset-xxl-5 {\n margin-left: 41.66666667%;\n }\n .offset-xxl-6 {\n margin-left: 50%;\n }\n .offset-xxl-7 {\n margin-left: 58.33333333%;\n }\n .offset-xxl-8 {\n margin-left: 66.66666667%;\n }\n .offset-xxl-9 {\n margin-left: 75%;\n }\n .offset-xxl-10 {\n margin-left: 83.33333333%;\n }\n .offset-xxl-11 {\n margin-left: 91.66666667%;\n }\n .g-xxl-0,\n .gx-xxl-0 {\n --bs-gutter-x: 0;\n }\n .g-xxl-0,\n .gy-xxl-0 {\n --bs-gutter-y: 0;\n }\n .g-xxl-1,\n .gx-xxl-1 {\n --bs-gutter-x: 0.25rem;\n }\n .g-xxl-1,\n .gy-xxl-1 {\n --bs-gutter-y: 0.25rem;\n }\n .g-xxl-2,\n .gx-xxl-2 {\n --bs-gutter-x: 0.5rem;\n }\n .g-xxl-2,\n .gy-xxl-2 {\n --bs-gutter-y: 0.5rem;\n }\n .g-xxl-3,\n .gx-xxl-3 {\n --bs-gutter-x: 1rem;\n }\n .g-xxl-3,\n .gy-xxl-3 {\n --bs-gutter-y: 1rem;\n }\n .g-xxl-4,\n .gx-xxl-4 {\n --bs-gutter-x: 1.5rem;\n }\n .g-xxl-4,\n .gy-xxl-4 {\n --bs-gutter-y: 1.5rem;\n }\n .g-xxl-5,\n .gx-xxl-5 {\n --bs-gutter-x: 3rem;\n }\n .g-xxl-5,\n .gy-xxl-5 {\n --bs-gutter-y: 3rem;\n }\n}\n.table {\n --bs-table-color-type: initial;\n --bs-table-bg-type: initial;\n --bs-table-color-state: initial;\n --bs-table-bg-state: initial;\n --bs-table-color: var(--bs-emphasis-color);\n --bs-table-bg: var(--bs-body-bg);\n --bs-table-border-color: var(--bs-border-color);\n --bs-table-accent-bg: transparent;\n --bs-table-striped-color: var(--bs-emphasis-color);\n --bs-table-striped-bg: rgba(var(--bs-emphasis-color-rgb), 0.05);\n --bs-table-active-color: var(--bs-emphasis-color);\n --bs-table-active-bg: rgba(var(--bs-emphasis-color-rgb), 0.1);\n --bs-table-hover-color: var(--bs-emphasis-color);\n --bs-table-hover-bg: rgba(var(--bs-emphasis-color-rgb), 0.075);\n width: 100%;\n margin-bottom: 1rem;\n vertical-align: top;\n border-color: var(--bs-table-border-color);\n}\n.table > :not(caption) > * > * {\n padding: 0.5rem 0.5rem;\n color: var(--bs-table-color-state, var(--bs-table-color-type, var(--bs-table-color)));\n background-color: var(--bs-table-bg);\n border-bottom-width: var(--bs-border-width);\n box-shadow: inset 0 0 0 9999px var(--bs-table-bg-state, var(--bs-table-bg-type, var(--bs-table-accent-bg)));\n}\n.table > tbody {\n vertical-align: inherit;\n}\n.table > thead {\n vertical-align: bottom;\n}\n\n.table-group-divider {\n border-top: calc(var(--bs-border-width) * 2) solid currentcolor;\n}\n\n.caption-top {\n caption-side: top;\n}\n\n.table-sm > :not(caption) > * > * {\n padding: 0.25rem 0.25rem;\n}\n\n.table-bordered > :not(caption) > * {\n border-width: var(--bs-border-width) 0;\n}\n.table-bordered > :not(caption) > * > * {\n border-width: 0 var(--bs-border-width);\n}\n\n.table-borderless > :not(caption) > * > * {\n border-bottom-width: 0;\n}\n.table-borderless > :not(:first-child) {\n border-top-width: 0;\n}\n\n.table-striped > tbody > tr:nth-of-type(odd) > * {\n --bs-table-color-type: var(--bs-table-striped-color);\n --bs-table-bg-type: var(--bs-table-striped-bg);\n}\n\n.table-striped-columns > :not(caption) > tr > :nth-child(even) {\n --bs-table-color-type: var(--bs-table-striped-color);\n --bs-table-bg-type: var(--bs-table-striped-bg);\n}\n\n.table-active {\n --bs-table-color-state: var(--bs-table-active-color);\n --bs-table-bg-state: var(--bs-table-active-bg);\n}\n\n.table-hover > tbody > tr:hover > * {\n --bs-table-color-state: var(--bs-table-hover-color);\n --bs-table-bg-state: var(--bs-table-hover-bg);\n}\n\n.table-primary {\n --bs-table-color: #000;\n --bs-table-bg: #cfe2ff;\n --bs-table-border-color: #a6b5cc;\n --bs-table-striped-bg: #c5d7f2;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #bacbe6;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #bfd1ec;\n --bs-table-hover-color: #000;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n\n.table-secondary {\n --bs-table-color: #000;\n --bs-table-bg: #e2e3e5;\n --bs-table-border-color: #b5b6b7;\n --bs-table-striped-bg: #d7d8da;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #cbccce;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #d1d2d4;\n --bs-table-hover-color: #000;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n\n.table-success {\n --bs-table-color: #000;\n --bs-table-bg: #d1e7dd;\n --bs-table-border-color: #a7b9b1;\n --bs-table-striped-bg: #c7dbd2;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #bcd0c7;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #c1d6cc;\n --bs-table-hover-color: #000;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n\n.table-info {\n --bs-table-color: #000;\n --bs-table-bg: #cff4fc;\n --bs-table-border-color: #a6c3ca;\n --bs-table-striped-bg: #c5e8ef;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #badce3;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #bfe2e9;\n --bs-table-hover-color: #000;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n\n.table-warning {\n --bs-table-color: #000;\n --bs-table-bg: #fff3cd;\n --bs-table-border-color: #ccc2a4;\n --bs-table-striped-bg: #f2e7c3;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #e6dbb9;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #ece1be;\n --bs-table-hover-color: #000;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n\n.table-danger {\n --bs-table-color: #000;\n --bs-table-bg: #f8d7da;\n --bs-table-border-color: #c6acae;\n --bs-table-striped-bg: #eccccf;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #dfc2c4;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #e5c7ca;\n --bs-table-hover-color: #000;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n\n.table-light {\n --bs-table-color: #000;\n --bs-table-bg: #f8f9fa;\n --bs-table-border-color: #c6c7c8;\n --bs-table-striped-bg: #ecedee;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #dfe0e1;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #e5e6e7;\n --bs-table-hover-color: #000;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n\n.table-dark {\n --bs-table-color: #fff;\n --bs-table-bg: #212529;\n --bs-table-border-color: #4d5154;\n --bs-table-striped-bg: #2c3034;\n --bs-table-striped-color: #fff;\n --bs-table-active-bg: #373b3e;\n --bs-table-active-color: #fff;\n --bs-table-hover-bg: #323539;\n --bs-table-hover-color: #fff;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n\n.table-responsive {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n}\n\n@media (max-width: 575.98px) {\n .table-responsive-sm {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n}\n@media (max-width: 767.98px) {\n .table-responsive-md {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n}\n@media (max-width: 991.98px) {\n .table-responsive-lg {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n}\n@media (max-width: 1199.98px) {\n .table-responsive-xl {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n}\n@media (max-width: 1399.98px) {\n .table-responsive-xxl {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n}\n.form-label {\n margin-bottom: 0.5rem;\n}\n\n.col-form-label {\n padding-top: calc(0.375rem + var(--bs-border-width));\n padding-bottom: calc(0.375rem + var(--bs-border-width));\n margin-bottom: 0;\n font-size: inherit;\n line-height: 1.5;\n}\n\n.col-form-label-lg {\n padding-top: calc(0.5rem + var(--bs-border-width));\n padding-bottom: calc(0.5rem + var(--bs-border-width));\n font-size: 1.25rem;\n}\n\n.col-form-label-sm {\n padding-top: calc(0.25rem + var(--bs-border-width));\n padding-bottom: calc(0.25rem + var(--bs-border-width));\n font-size: 0.875rem;\n}\n\n.form-text {\n margin-top: 0.25rem;\n font-size: 0.875em;\n color: var(--bs-secondary-color);\n}\n\n.form-control {\n display: block;\n width: 100%;\n padding: 0.375rem 0.75rem;\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5;\n color: var(--bs-body-color);\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n background-color: var(--bs-body-bg);\n background-clip: padding-box;\n border: var(--bs-border-width) solid var(--bs-border-color);\n border-radius: var(--bs-border-radius);\n transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-control {\n transition: none;\n }\n}\n.form-control[type=file] {\n overflow: hidden;\n}\n.form-control[type=file]:not(:disabled):not([readonly]) {\n cursor: pointer;\n}\n.form-control:focus {\n color: var(--bs-body-color);\n background-color: var(--bs-body-bg);\n border-color: #86b7fe;\n outline: 0;\n box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n}\n.form-control::-webkit-date-and-time-value {\n min-width: 85px;\n height: 1.5em;\n margin: 0;\n}\n.form-control::-webkit-datetime-edit {\n display: block;\n padding: 0;\n}\n.form-control::placeholder {\n color: var(--bs-secondary-color);\n opacity: 1;\n}\n.form-control:disabled {\n background-color: var(--bs-secondary-bg);\n opacity: 1;\n}\n.form-control::-webkit-file-upload-button {\n padding: 0.375rem 0.75rem;\n margin: -0.375rem -0.75rem;\n -webkit-margin-end: 0.75rem;\n margin-inline-end: 0.75rem;\n color: var(--bs-body-color);\n background-color: var(--bs-tertiary-bg);\n pointer-events: none;\n border-color: inherit;\n border-style: solid;\n border-width: 0;\n border-inline-end-width: var(--bs-border-width);\n border-radius: 0;\n -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n.form-control::file-selector-button {\n padding: 0.375rem 0.75rem;\n margin: -0.375rem -0.75rem;\n -webkit-margin-end: 0.75rem;\n margin-inline-end: 0.75rem;\n color: var(--bs-body-color);\n background-color: var(--bs-tertiary-bg);\n pointer-events: none;\n border-color: inherit;\n border-style: solid;\n border-width: 0;\n border-inline-end-width: var(--bs-border-width);\n border-radius: 0;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-control::-webkit-file-upload-button {\n -webkit-transition: none;\n transition: none;\n }\n .form-control::file-selector-button {\n transition: none;\n }\n}\n.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button {\n background-color: var(--bs-secondary-bg);\n}\n.form-control:hover:not(:disabled):not([readonly])::file-selector-button {\n background-color: var(--bs-secondary-bg);\n}\n\n.form-control-plaintext {\n display: block;\n width: 100%;\n padding: 0.375rem 0;\n margin-bottom: 0;\n line-height: 1.5;\n color: var(--bs-body-color);\n background-color: transparent;\n border: solid transparent;\n border-width: var(--bs-border-width) 0;\n}\n.form-control-plaintext:focus {\n outline: 0;\n}\n.form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {\n padding-right: 0;\n padding-left: 0;\n}\n\n.form-control-sm {\n min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));\n padding: 0.25rem 0.5rem;\n font-size: 0.875rem;\n border-radius: var(--bs-border-radius-sm);\n}\n.form-control-sm::-webkit-file-upload-button {\n padding: 0.25rem 0.5rem;\n margin: -0.25rem -0.5rem;\n -webkit-margin-end: 0.5rem;\n margin-inline-end: 0.5rem;\n}\n.form-control-sm::file-selector-button {\n padding: 0.25rem 0.5rem;\n margin: -0.25rem -0.5rem;\n -webkit-margin-end: 0.5rem;\n margin-inline-end: 0.5rem;\n}\n\n.form-control-lg {\n min-height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));\n padding: 0.5rem 1rem;\n font-size: 1.25rem;\n border-radius: var(--bs-border-radius-lg);\n}\n.form-control-lg::-webkit-file-upload-button {\n padding: 0.5rem 1rem;\n margin: -0.5rem -1rem;\n -webkit-margin-end: 1rem;\n margin-inline-end: 1rem;\n}\n.form-control-lg::file-selector-button {\n padding: 0.5rem 1rem;\n margin: -0.5rem -1rem;\n -webkit-margin-end: 1rem;\n margin-inline-end: 1rem;\n}\n\ntextarea.form-control {\n min-height: calc(1.5em + 0.75rem + calc(var(--bs-border-width) * 2));\n}\ntextarea.form-control-sm {\n min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));\n}\ntextarea.form-control-lg {\n min-height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));\n}\n\n.form-control-color {\n width: 3rem;\n height: calc(1.5em + 0.75rem + calc(var(--bs-border-width) * 2));\n padding: 0.375rem;\n}\n.form-control-color:not(:disabled):not([readonly]) {\n cursor: pointer;\n}\n.form-control-color::-moz-color-swatch {\n border: 0 !important;\n border-radius: var(--bs-border-radius);\n}\n.form-control-color::-webkit-color-swatch {\n border: 0 !important;\n border-radius: var(--bs-border-radius);\n}\n.form-control-color.form-control-sm {\n height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));\n}\n.form-control-color.form-control-lg {\n height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));\n}\n\n.form-select {\n --bs-form-select-bg-img: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e\");\n display: block;\n width: 100%;\n padding: 0.375rem 2.25rem 0.375rem 0.75rem;\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5;\n color: var(--bs-body-color);\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n background-color: var(--bs-body-bg);\n background-image: var(--bs-form-select-bg-img), var(--bs-form-select-bg-icon, none);\n background-repeat: no-repeat;\n background-position: right 0.75rem center;\n background-size: 16px 12px;\n border: var(--bs-border-width) solid var(--bs-border-color);\n border-radius: var(--bs-border-radius);\n transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-select {\n transition: none;\n }\n}\n.form-select:focus {\n border-color: #86b7fe;\n outline: 0;\n box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n}\n.form-select[multiple], .form-select[size]:not([size=\"1\"]) {\n padding-right: 0.75rem;\n background-image: none;\n}\n.form-select:disabled {\n background-color: var(--bs-secondary-bg);\n}\n.form-select:-moz-focusring {\n color: transparent;\n text-shadow: 0 0 0 var(--bs-body-color);\n}\n\n.form-select-sm {\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n padding-left: 0.5rem;\n font-size: 0.875rem;\n border-radius: var(--bs-border-radius-sm);\n}\n\n.form-select-lg {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n padding-left: 1rem;\n font-size: 1.25rem;\n border-radius: var(--bs-border-radius-lg);\n}\n\n[data-bs-theme=dark] .form-select {\n --bs-form-select-bg-img: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23dee2e6' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e\");\n}\n\n.form-check {\n display: block;\n min-height: 1.5rem;\n padding-left: 1.5em;\n margin-bottom: 0.125rem;\n}\n.form-check .form-check-input {\n float: left;\n margin-left: -1.5em;\n}\n\n.form-check-reverse {\n padding-right: 1.5em;\n padding-left: 0;\n text-align: right;\n}\n.form-check-reverse .form-check-input {\n float: right;\n margin-right: -1.5em;\n margin-left: 0;\n}\n\n.form-check-input {\n --bs-form-check-bg: var(--bs-body-bg);\n flex-shrink: 0;\n width: 1em;\n height: 1em;\n margin-top: 0.25em;\n vertical-align: top;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n background-color: var(--bs-form-check-bg);\n background-image: var(--bs-form-check-bg-image);\n background-repeat: no-repeat;\n background-position: center;\n background-size: contain;\n border: var(--bs-border-width) solid var(--bs-border-color);\n -webkit-print-color-adjust: exact;\n color-adjust: exact;\n print-color-adjust: exact;\n}\n.form-check-input[type=checkbox] {\n border-radius: 0.25em;\n}\n.form-check-input[type=radio] {\n border-radius: 50%;\n}\n.form-check-input:active {\n filter: brightness(90%);\n}\n.form-check-input:focus {\n border-color: #86b7fe;\n outline: 0;\n box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n}\n.form-check-input:checked {\n background-color: #0d6efd;\n border-color: #0d6efd;\n}\n.form-check-input:checked[type=checkbox] {\n --bs-form-check-bg-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e\");\n}\n.form-check-input:checked[type=radio] {\n --bs-form-check-bg-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e\");\n}\n.form-check-input[type=checkbox]:indeterminate {\n background-color: #0d6efd;\n border-color: #0d6efd;\n --bs-form-check-bg-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e\");\n}\n.form-check-input:disabled {\n pointer-events: none;\n filter: none;\n opacity: 0.5;\n}\n.form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label {\n cursor: default;\n opacity: 0.5;\n}\n\n.form-switch {\n padding-left: 2.5em;\n}\n.form-switch .form-check-input {\n --bs-form-switch-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e\");\n width: 2em;\n margin-left: -2.5em;\n background-image: var(--bs-form-switch-bg);\n background-position: left center;\n border-radius: 2em;\n transition: background-position 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-switch .form-check-input {\n transition: none;\n }\n}\n.form-switch .form-check-input:focus {\n --bs-form-switch-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2386b7fe'/%3e%3c/svg%3e\");\n}\n.form-switch .form-check-input:checked {\n background-position: right center;\n --bs-form-switch-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e\");\n}\n.form-switch.form-check-reverse {\n padding-right: 2.5em;\n padding-left: 0;\n}\n.form-switch.form-check-reverse .form-check-input {\n margin-right: -2.5em;\n margin-left: 0;\n}\n\n.form-check-inline {\n display: inline-block;\n margin-right: 1rem;\n}\n\n.btn-check {\n position: absolute;\n clip: rect(0, 0, 0, 0);\n pointer-events: none;\n}\n.btn-check[disabled] + .btn, .btn-check:disabled + .btn {\n pointer-events: none;\n filter: none;\n opacity: 0.65;\n}\n\n[data-bs-theme=dark] .form-switch .form-check-input:not(:checked):not(:focus) {\n --bs-form-switch-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%28255, 255, 255, 0.25%29'/%3e%3c/svg%3e\");\n}\n\n.form-range {\n width: 100%;\n height: 1.5rem;\n padding: 0;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n background-color: transparent;\n}\n.form-range:focus {\n outline: 0;\n}\n.form-range:focus::-webkit-slider-thumb {\n box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n}\n.form-range:focus::-moz-range-thumb {\n box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n}\n.form-range::-moz-focus-outer {\n border: 0;\n}\n.form-range::-webkit-slider-thumb {\n width: 1rem;\n height: 1rem;\n margin-top: -0.25rem;\n -webkit-appearance: none;\n appearance: none;\n background-color: #0d6efd;\n border: 0;\n border-radius: 1rem;\n -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-range::-webkit-slider-thumb {\n -webkit-transition: none;\n transition: none;\n }\n}\n.form-range::-webkit-slider-thumb:active {\n background-color: #b6d4fe;\n}\n.form-range::-webkit-slider-runnable-track {\n width: 100%;\n height: 0.5rem;\n color: transparent;\n cursor: pointer;\n background-color: var(--bs-secondary-bg);\n border-color: transparent;\n border-radius: 1rem;\n}\n.form-range::-moz-range-thumb {\n width: 1rem;\n height: 1rem;\n -moz-appearance: none;\n appearance: none;\n background-color: #0d6efd;\n border: 0;\n border-radius: 1rem;\n -moz-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-range::-moz-range-thumb {\n -moz-transition: none;\n transition: none;\n }\n}\n.form-range::-moz-range-thumb:active {\n background-color: #b6d4fe;\n}\n.form-range::-moz-range-track {\n width: 100%;\n height: 0.5rem;\n color: transparent;\n cursor: pointer;\n background-color: var(--bs-secondary-bg);\n border-color: transparent;\n border-radius: 1rem;\n}\n.form-range:disabled {\n pointer-events: none;\n}\n.form-range:disabled::-webkit-slider-thumb {\n background-color: var(--bs-secondary-color);\n}\n.form-range:disabled::-moz-range-thumb {\n background-color: var(--bs-secondary-color);\n}\n\n.form-floating {\n position: relative;\n}\n.form-floating > .form-control,\n.form-floating > .form-control-plaintext,\n.form-floating > .form-select {\n height: calc(3.5rem + calc(var(--bs-border-width) * 2));\n min-height: calc(3.5rem + calc(var(--bs-border-width) * 2));\n line-height: 1.25;\n}\n.form-floating > label {\n position: absolute;\n top: 0;\n left: 0;\n z-index: 2;\n max-width: 100%;\n height: 100%;\n padding: 1rem 0.75rem;\n overflow: hidden;\n color: rgba(var(--bs-body-color-rgb), 0.65);\n text-align: start;\n text-overflow: ellipsis;\n white-space: nowrap;\n pointer-events: none;\n border: var(--bs-border-width) solid transparent;\n transform-origin: 0 0;\n transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-floating > label {\n transition: none;\n }\n}\n.form-floating > .form-control,\n.form-floating > .form-control-plaintext {\n padding: 1rem 0.75rem;\n}\n.form-floating > .form-control::placeholder,\n.form-floating > .form-control-plaintext::placeholder {\n color: transparent;\n}\n.form-floating > .form-control:focus, .form-floating > .form-control:not(:placeholder-shown),\n.form-floating > .form-control-plaintext:focus,\n.form-floating > .form-control-plaintext:not(:placeholder-shown) {\n padding-top: 1.625rem;\n padding-bottom: 0.625rem;\n}\n.form-floating > .form-control:-webkit-autofill,\n.form-floating > .form-control-plaintext:-webkit-autofill {\n padding-top: 1.625rem;\n padding-bottom: 0.625rem;\n}\n.form-floating > .form-select {\n padding-top: 1.625rem;\n padding-bottom: 0.625rem;\n padding-left: 0.75rem;\n}\n.form-floating > .form-control:focus ~ label,\n.form-floating > .form-control:not(:placeholder-shown) ~ label,\n.form-floating > .form-control-plaintext ~ label,\n.form-floating > .form-select ~ label {\n transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);\n}\n.form-floating > .form-control:-webkit-autofill ~ label {\n transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);\n}\n.form-floating > textarea:focus ~ label::after,\n.form-floating > textarea:not(:placeholder-shown) ~ label::after {\n position: absolute;\n inset: 1rem 0.375rem;\n z-index: -1;\n height: 1.5em;\n content: \"\";\n background-color: var(--bs-body-bg);\n border-radius: var(--bs-border-radius);\n}\n.form-floating > textarea:disabled ~ label::after {\n background-color: var(--bs-secondary-bg);\n}\n.form-floating > .form-control-plaintext ~ label {\n border-width: var(--bs-border-width) 0;\n}\n.form-floating > :disabled ~ label,\n.form-floating > .form-control:disabled ~ label {\n color: #6c757d;\n}\n\n.input-group {\n position: relative;\n display: flex;\n flex-wrap: wrap;\n align-items: stretch;\n width: 100%;\n}\n.input-group > .form-control,\n.input-group > .form-select,\n.input-group > .form-floating {\n position: relative;\n flex: 1 1 auto;\n width: 1%;\n min-width: 0;\n}\n.input-group > .form-control:focus,\n.input-group > .form-select:focus,\n.input-group > .form-floating:focus-within {\n z-index: 5;\n}\n.input-group .btn {\n position: relative;\n z-index: 2;\n}\n.input-group .btn:focus {\n z-index: 5;\n}\n\n.input-group-text {\n display: flex;\n align-items: center;\n padding: 0.375rem 0.75rem;\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5;\n color: var(--bs-body-color);\n text-align: center;\n white-space: nowrap;\n background-color: var(--bs-tertiary-bg);\n border: var(--bs-border-width) solid var(--bs-border-color);\n border-radius: var(--bs-border-radius);\n}\n\n.input-group-lg > .form-control,\n.input-group-lg > .form-select,\n.input-group-lg > .input-group-text,\n.input-group-lg > .btn {\n padding: 0.5rem 1rem;\n font-size: 1.25rem;\n border-radius: var(--bs-border-radius-lg);\n}\n\n.input-group-sm > .form-control,\n.input-group-sm > .form-select,\n.input-group-sm > .input-group-text,\n.input-group-sm > .btn {\n padding: 0.25rem 0.5rem;\n font-size: 0.875rem;\n border-radius: var(--bs-border-radius-sm);\n}\n\n.input-group-lg > .form-select,\n.input-group-sm > .form-select {\n padding-right: 3rem;\n}\n\n.input-group:not(.has-validation) > :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),\n.input-group:not(.has-validation) > .dropdown-toggle:nth-last-child(n+3),\n.input-group:not(.has-validation) > .form-floating:not(:last-child) > .form-control,\n.input-group:not(.has-validation) > .form-floating:not(:last-child) > .form-select {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.input-group.has-validation > :nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),\n.input-group.has-validation > .dropdown-toggle:nth-last-child(n+4),\n.input-group.has-validation > .form-floating:nth-last-child(n+3) > .form-control,\n.input-group.has-validation > .form-floating:nth-last-child(n+3) > .form-select {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.input-group > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {\n margin-left: calc(-1 * var(--bs-border-width));\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.input-group > .form-floating:not(:first-child) > .form-control,\n.input-group > .form-floating:not(:first-child) > .form-select {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.valid-feedback {\n display: none;\n width: 100%;\n margin-top: 0.25rem;\n font-size: 0.875em;\n color: var(--bs-form-valid-color);\n}\n\n.valid-tooltip {\n position: absolute;\n top: 100%;\n z-index: 5;\n display: none;\n max-width: 100%;\n padding: 0.25rem 0.5rem;\n margin-top: 0.1rem;\n font-size: 0.875rem;\n color: #fff;\n background-color: var(--bs-success);\n border-radius: var(--bs-border-radius);\n}\n\n.was-validated :valid ~ .valid-feedback,\n.was-validated :valid ~ .valid-tooltip,\n.is-valid ~ .valid-feedback,\n.is-valid ~ .valid-tooltip {\n display: block;\n}\n\n.was-validated .form-control:valid, .form-control.is-valid {\n border-color: var(--bs-form-valid-border-color);\n padding-right: calc(1.5em + 0.75rem);\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1'/%3e%3c/svg%3e\");\n background-repeat: no-repeat;\n background-position: right calc(0.375em + 0.1875rem) center;\n background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\n}\n.was-validated .form-control:valid:focus, .form-control.is-valid:focus {\n border-color: var(--bs-form-valid-border-color);\n box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);\n}\n\n.was-validated textarea.form-control:valid, textarea.form-control.is-valid {\n padding-right: calc(1.5em + 0.75rem);\n background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);\n}\n\n.was-validated .form-select:valid, .form-select.is-valid {\n border-color: var(--bs-form-valid-border-color);\n}\n.was-validated .form-select:valid:not([multiple]):not([size]), .was-validated .form-select:valid:not([multiple])[size=\"1\"], .form-select.is-valid:not([multiple]):not([size]), .form-select.is-valid:not([multiple])[size=\"1\"] {\n --bs-form-select-bg-icon: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1'/%3e%3c/svg%3e\");\n padding-right: 4.125rem;\n background-position: right 0.75rem center, center right 2.25rem;\n background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\n}\n.was-validated .form-select:valid:focus, .form-select.is-valid:focus {\n border-color: var(--bs-form-valid-border-color);\n box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);\n}\n\n.was-validated .form-control-color:valid, .form-control-color.is-valid {\n width: calc(3rem + calc(1.5em + 0.75rem));\n}\n\n.was-validated .form-check-input:valid, .form-check-input.is-valid {\n border-color: var(--bs-form-valid-border-color);\n}\n.was-validated .form-check-input:valid:checked, .form-check-input.is-valid:checked {\n background-color: var(--bs-form-valid-color);\n}\n.was-validated .form-check-input:valid:focus, .form-check-input.is-valid:focus {\n box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);\n}\n.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {\n color: var(--bs-form-valid-color);\n}\n\n.form-check-inline .form-check-input ~ .valid-feedback {\n margin-left: 0.5em;\n}\n\n.was-validated .input-group > .form-control:not(:focus):valid, .input-group > .form-control:not(:focus).is-valid,\n.was-validated .input-group > .form-select:not(:focus):valid,\n.input-group > .form-select:not(:focus).is-valid,\n.was-validated .input-group > .form-floating:not(:focus-within):valid,\n.input-group > .form-floating:not(:focus-within).is-valid {\n z-index: 3;\n}\n\n.invalid-feedback {\n display: none;\n width: 100%;\n margin-top: 0.25rem;\n font-size: 0.875em;\n color: var(--bs-form-invalid-color);\n}\n\n.invalid-tooltip {\n position: absolute;\n top: 100%;\n z-index: 5;\n display: none;\n max-width: 100%;\n padding: 0.25rem 0.5rem;\n margin-top: 0.1rem;\n font-size: 0.875rem;\n color: #fff;\n background-color: var(--bs-danger);\n border-radius: var(--bs-border-radius);\n}\n\n.was-validated :invalid ~ .invalid-feedback,\n.was-validated :invalid ~ .invalid-tooltip,\n.is-invalid ~ .invalid-feedback,\n.is-invalid ~ .invalid-tooltip {\n display: block;\n}\n\n.was-validated .form-control:invalid, .form-control.is-invalid {\n border-color: var(--bs-form-invalid-border-color);\n padding-right: calc(1.5em + 0.75rem);\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e\");\n background-repeat: no-repeat;\n background-position: right calc(0.375em + 0.1875rem) center;\n background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\n}\n.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {\n border-color: var(--bs-form-invalid-border-color);\n box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);\n}\n\n.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {\n padding-right: calc(1.5em + 0.75rem);\n background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);\n}\n\n.was-validated .form-select:invalid, .form-select.is-invalid {\n border-color: var(--bs-form-invalid-border-color);\n}\n.was-validated .form-select:invalid:not([multiple]):not([size]), .was-validated .form-select:invalid:not([multiple])[size=\"1\"], .form-select.is-invalid:not([multiple]):not([size]), .form-select.is-invalid:not([multiple])[size=\"1\"] {\n --bs-form-select-bg-icon: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e\");\n padding-right: 4.125rem;\n background-position: right 0.75rem center, center right 2.25rem;\n background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\n}\n.was-validated .form-select:invalid:focus, .form-select.is-invalid:focus {\n border-color: var(--bs-form-invalid-border-color);\n box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);\n}\n\n.was-validated .form-control-color:invalid, .form-control-color.is-invalid {\n width: calc(3rem + calc(1.5em + 0.75rem));\n}\n\n.was-validated .form-check-input:invalid, .form-check-input.is-invalid {\n border-color: var(--bs-form-invalid-border-color);\n}\n.was-validated .form-check-input:invalid:checked, .form-check-input.is-invalid:checked {\n background-color: var(--bs-form-invalid-color);\n}\n.was-validated .form-check-input:invalid:focus, .form-check-input.is-invalid:focus {\n box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);\n}\n.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {\n color: var(--bs-form-invalid-color);\n}\n\n.form-check-inline .form-check-input ~ .invalid-feedback {\n margin-left: 0.5em;\n}\n\n.was-validated .input-group > .form-control:not(:focus):invalid, .input-group > .form-control:not(:focus).is-invalid,\n.was-validated .input-group > .form-select:not(:focus):invalid,\n.input-group > .form-select:not(:focus).is-invalid,\n.was-validated .input-group > .form-floating:not(:focus-within):invalid,\n.input-group > .form-floating:not(:focus-within).is-invalid {\n z-index: 4;\n}\n\n.btn {\n --bs-btn-padding-x: 0.75rem;\n --bs-btn-padding-y: 0.375rem;\n --bs-btn-font-family: ;\n --bs-btn-font-size: 1rem;\n --bs-btn-font-weight: 400;\n --bs-btn-line-height: 1.5;\n --bs-btn-color: var(--bs-body-color);\n --bs-btn-bg: transparent;\n --bs-btn-border-width: var(--bs-border-width);\n --bs-btn-border-color: transparent;\n --bs-btn-border-radius: var(--bs-border-radius);\n --bs-btn-hover-border-color: transparent;\n --bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);\n --bs-btn-disabled-opacity: 0.65;\n --bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);\n display: inline-block;\n padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);\n font-family: var(--bs-btn-font-family);\n font-size: var(--bs-btn-font-size);\n font-weight: var(--bs-btn-font-weight);\n line-height: var(--bs-btn-line-height);\n color: var(--bs-btn-color);\n text-align: center;\n text-decoration: none;\n vertical-align: middle;\n cursor: pointer;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);\n border-radius: var(--bs-btn-border-radius);\n background-color: var(--bs-btn-bg);\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .btn {\n transition: none;\n }\n}\n.btn:hover {\n color: var(--bs-btn-hover-color);\n background-color: var(--bs-btn-hover-bg);\n border-color: var(--bs-btn-hover-border-color);\n}\n.btn-check + .btn:hover {\n color: var(--bs-btn-color);\n background-color: var(--bs-btn-bg);\n border-color: var(--bs-btn-border-color);\n}\n.btn:focus-visible {\n color: var(--bs-btn-hover-color);\n background-color: var(--bs-btn-hover-bg);\n border-color: var(--bs-btn-hover-border-color);\n outline: 0;\n box-shadow: var(--bs-btn-focus-box-shadow);\n}\n.btn-check:focus-visible + .btn {\n border-color: var(--bs-btn-hover-border-color);\n outline: 0;\n box-shadow: var(--bs-btn-focus-box-shadow);\n}\n.btn-check:checked + .btn, :not(.btn-check) + .btn:active, .btn:first-child:active, .btn.active, .btn.show {\n color: var(--bs-btn-active-color);\n background-color: var(--bs-btn-active-bg);\n border-color: var(--bs-btn-active-border-color);\n}\n.btn-check:checked + .btn:focus-visible, :not(.btn-check) + .btn:active:focus-visible, .btn:first-child:active:focus-visible, .btn.active:focus-visible, .btn.show:focus-visible {\n box-shadow: var(--bs-btn-focus-box-shadow);\n}\n.btn-check:checked:focus-visible + .btn {\n box-shadow: var(--bs-btn-focus-box-shadow);\n}\n.btn:disabled, .btn.disabled, fieldset:disabled .btn {\n color: var(--bs-btn-disabled-color);\n pointer-events: none;\n background-color: var(--bs-btn-disabled-bg);\n border-color: var(--bs-btn-disabled-border-color);\n opacity: var(--bs-btn-disabled-opacity);\n}\n\n.btn-primary {\n --bs-btn-color: #fff;\n --bs-btn-bg: #0d6efd;\n --bs-btn-border-color: #0d6efd;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #0b5ed7;\n --bs-btn-hover-border-color: #0a58ca;\n --bs-btn-focus-shadow-rgb: 49, 132, 253;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #0a58ca;\n --bs-btn-active-border-color: #0a53be;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #fff;\n --bs-btn-disabled-bg: #0d6efd;\n --bs-btn-disabled-border-color: #0d6efd;\n}\n\n.btn-secondary {\n --bs-btn-color: #fff;\n --bs-btn-bg: #6c757d;\n --bs-btn-border-color: #6c757d;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #5c636a;\n --bs-btn-hover-border-color: #565e64;\n --bs-btn-focus-shadow-rgb: 130, 138, 145;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #565e64;\n --bs-btn-active-border-color: #51585e;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #fff;\n --bs-btn-disabled-bg: #6c757d;\n --bs-btn-disabled-border-color: #6c757d;\n}\n\n.btn-success {\n --bs-btn-color: #fff;\n --bs-btn-bg: #198754;\n --bs-btn-border-color: #198754;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #157347;\n --bs-btn-hover-border-color: #146c43;\n --bs-btn-focus-shadow-rgb: 60, 153, 110;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #146c43;\n --bs-btn-active-border-color: #13653f;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #fff;\n --bs-btn-disabled-bg: #198754;\n --bs-btn-disabled-border-color: #198754;\n}\n\n.btn-info {\n --bs-btn-color: #000;\n --bs-btn-bg: #0dcaf0;\n --bs-btn-border-color: #0dcaf0;\n --bs-btn-hover-color: #000;\n --bs-btn-hover-bg: #31d2f2;\n --bs-btn-hover-border-color: #25cff2;\n --bs-btn-focus-shadow-rgb: 11, 172, 204;\n --bs-btn-active-color: #000;\n --bs-btn-active-bg: #3dd5f3;\n --bs-btn-active-border-color: #25cff2;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #000;\n --bs-btn-disabled-bg: #0dcaf0;\n --bs-btn-disabled-border-color: #0dcaf0;\n}\n\n.btn-warning {\n --bs-btn-color: #000;\n --bs-btn-bg: #ffc107;\n --bs-btn-border-color: #ffc107;\n --bs-btn-hover-color: #000;\n --bs-btn-hover-bg: #ffca2c;\n --bs-btn-hover-border-color: #ffc720;\n --bs-btn-focus-shadow-rgb: 217, 164, 6;\n --bs-btn-active-color: #000;\n --bs-btn-active-bg: #ffcd39;\n --bs-btn-active-border-color: #ffc720;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #000;\n --bs-btn-disabled-bg: #ffc107;\n --bs-btn-disabled-border-color: #ffc107;\n}\n\n.btn-danger {\n --bs-btn-color: #fff;\n --bs-btn-bg: #dc3545;\n --bs-btn-border-color: #dc3545;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #bb2d3b;\n --bs-btn-hover-border-color: #b02a37;\n --bs-btn-focus-shadow-rgb: 225, 83, 97;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #b02a37;\n --bs-btn-active-border-color: #a52834;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #fff;\n --bs-btn-disabled-bg: #dc3545;\n --bs-btn-disabled-border-color: #dc3545;\n}\n\n.btn-light {\n --bs-btn-color: #000;\n --bs-btn-bg: #f8f9fa;\n --bs-btn-border-color: #f8f9fa;\n --bs-btn-hover-color: #000;\n --bs-btn-hover-bg: #d3d4d5;\n --bs-btn-hover-border-color: #c6c7c8;\n --bs-btn-focus-shadow-rgb: 211, 212, 213;\n --bs-btn-active-color: #000;\n --bs-btn-active-bg: #c6c7c8;\n --bs-btn-active-border-color: #babbbc;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #000;\n --bs-btn-disabled-bg: #f8f9fa;\n --bs-btn-disabled-border-color: #f8f9fa;\n}\n\n.btn-dark {\n --bs-btn-color: #fff;\n --bs-btn-bg: #212529;\n --bs-btn-border-color: #212529;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #424649;\n --bs-btn-hover-border-color: #373b3e;\n --bs-btn-focus-shadow-rgb: 66, 70, 73;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #4d5154;\n --bs-btn-active-border-color: #373b3e;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #fff;\n --bs-btn-disabled-bg: #212529;\n --bs-btn-disabled-border-color: #212529;\n}\n\n.btn-outline-primary {\n --bs-btn-color: #0d6efd;\n --bs-btn-border-color: #0d6efd;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #0d6efd;\n --bs-btn-hover-border-color: #0d6efd;\n --bs-btn-focus-shadow-rgb: 13, 110, 253;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #0d6efd;\n --bs-btn-active-border-color: #0d6efd;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #0d6efd;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #0d6efd;\n --bs-gradient: none;\n}\n\n.btn-outline-secondary {\n --bs-btn-color: #6c757d;\n --bs-btn-border-color: #6c757d;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #6c757d;\n --bs-btn-hover-border-color: #6c757d;\n --bs-btn-focus-shadow-rgb: 108, 117, 125;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #6c757d;\n --bs-btn-active-border-color: #6c757d;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #6c757d;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #6c757d;\n --bs-gradient: none;\n}\n\n.btn-outline-success {\n --bs-btn-color: #198754;\n --bs-btn-border-color: #198754;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #198754;\n --bs-btn-hover-border-color: #198754;\n --bs-btn-focus-shadow-rgb: 25, 135, 84;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #198754;\n --bs-btn-active-border-color: #198754;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #198754;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #198754;\n --bs-gradient: none;\n}\n\n.btn-outline-info {\n --bs-btn-color: #0dcaf0;\n --bs-btn-border-color: #0dcaf0;\n --bs-btn-hover-color: #000;\n --bs-btn-hover-bg: #0dcaf0;\n --bs-btn-hover-border-color: #0dcaf0;\n --bs-btn-focus-shadow-rgb: 13, 202, 240;\n --bs-btn-active-color: #000;\n --bs-btn-active-bg: #0dcaf0;\n --bs-btn-active-border-color: #0dcaf0;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #0dcaf0;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #0dcaf0;\n --bs-gradient: none;\n}\n\n.btn-outline-warning {\n --bs-btn-color: #ffc107;\n --bs-btn-border-color: #ffc107;\n --bs-btn-hover-color: #000;\n --bs-btn-hover-bg: #ffc107;\n --bs-btn-hover-border-color: #ffc107;\n --bs-btn-focus-shadow-rgb: 255, 193, 7;\n --bs-btn-active-color: #000;\n --bs-btn-active-bg: #ffc107;\n --bs-btn-active-border-color: #ffc107;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #ffc107;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #ffc107;\n --bs-gradient: none;\n}\n\n.btn-outline-danger {\n --bs-btn-color: #dc3545;\n --bs-btn-border-color: #dc3545;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #dc3545;\n --bs-btn-hover-border-color: #dc3545;\n --bs-btn-focus-shadow-rgb: 220, 53, 69;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #dc3545;\n --bs-btn-active-border-color: #dc3545;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #dc3545;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #dc3545;\n --bs-gradient: none;\n}\n\n.btn-outline-light {\n --bs-btn-color: #f8f9fa;\n --bs-btn-border-color: #f8f9fa;\n --bs-btn-hover-color: #000;\n --bs-btn-hover-bg: #f8f9fa;\n --bs-btn-hover-border-color: #f8f9fa;\n --bs-btn-focus-shadow-rgb: 248, 249, 250;\n --bs-btn-active-color: #000;\n --bs-btn-active-bg: #f8f9fa;\n --bs-btn-active-border-color: #f8f9fa;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #f8f9fa;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #f8f9fa;\n --bs-gradient: none;\n}\n\n.btn-outline-dark {\n --bs-btn-color: #212529;\n --bs-btn-border-color: #212529;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #212529;\n --bs-btn-hover-border-color: #212529;\n --bs-btn-focus-shadow-rgb: 33, 37, 41;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #212529;\n --bs-btn-active-border-color: #212529;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #212529;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #212529;\n --bs-gradient: none;\n}\n\n.btn-link {\n --bs-btn-font-weight: 400;\n --bs-btn-color: var(--bs-link-color);\n --bs-btn-bg: transparent;\n --bs-btn-border-color: transparent;\n --bs-btn-hover-color: var(--bs-link-hover-color);\n --bs-btn-hover-border-color: transparent;\n --bs-btn-active-color: var(--bs-link-hover-color);\n --bs-btn-active-border-color: transparent;\n --bs-btn-disabled-color: #6c757d;\n --bs-btn-disabled-border-color: transparent;\n --bs-btn-box-shadow: 0 0 0 #000;\n --bs-btn-focus-shadow-rgb: 49, 132, 253;\n text-decoration: underline;\n}\n.btn-link:focus-visible {\n color: var(--bs-btn-color);\n}\n.btn-link:hover {\n color: var(--bs-btn-hover-color);\n}\n\n.btn-lg, .btn-group-lg > .btn {\n --bs-btn-padding-y: 0.5rem;\n --bs-btn-padding-x: 1rem;\n --bs-btn-font-size: 1.25rem;\n --bs-btn-border-radius: var(--bs-border-radius-lg);\n}\n\n.btn-sm, .btn-group-sm > .btn {\n --bs-btn-padding-y: 0.25rem;\n --bs-btn-padding-x: 0.5rem;\n --bs-btn-font-size: 0.875rem;\n --bs-btn-border-radius: var(--bs-border-radius-sm);\n}\n\n.fade {\n transition: opacity 0.15s linear;\n}\n@media (prefers-reduced-motion: reduce) {\n .fade {\n transition: none;\n }\n}\n.fade:not(.show) {\n opacity: 0;\n}\n\n.collapse:not(.show) {\n display: none;\n}\n\n.collapsing {\n height: 0;\n overflow: hidden;\n transition: height 0.35s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .collapsing {\n transition: none;\n }\n}\n.collapsing.collapse-horizontal {\n width: 0;\n height: auto;\n transition: width 0.35s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .collapsing.collapse-horizontal {\n transition: none;\n }\n}\n\n.dropup,\n.dropend,\n.dropdown,\n.dropstart,\n.dropup-center,\n.dropdown-center {\n position: relative;\n}\n\n.dropdown-toggle {\n white-space: nowrap;\n}\n.dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0.3em solid;\n border-right: 0.3em solid transparent;\n border-bottom: 0;\n border-left: 0.3em solid transparent;\n}\n.dropdown-toggle:empty::after {\n margin-left: 0;\n}\n\n.dropdown-menu {\n --bs-dropdown-zindex: 1000;\n --bs-dropdown-min-width: 10rem;\n --bs-dropdown-padding-x: 0;\n --bs-dropdown-padding-y: 0.5rem;\n --bs-dropdown-spacer: 0.125rem;\n --bs-dropdown-font-size: 1rem;\n --bs-dropdown-color: var(--bs-body-color);\n --bs-dropdown-bg: var(--bs-body-bg);\n --bs-dropdown-border-color: var(--bs-border-color-translucent);\n --bs-dropdown-border-radius: var(--bs-border-radius);\n --bs-dropdown-border-width: var(--bs-border-width);\n --bs-dropdown-inner-border-radius: calc(var(--bs-border-radius) - var(--bs-border-width));\n --bs-dropdown-divider-bg: var(--bs-border-color-translucent);\n --bs-dropdown-divider-margin-y: 0.5rem;\n --bs-dropdown-box-shadow: var(--bs-box-shadow);\n --bs-dropdown-link-color: var(--bs-body-color);\n --bs-dropdown-link-hover-color: var(--bs-body-color);\n --bs-dropdown-link-hover-bg: var(--bs-tertiary-bg);\n --bs-dropdown-link-active-color: #fff;\n --bs-dropdown-link-active-bg: #0d6efd;\n --bs-dropdown-link-disabled-color: var(--bs-tertiary-color);\n --bs-dropdown-item-padding-x: 1rem;\n --bs-dropdown-item-padding-y: 0.25rem;\n --bs-dropdown-header-color: #6c757d;\n --bs-dropdown-header-padding-x: 1rem;\n --bs-dropdown-header-padding-y: 0.5rem;\n position: absolute;\n z-index: var(--bs-dropdown-zindex);\n display: none;\n min-width: var(--bs-dropdown-min-width);\n padding: var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);\n margin: 0;\n font-size: var(--bs-dropdown-font-size);\n color: var(--bs-dropdown-color);\n text-align: left;\n list-style: none;\n background-color: var(--bs-dropdown-bg);\n background-clip: padding-box;\n border: var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);\n border-radius: var(--bs-dropdown-border-radius);\n}\n.dropdown-menu[data-bs-popper] {\n top: 100%;\n left: 0;\n margin-top: var(--bs-dropdown-spacer);\n}\n\n.dropdown-menu-start {\n --bs-position: start;\n}\n.dropdown-menu-start[data-bs-popper] {\n right: auto;\n left: 0;\n}\n\n.dropdown-menu-end {\n --bs-position: end;\n}\n.dropdown-menu-end[data-bs-popper] {\n right: 0;\n left: auto;\n}\n\n@media (min-width: 576px) {\n .dropdown-menu-sm-start {\n --bs-position: start;\n }\n .dropdown-menu-sm-start[data-bs-popper] {\n right: auto;\n left: 0;\n }\n .dropdown-menu-sm-end {\n --bs-position: end;\n }\n .dropdown-menu-sm-end[data-bs-popper] {\n right: 0;\n left: auto;\n }\n}\n@media (min-width: 768px) {\n .dropdown-menu-md-start {\n --bs-position: start;\n }\n .dropdown-menu-md-start[data-bs-popper] {\n right: auto;\n left: 0;\n }\n .dropdown-menu-md-end {\n --bs-position: end;\n }\n .dropdown-menu-md-end[data-bs-popper] {\n right: 0;\n left: auto;\n }\n}\n@media (min-width: 992px) {\n .dropdown-menu-lg-start {\n --bs-position: start;\n }\n .dropdown-menu-lg-start[data-bs-popper] {\n right: auto;\n left: 0;\n }\n .dropdown-menu-lg-end {\n --bs-position: end;\n }\n .dropdown-menu-lg-end[data-bs-popper] {\n right: 0;\n left: auto;\n }\n}\n@media (min-width: 1200px) {\n .dropdown-menu-xl-start {\n --bs-position: start;\n }\n .dropdown-menu-xl-start[data-bs-popper] {\n right: auto;\n left: 0;\n }\n .dropdown-menu-xl-end {\n --bs-position: end;\n }\n .dropdown-menu-xl-end[data-bs-popper] {\n right: 0;\n left: auto;\n }\n}\n@media (min-width: 1400px) {\n .dropdown-menu-xxl-start {\n --bs-position: start;\n }\n .dropdown-menu-xxl-start[data-bs-popper] {\n right: auto;\n left: 0;\n }\n .dropdown-menu-xxl-end {\n --bs-position: end;\n }\n .dropdown-menu-xxl-end[data-bs-popper] {\n right: 0;\n left: auto;\n }\n}\n.dropup .dropdown-menu[data-bs-popper] {\n top: auto;\n bottom: 100%;\n margin-top: 0;\n margin-bottom: var(--bs-dropdown-spacer);\n}\n.dropup .dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0;\n border-right: 0.3em solid transparent;\n border-bottom: 0.3em solid;\n border-left: 0.3em solid transparent;\n}\n.dropup .dropdown-toggle:empty::after {\n margin-left: 0;\n}\n\n.dropend .dropdown-menu[data-bs-popper] {\n top: 0;\n right: auto;\n left: 100%;\n margin-top: 0;\n margin-left: var(--bs-dropdown-spacer);\n}\n.dropend .dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0.3em solid transparent;\n border-right: 0;\n border-bottom: 0.3em solid transparent;\n border-left: 0.3em solid;\n}\n.dropend .dropdown-toggle:empty::after {\n margin-left: 0;\n}\n.dropend .dropdown-toggle::after {\n vertical-align: 0;\n}\n\n.dropstart .dropdown-menu[data-bs-popper] {\n top: 0;\n right: 100%;\n left: auto;\n margin-top: 0;\n margin-right: var(--bs-dropdown-spacer);\n}\n.dropstart .dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n}\n.dropstart .dropdown-toggle::after {\n display: none;\n}\n.dropstart .dropdown-toggle::before {\n display: inline-block;\n margin-right: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0.3em solid transparent;\n border-right: 0.3em solid;\n border-bottom: 0.3em solid transparent;\n}\n.dropstart .dropdown-toggle:empty::after {\n margin-left: 0;\n}\n.dropstart .dropdown-toggle::before {\n vertical-align: 0;\n}\n\n.dropdown-divider {\n height: 0;\n margin: var(--bs-dropdown-divider-margin-y) 0;\n overflow: hidden;\n border-top: 1px solid var(--bs-dropdown-divider-bg);\n opacity: 1;\n}\n\n.dropdown-item {\n display: block;\n width: 100%;\n padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);\n clear: both;\n font-weight: 400;\n color: var(--bs-dropdown-link-color);\n text-align: inherit;\n text-decoration: none;\n white-space: nowrap;\n background-color: transparent;\n border: 0;\n border-radius: var(--bs-dropdown-item-border-radius, 0);\n}\n.dropdown-item:hover, .dropdown-item:focus {\n color: var(--bs-dropdown-link-hover-color);\n background-color: var(--bs-dropdown-link-hover-bg);\n}\n.dropdown-item.active, .dropdown-item:active {\n color: var(--bs-dropdown-link-active-color);\n text-decoration: none;\n background-color: var(--bs-dropdown-link-active-bg);\n}\n.dropdown-item.disabled, .dropdown-item:disabled {\n color: var(--bs-dropdown-link-disabled-color);\n pointer-events: none;\n background-color: transparent;\n}\n\n.dropdown-menu.show {\n display: block;\n}\n\n.dropdown-header {\n display: block;\n padding: var(--bs-dropdown-header-padding-y) var(--bs-dropdown-header-padding-x);\n margin-bottom: 0;\n font-size: 0.875rem;\n color: var(--bs-dropdown-header-color);\n white-space: nowrap;\n}\n\n.dropdown-item-text {\n display: block;\n padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);\n color: var(--bs-dropdown-link-color);\n}\n\n.dropdown-menu-dark {\n --bs-dropdown-color: #dee2e6;\n --bs-dropdown-bg: #343a40;\n --bs-dropdown-border-color: var(--bs-border-color-translucent);\n --bs-dropdown-box-shadow: ;\n --bs-dropdown-link-color: #dee2e6;\n --bs-dropdown-link-hover-color: #fff;\n --bs-dropdown-divider-bg: var(--bs-border-color-translucent);\n --bs-dropdown-link-hover-bg: rgba(255, 255, 255, 0.15);\n --bs-dropdown-link-active-color: #fff;\n --bs-dropdown-link-active-bg: #0d6efd;\n --bs-dropdown-link-disabled-color: #adb5bd;\n --bs-dropdown-header-color: #adb5bd;\n}\n\n.btn-group,\n.btn-group-vertical {\n position: relative;\n display: inline-flex;\n vertical-align: middle;\n}\n.btn-group > .btn,\n.btn-group-vertical > .btn {\n position: relative;\n flex: 1 1 auto;\n}\n.btn-group > .btn-check:checked + .btn,\n.btn-group > .btn-check:focus + .btn,\n.btn-group > .btn:hover,\n.btn-group > .btn:focus,\n.btn-group > .btn:active,\n.btn-group > .btn.active,\n.btn-group-vertical > .btn-check:checked + .btn,\n.btn-group-vertical > .btn-check:focus + .btn,\n.btn-group-vertical > .btn:hover,\n.btn-group-vertical > .btn:focus,\n.btn-group-vertical > .btn:active,\n.btn-group-vertical > .btn.active {\n z-index: 1;\n}\n\n.btn-toolbar {\n display: flex;\n flex-wrap: wrap;\n justify-content: flex-start;\n}\n.btn-toolbar .input-group {\n width: auto;\n}\n\n.btn-group {\n border-radius: var(--bs-border-radius);\n}\n.btn-group > :not(.btn-check:first-child) + .btn,\n.btn-group > .btn-group:not(:first-child) {\n margin-left: calc(-1 * var(--bs-border-width));\n}\n.btn-group > .btn:not(:last-child):not(.dropdown-toggle),\n.btn-group > .btn.dropdown-toggle-split:first-child,\n.btn-group > .btn-group:not(:last-child) > .btn {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.btn-group > .btn:nth-child(n+3),\n.btn-group > :not(.btn-check) + .btn,\n.btn-group > .btn-group:not(:first-child) > .btn {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.dropdown-toggle-split {\n padding-right: 0.5625rem;\n padding-left: 0.5625rem;\n}\n.dropdown-toggle-split::after, .dropup .dropdown-toggle-split::after, .dropend .dropdown-toggle-split::after {\n margin-left: 0;\n}\n.dropstart .dropdown-toggle-split::before {\n margin-right: 0;\n}\n\n.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split {\n padding-right: 0.375rem;\n padding-left: 0.375rem;\n}\n\n.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split {\n padding-right: 0.75rem;\n padding-left: 0.75rem;\n}\n\n.btn-group-vertical {\n flex-direction: column;\n align-items: flex-start;\n justify-content: center;\n}\n.btn-group-vertical > .btn,\n.btn-group-vertical > .btn-group {\n width: 100%;\n}\n.btn-group-vertical > .btn:not(:first-child),\n.btn-group-vertical > .btn-group:not(:first-child) {\n margin-top: calc(-1 * var(--bs-border-width));\n}\n.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),\n.btn-group-vertical > .btn-group:not(:last-child) > .btn {\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group-vertical > .btn:nth-child(n+3),\n.btn-group-vertical > :not(.btn-check) + .btn,\n.btn-group-vertical > .btn-group:not(:first-child) > .btn {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n\n.nav {\n --bs-nav-link-padding-x: 1rem;\n --bs-nav-link-padding-y: 0.5rem;\n --bs-nav-link-font-weight: ;\n --bs-nav-link-color: var(--bs-link-color);\n --bs-nav-link-hover-color: var(--bs-link-hover-color);\n --bs-nav-link-disabled-color: var(--bs-secondary-color);\n display: flex;\n flex-wrap: wrap;\n padding-left: 0;\n margin-bottom: 0;\n list-style: none;\n}\n\n.nav-link {\n display: block;\n padding: var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);\n font-size: var(--bs-nav-link-font-size);\n font-weight: var(--bs-nav-link-font-weight);\n color: var(--bs-nav-link-color);\n text-decoration: none;\n background: none;\n border: 0;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .nav-link {\n transition: none;\n }\n}\n.nav-link:hover, .nav-link:focus {\n color: var(--bs-nav-link-hover-color);\n}\n.nav-link:focus-visible {\n outline: 0;\n box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n}\n.nav-link.disabled, .nav-link:disabled {\n color: var(--bs-nav-link-disabled-color);\n pointer-events: none;\n cursor: default;\n}\n\n.nav-tabs {\n --bs-nav-tabs-border-width: var(--bs-border-width);\n --bs-nav-tabs-border-color: var(--bs-border-color);\n --bs-nav-tabs-border-radius: var(--bs-border-radius);\n --bs-nav-tabs-link-hover-border-color: var(--bs-secondary-bg) var(--bs-secondary-bg) var(--bs-border-color);\n --bs-nav-tabs-link-active-color: var(--bs-emphasis-color);\n --bs-nav-tabs-link-active-bg: var(--bs-body-bg);\n --bs-nav-tabs-link-active-border-color: var(--bs-border-color) var(--bs-border-color) var(--bs-body-bg);\n border-bottom: var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color);\n}\n.nav-tabs .nav-link {\n margin-bottom: calc(-1 * var(--bs-nav-tabs-border-width));\n border: var(--bs-nav-tabs-border-width) solid transparent;\n border-top-left-radius: var(--bs-nav-tabs-border-radius);\n border-top-right-radius: var(--bs-nav-tabs-border-radius);\n}\n.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {\n isolation: isolate;\n border-color: var(--bs-nav-tabs-link-hover-border-color);\n}\n.nav-tabs .nav-link.active,\n.nav-tabs .nav-item.show .nav-link {\n color: var(--bs-nav-tabs-link-active-color);\n background-color: var(--bs-nav-tabs-link-active-bg);\n border-color: var(--bs-nav-tabs-link-active-border-color);\n}\n.nav-tabs .dropdown-menu {\n margin-top: calc(-1 * var(--bs-nav-tabs-border-width));\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n\n.nav-pills {\n --bs-nav-pills-border-radius: var(--bs-border-radius);\n --bs-nav-pills-link-active-color: #fff;\n --bs-nav-pills-link-active-bg: #0d6efd;\n}\n.nav-pills .nav-link {\n border-radius: var(--bs-nav-pills-border-radius);\n}\n.nav-pills .nav-link.active,\n.nav-pills .show > .nav-link {\n color: var(--bs-nav-pills-link-active-color);\n background-color: var(--bs-nav-pills-link-active-bg);\n}\n\n.nav-underline {\n --bs-nav-underline-gap: 1rem;\n --bs-nav-underline-border-width: 0.125rem;\n --bs-nav-underline-link-active-color: var(--bs-emphasis-color);\n gap: var(--bs-nav-underline-gap);\n}\n.nav-underline .nav-link {\n padding-right: 0;\n padding-left: 0;\n border-bottom: var(--bs-nav-underline-border-width) solid transparent;\n}\n.nav-underline .nav-link:hover, .nav-underline .nav-link:focus {\n border-bottom-color: currentcolor;\n}\n.nav-underline .nav-link.active,\n.nav-underline .show > .nav-link {\n font-weight: 700;\n color: var(--bs-nav-underline-link-active-color);\n border-bottom-color: currentcolor;\n}\n\n.nav-fill > .nav-link,\n.nav-fill .nav-item {\n flex: 1 1 auto;\n text-align: center;\n}\n\n.nav-justified > .nav-link,\n.nav-justified .nav-item {\n flex-grow: 1;\n flex-basis: 0;\n text-align: center;\n}\n\n.nav-fill .nav-item .nav-link,\n.nav-justified .nav-item .nav-link {\n width: 100%;\n}\n\n.tab-content > .tab-pane {\n display: none;\n}\n.tab-content > .active {\n display: block;\n}\n\n.navbar {\n --bs-navbar-padding-x: 0;\n --bs-navbar-padding-y: 0.5rem;\n --bs-navbar-color: rgba(var(--bs-emphasis-color-rgb), 0.65);\n --bs-navbar-hover-color: rgba(var(--bs-emphasis-color-rgb), 0.8);\n --bs-navbar-disabled-color: rgba(var(--bs-emphasis-color-rgb), 0.3);\n --bs-navbar-active-color: rgba(var(--bs-emphasis-color-rgb), 1);\n --bs-navbar-brand-padding-y: 0.3125rem;\n --bs-navbar-brand-margin-end: 1rem;\n --bs-navbar-brand-font-size: 1.25rem;\n --bs-navbar-brand-color: rgba(var(--bs-emphasis-color-rgb), 1);\n --bs-navbar-brand-hover-color: rgba(var(--bs-emphasis-color-rgb), 1);\n --bs-navbar-nav-link-padding-x: 0.5rem;\n --bs-navbar-toggler-padding-y: 0.25rem;\n --bs-navbar-toggler-padding-x: 0.75rem;\n --bs-navbar-toggler-font-size: 1.25rem;\n --bs-navbar-toggler-icon-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2833, 37, 41, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\");\n --bs-navbar-toggler-border-color: rgba(var(--bs-emphasis-color-rgb), 0.15);\n --bs-navbar-toggler-border-radius: var(--bs-border-radius);\n --bs-navbar-toggler-focus-width: 0.25rem;\n --bs-navbar-toggler-transition: box-shadow 0.15s ease-in-out;\n position: relative;\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: space-between;\n padding: var(--bs-navbar-padding-y) var(--bs-navbar-padding-x);\n}\n.navbar > .container,\n.navbar > .container-fluid,\n.navbar > .container-sm,\n.navbar > .container-md,\n.navbar > .container-lg,\n.navbar > .container-xl,\n.navbar > .container-xxl {\n display: flex;\n flex-wrap: inherit;\n align-items: center;\n justify-content: space-between;\n}\n.navbar-brand {\n padding-top: var(--bs-navbar-brand-padding-y);\n padding-bottom: var(--bs-navbar-brand-padding-y);\n margin-right: var(--bs-navbar-brand-margin-end);\n font-size: var(--bs-navbar-brand-font-size);\n color: var(--bs-navbar-brand-color);\n text-decoration: none;\n white-space: nowrap;\n}\n.navbar-brand:hover, .navbar-brand:focus {\n color: var(--bs-navbar-brand-hover-color);\n}\n\n.navbar-nav {\n --bs-nav-link-padding-x: 0;\n --bs-nav-link-padding-y: 0.5rem;\n --bs-nav-link-font-weight: ;\n --bs-nav-link-color: var(--bs-navbar-color);\n --bs-nav-link-hover-color: var(--bs-navbar-hover-color);\n --bs-nav-link-disabled-color: var(--bs-navbar-disabled-color);\n display: flex;\n flex-direction: column;\n padding-left: 0;\n margin-bottom: 0;\n list-style: none;\n}\n.navbar-nav .nav-link.active, .navbar-nav .nav-link.show {\n color: var(--bs-navbar-active-color);\n}\n.navbar-nav .dropdown-menu {\n position: static;\n}\n\n.navbar-text {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n color: var(--bs-navbar-color);\n}\n.navbar-text a,\n.navbar-text a:hover,\n.navbar-text a:focus {\n color: var(--bs-navbar-active-color);\n}\n\n.navbar-collapse {\n flex-grow: 1;\n flex-basis: 100%;\n align-items: center;\n}\n\n.navbar-toggler {\n padding: var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x);\n font-size: var(--bs-navbar-toggler-font-size);\n line-height: 1;\n color: var(--bs-navbar-color);\n background-color: transparent;\n border: var(--bs-border-width) solid var(--bs-navbar-toggler-border-color);\n border-radius: var(--bs-navbar-toggler-border-radius);\n transition: var(--bs-navbar-toggler-transition);\n}\n@media (prefers-reduced-motion: reduce) {\n .navbar-toggler {\n transition: none;\n }\n}\n.navbar-toggler:hover {\n text-decoration: none;\n}\n.navbar-toggler:focus {\n text-decoration: none;\n outline: 0;\n box-shadow: 0 0 0 var(--bs-navbar-toggler-focus-width);\n}\n\n.navbar-toggler-icon {\n display: inline-block;\n width: 1.5em;\n height: 1.5em;\n vertical-align: middle;\n background-image: var(--bs-navbar-toggler-icon-bg);\n background-repeat: no-repeat;\n background-position: center;\n background-size: 100%;\n}\n\n.navbar-nav-scroll {\n max-height: var(--bs-scroll-height, 75vh);\n overflow-y: auto;\n}\n\n@media (min-width: 576px) {\n .navbar-expand-sm {\n flex-wrap: nowrap;\n justify-content: flex-start;\n }\n .navbar-expand-sm .navbar-nav {\n flex-direction: row;\n }\n .navbar-expand-sm .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-sm .navbar-nav .nav-link {\n padding-right: var(--bs-navbar-nav-link-padding-x);\n padding-left: var(--bs-navbar-nav-link-padding-x);\n }\n .navbar-expand-sm .navbar-nav-scroll {\n overflow: visible;\n }\n .navbar-expand-sm .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n }\n .navbar-expand-sm .navbar-toggler {\n display: none;\n }\n .navbar-expand-sm .offcanvas {\n position: static;\n z-index: auto;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n transform: none !important;\n transition: none;\n }\n .navbar-expand-sm .offcanvas .offcanvas-header {\n display: none;\n }\n .navbar-expand-sm .offcanvas .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n@media (min-width: 768px) {\n .navbar-expand-md {\n flex-wrap: nowrap;\n justify-content: flex-start;\n }\n .navbar-expand-md .navbar-nav {\n flex-direction: row;\n }\n .navbar-expand-md .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-md .navbar-nav .nav-link {\n padding-right: var(--bs-navbar-nav-link-padding-x);\n padding-left: var(--bs-navbar-nav-link-padding-x);\n }\n .navbar-expand-md .navbar-nav-scroll {\n overflow: visible;\n }\n .navbar-expand-md .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n }\n .navbar-expand-md .navbar-toggler {\n display: none;\n }\n .navbar-expand-md .offcanvas {\n position: static;\n z-index: auto;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n transform: none !important;\n transition: none;\n }\n .navbar-expand-md .offcanvas .offcanvas-header {\n display: none;\n }\n .navbar-expand-md .offcanvas .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n@media (min-width: 992px) {\n .navbar-expand-lg {\n flex-wrap: nowrap;\n justify-content: flex-start;\n }\n .navbar-expand-lg .navbar-nav {\n flex-direction: row;\n }\n .navbar-expand-lg .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-lg .navbar-nav .nav-link {\n padding-right: var(--bs-navbar-nav-link-padding-x);\n padding-left: var(--bs-navbar-nav-link-padding-x);\n }\n .navbar-expand-lg .navbar-nav-scroll {\n overflow: visible;\n }\n .navbar-expand-lg .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n }\n .navbar-expand-lg .navbar-toggler {\n display: none;\n }\n .navbar-expand-lg .offcanvas {\n position: static;\n z-index: auto;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n transform: none !important;\n transition: none;\n }\n .navbar-expand-lg .offcanvas .offcanvas-header {\n display: none;\n }\n .navbar-expand-lg .offcanvas .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n@media (min-width: 1200px) {\n .navbar-expand-xl {\n flex-wrap: nowrap;\n justify-content: flex-start;\n }\n .navbar-expand-xl .navbar-nav {\n flex-direction: row;\n }\n .navbar-expand-xl .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-xl .navbar-nav .nav-link {\n padding-right: var(--bs-navbar-nav-link-padding-x);\n padding-left: var(--bs-navbar-nav-link-padding-x);\n }\n .navbar-expand-xl .navbar-nav-scroll {\n overflow: visible;\n }\n .navbar-expand-xl .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n }\n .navbar-expand-xl .navbar-toggler {\n display: none;\n }\n .navbar-expand-xl .offcanvas {\n position: static;\n z-index: auto;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n transform: none !important;\n transition: none;\n }\n .navbar-expand-xl .offcanvas .offcanvas-header {\n display: none;\n }\n .navbar-expand-xl .offcanvas .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n@media (min-width: 1400px) {\n .navbar-expand-xxl {\n flex-wrap: nowrap;\n justify-content: flex-start;\n }\n .navbar-expand-xxl .navbar-nav {\n flex-direction: row;\n }\n .navbar-expand-xxl .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-xxl .navbar-nav .nav-link {\n padding-right: var(--bs-navbar-nav-link-padding-x);\n padding-left: var(--bs-navbar-nav-link-padding-x);\n }\n .navbar-expand-xxl .navbar-nav-scroll {\n overflow: visible;\n }\n .navbar-expand-xxl .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n }\n .navbar-expand-xxl .navbar-toggler {\n display: none;\n }\n .navbar-expand-xxl .offcanvas {\n position: static;\n z-index: auto;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n transform: none !important;\n transition: none;\n }\n .navbar-expand-xxl .offcanvas .offcanvas-header {\n display: none;\n }\n .navbar-expand-xxl .offcanvas .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n.navbar-expand {\n flex-wrap: nowrap;\n justify-content: flex-start;\n}\n.navbar-expand .navbar-nav {\n flex-direction: row;\n}\n.navbar-expand .navbar-nav .dropdown-menu {\n position: absolute;\n}\n.navbar-expand .navbar-nav .nav-link {\n padding-right: var(--bs-navbar-nav-link-padding-x);\n padding-left: var(--bs-navbar-nav-link-padding-x);\n}\n.navbar-expand .navbar-nav-scroll {\n overflow: visible;\n}\n.navbar-expand .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n}\n.navbar-expand .navbar-toggler {\n display: none;\n}\n.navbar-expand .offcanvas {\n position: static;\n z-index: auto;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n transform: none !important;\n transition: none;\n}\n.navbar-expand .offcanvas .offcanvas-header {\n display: none;\n}\n.navbar-expand .offcanvas .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n}\n\n.navbar-dark,\n.navbar[data-bs-theme=dark] {\n --bs-navbar-color: rgba(255, 255, 255, 0.55);\n --bs-navbar-hover-color: rgba(255, 255, 255, 0.75);\n --bs-navbar-disabled-color: rgba(255, 255, 255, 0.25);\n --bs-navbar-active-color: #fff;\n --bs-navbar-brand-color: #fff;\n --bs-navbar-brand-hover-color: #fff;\n --bs-navbar-toggler-border-color: rgba(255, 255, 255, 0.1);\n --bs-navbar-toggler-icon-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\");\n}\n\n[data-bs-theme=dark] .navbar-toggler-icon {\n --bs-navbar-toggler-icon-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\");\n}\n\n.card {\n --bs-card-spacer-y: 1rem;\n --bs-card-spacer-x: 1rem;\n --bs-card-title-spacer-y: 0.5rem;\n --bs-card-title-color: ;\n --bs-card-subtitle-color: ;\n --bs-card-border-width: var(--bs-border-width);\n --bs-card-border-color: var(--bs-border-color-translucent);\n --bs-card-border-radius: var(--bs-border-radius);\n --bs-card-box-shadow: ;\n --bs-card-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));\n --bs-card-cap-padding-y: 0.5rem;\n --bs-card-cap-padding-x: 1rem;\n --bs-card-cap-bg: rgba(var(--bs-body-color-rgb), 0.03);\n --bs-card-cap-color: ;\n --bs-card-height: ;\n --bs-card-color: ;\n --bs-card-bg: var(--bs-body-bg);\n --bs-card-img-overlay-padding: 1rem;\n --bs-card-group-margin: 0.75rem;\n position: relative;\n display: flex;\n flex-direction: column;\n min-width: 0;\n height: var(--bs-card-height);\n color: var(--bs-body-color);\n word-wrap: break-word;\n background-color: var(--bs-card-bg);\n background-clip: border-box;\n border: var(--bs-card-border-width) solid var(--bs-card-border-color);\n border-radius: var(--bs-card-border-radius);\n}\n.card > hr {\n margin-right: 0;\n margin-left: 0;\n}\n.card > .list-group {\n border-top: inherit;\n border-bottom: inherit;\n}\n.card > .list-group:first-child {\n border-top-width: 0;\n border-top-left-radius: var(--bs-card-inner-border-radius);\n border-top-right-radius: var(--bs-card-inner-border-radius);\n}\n.card > .list-group:last-child {\n border-bottom-width: 0;\n border-bottom-right-radius: var(--bs-card-inner-border-radius);\n border-bottom-left-radius: var(--bs-card-inner-border-radius);\n}\n.card > .card-header + .list-group,\n.card > .list-group + .card-footer {\n border-top: 0;\n}\n\n.card-body {\n flex: 1 1 auto;\n padding: var(--bs-card-spacer-y) var(--bs-card-spacer-x);\n color: var(--bs-card-color);\n}\n\n.card-title {\n margin-bottom: var(--bs-card-title-spacer-y);\n color: var(--bs-card-title-color);\n}\n\n.card-subtitle {\n margin-top: calc(-0.5 * var(--bs-card-title-spacer-y));\n margin-bottom: 0;\n color: var(--bs-card-subtitle-color);\n}\n\n.card-text:last-child {\n margin-bottom: 0;\n}\n\n.card-link + .card-link {\n margin-left: var(--bs-card-spacer-x);\n}\n\n.card-header {\n padding: var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);\n margin-bottom: 0;\n color: var(--bs-card-cap-color);\n background-color: var(--bs-card-cap-bg);\n border-bottom: var(--bs-card-border-width) solid var(--bs-card-border-color);\n}\n.card-header:first-child {\n border-radius: var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius) 0 0;\n}\n\n.card-footer {\n padding: var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);\n color: var(--bs-card-cap-color);\n background-color: var(--bs-card-cap-bg);\n border-top: var(--bs-card-border-width) solid var(--bs-card-border-color);\n}\n.card-footer:last-child {\n border-radius: 0 0 var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius);\n}\n\n.card-header-tabs {\n margin-right: calc(-0.5 * var(--bs-card-cap-padding-x));\n margin-bottom: calc(-1 * var(--bs-card-cap-padding-y));\n margin-left: calc(-0.5 * var(--bs-card-cap-padding-x));\n border-bottom: 0;\n}\n.card-header-tabs .nav-link.active {\n background-color: var(--bs-card-bg);\n border-bottom-color: var(--bs-card-bg);\n}\n\n.card-header-pills {\n margin-right: calc(-0.5 * var(--bs-card-cap-padding-x));\n margin-left: calc(-0.5 * var(--bs-card-cap-padding-x));\n}\n\n.card-img-overlay {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n padding: var(--bs-card-img-overlay-padding);\n border-radius: var(--bs-card-inner-border-radius);\n}\n\n.card-img,\n.card-img-top,\n.card-img-bottom {\n width: 100%;\n}\n\n.card-img,\n.card-img-top {\n border-top-left-radius: var(--bs-card-inner-border-radius);\n border-top-right-radius: var(--bs-card-inner-border-radius);\n}\n\n.card-img,\n.card-img-bottom {\n border-bottom-right-radius: var(--bs-card-inner-border-radius);\n border-bottom-left-radius: var(--bs-card-inner-border-radius);\n}\n\n.card-group > .card {\n margin-bottom: var(--bs-card-group-margin);\n}\n@media (min-width: 576px) {\n .card-group {\n display: flex;\n flex-flow: row wrap;\n }\n .card-group > .card {\n flex: 1 0 0;\n margin-bottom: 0;\n }\n .card-group > .card + .card {\n margin-left: 0;\n border-left: 0;\n }\n .card-group > .card:not(:last-child) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n .card-group > .card:not(:last-child) > .card-img-top,\n .card-group > .card:not(:last-child) > .card-header {\n border-top-right-radius: 0;\n }\n .card-group > .card:not(:last-child) > .card-img-bottom,\n .card-group > .card:not(:last-child) > .card-footer {\n border-bottom-right-radius: 0;\n }\n .card-group > .card:not(:first-child) {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n .card-group > .card:not(:first-child) > .card-img-top,\n .card-group > .card:not(:first-child) > .card-header {\n border-top-left-radius: 0;\n }\n .card-group > .card:not(:first-child) > .card-img-bottom,\n .card-group > .card:not(:first-child) > .card-footer {\n border-bottom-left-radius: 0;\n }\n}\n\n.accordion {\n --bs-accordion-color: var(--bs-body-color);\n --bs-accordion-bg: var(--bs-body-bg);\n --bs-accordion-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease;\n --bs-accordion-border-color: var(--bs-border-color);\n --bs-accordion-border-width: var(--bs-border-width);\n --bs-accordion-border-radius: var(--bs-border-radius);\n --bs-accordion-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));\n --bs-accordion-btn-padding-x: 1.25rem;\n --bs-accordion-btn-padding-y: 1rem;\n --bs-accordion-btn-color: var(--bs-body-color);\n --bs-accordion-btn-bg: var(--bs-accordion-bg);\n --bs-accordion-btn-icon: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23212529' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='m2 5 6 6 6-6'/%3e%3c/svg%3e\");\n --bs-accordion-btn-icon-width: 1.25rem;\n --bs-accordion-btn-icon-transform: rotate(-180deg);\n --bs-accordion-btn-icon-transition: transform 0.2s ease-in-out;\n --bs-accordion-btn-active-icon: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23052c65' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='m2 5 6 6 6-6'/%3e%3c/svg%3e\");\n --bs-accordion-btn-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n --bs-accordion-body-padding-x: 1.25rem;\n --bs-accordion-body-padding-y: 1rem;\n --bs-accordion-active-color: var(--bs-primary-text-emphasis);\n --bs-accordion-active-bg: var(--bs-primary-bg-subtle);\n}\n\n.accordion-button {\n position: relative;\n display: flex;\n align-items: center;\n width: 100%;\n padding: var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);\n font-size: 1rem;\n color: var(--bs-accordion-btn-color);\n text-align: left;\n background-color: var(--bs-accordion-btn-bg);\n border: 0;\n border-radius: 0;\n overflow-anchor: none;\n transition: var(--bs-accordion-transition);\n}\n@media (prefers-reduced-motion: reduce) {\n .accordion-button {\n transition: none;\n }\n}\n.accordion-button:not(.collapsed) {\n color: var(--bs-accordion-active-color);\n background-color: var(--bs-accordion-active-bg);\n box-shadow: inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color);\n}\n.accordion-button:not(.collapsed)::after {\n background-image: var(--bs-accordion-btn-active-icon);\n transform: var(--bs-accordion-btn-icon-transform);\n}\n.accordion-button::after {\n flex-shrink: 0;\n width: var(--bs-accordion-btn-icon-width);\n height: var(--bs-accordion-btn-icon-width);\n margin-left: auto;\n content: \"\";\n background-image: var(--bs-accordion-btn-icon);\n background-repeat: no-repeat;\n background-size: var(--bs-accordion-btn-icon-width);\n transition: var(--bs-accordion-btn-icon-transition);\n}\n@media (prefers-reduced-motion: reduce) {\n .accordion-button::after {\n transition: none;\n }\n}\n.accordion-button:hover {\n z-index: 2;\n}\n.accordion-button:focus {\n z-index: 3;\n outline: 0;\n box-shadow: var(--bs-accordion-btn-focus-box-shadow);\n}\n\n.accordion-header {\n margin-bottom: 0;\n}\n\n.accordion-item {\n color: var(--bs-accordion-color);\n background-color: var(--bs-accordion-bg);\n border: var(--bs-accordion-border-width) solid var(--bs-accordion-border-color);\n}\n.accordion-item:first-of-type {\n border-top-left-radius: var(--bs-accordion-border-radius);\n border-top-right-radius: var(--bs-accordion-border-radius);\n}\n.accordion-item:first-of-type > .accordion-header .accordion-button {\n border-top-left-radius: var(--bs-accordion-inner-border-radius);\n border-top-right-radius: var(--bs-accordion-inner-border-radius);\n}\n.accordion-item:not(:first-of-type) {\n border-top: 0;\n}\n.accordion-item:last-of-type {\n border-bottom-right-radius: var(--bs-accordion-border-radius);\n border-bottom-left-radius: var(--bs-accordion-border-radius);\n}\n.accordion-item:last-of-type > .accordion-header .accordion-button.collapsed {\n border-bottom-right-radius: var(--bs-accordion-inner-border-radius);\n border-bottom-left-radius: var(--bs-accordion-inner-border-radius);\n}\n.accordion-item:last-of-type > .accordion-collapse {\n border-bottom-right-radius: var(--bs-accordion-border-radius);\n border-bottom-left-radius: var(--bs-accordion-border-radius);\n}\n\n.accordion-body {\n padding: var(--bs-accordion-body-padding-y) var(--bs-accordion-body-padding-x);\n}\n\n.accordion-flush > .accordion-item {\n border-right: 0;\n border-left: 0;\n border-radius: 0;\n}\n.accordion-flush > .accordion-item:first-child {\n border-top: 0;\n}\n.accordion-flush > .accordion-item:last-child {\n border-bottom: 0;\n}\n.accordion-flush > .accordion-item > .accordion-collapse,\n.accordion-flush > .accordion-item > .accordion-header .accordion-button,\n.accordion-flush > .accordion-item > .accordion-header .accordion-button.collapsed {\n border-radius: 0;\n}\n\n[data-bs-theme=dark] .accordion-button::after {\n --bs-accordion-btn-icon: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236ea8fe'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708'/%3e%3c/svg%3e\");\n --bs-accordion-btn-active-icon: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236ea8fe'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708'/%3e%3c/svg%3e\");\n}\n\n.breadcrumb {\n --bs-breadcrumb-padding-x: 0;\n --bs-breadcrumb-padding-y: 0;\n --bs-breadcrumb-margin-bottom: 1rem;\n --bs-breadcrumb-bg: ;\n --bs-breadcrumb-border-radius: ;\n --bs-breadcrumb-divider-color: var(--bs-secondary-color);\n --bs-breadcrumb-item-padding-x: 0.5rem;\n --bs-breadcrumb-item-active-color: var(--bs-secondary-color);\n display: flex;\n flex-wrap: wrap;\n padding: var(--bs-breadcrumb-padding-y) var(--bs-breadcrumb-padding-x);\n margin-bottom: var(--bs-breadcrumb-margin-bottom);\n font-size: var(--bs-breadcrumb-font-size);\n list-style: none;\n background-color: var(--bs-breadcrumb-bg);\n border-radius: var(--bs-breadcrumb-border-radius);\n}\n\n.breadcrumb-item + .breadcrumb-item {\n padding-left: var(--bs-breadcrumb-item-padding-x);\n}\n.breadcrumb-item + .breadcrumb-item::before {\n float: left;\n padding-right: var(--bs-breadcrumb-item-padding-x);\n color: var(--bs-breadcrumb-divider-color);\n content: var(--bs-breadcrumb-divider, \"/\") /* rtl: var(--bs-breadcrumb-divider, \"/\") */;\n}\n.breadcrumb-item.active {\n color: var(--bs-breadcrumb-item-active-color);\n}\n\n.pagination {\n --bs-pagination-padding-x: 0.75rem;\n --bs-pagination-padding-y: 0.375rem;\n --bs-pagination-font-size: 1rem;\n --bs-pagination-color: var(--bs-link-color);\n --bs-pagination-bg: var(--bs-body-bg);\n --bs-pagination-border-width: var(--bs-border-width);\n --bs-pagination-border-color: var(--bs-border-color);\n --bs-pagination-border-radius: var(--bs-border-radius);\n --bs-pagination-hover-color: var(--bs-link-hover-color);\n --bs-pagination-hover-bg: var(--bs-tertiary-bg);\n --bs-pagination-hover-border-color: var(--bs-border-color);\n --bs-pagination-focus-color: var(--bs-link-hover-color);\n --bs-pagination-focus-bg: var(--bs-secondary-bg);\n --bs-pagination-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n --bs-pagination-active-color: #fff;\n --bs-pagination-active-bg: #0d6efd;\n --bs-pagination-active-border-color: #0d6efd;\n --bs-pagination-disabled-color: var(--bs-secondary-color);\n --bs-pagination-disabled-bg: var(--bs-secondary-bg);\n --bs-pagination-disabled-border-color: var(--bs-border-color);\n display: flex;\n padding-left: 0;\n list-style: none;\n}\n\n.page-link {\n position: relative;\n display: block;\n padding: var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);\n font-size: var(--bs-pagination-font-size);\n color: var(--bs-pagination-color);\n text-decoration: none;\n background-color: var(--bs-pagination-bg);\n border: var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .page-link {\n transition: none;\n }\n}\n.page-link:hover {\n z-index: 2;\n color: var(--bs-pagination-hover-color);\n background-color: var(--bs-pagination-hover-bg);\n border-color: var(--bs-pagination-hover-border-color);\n}\n.page-link:focus {\n z-index: 3;\n color: var(--bs-pagination-focus-color);\n background-color: var(--bs-pagination-focus-bg);\n outline: 0;\n box-shadow: var(--bs-pagination-focus-box-shadow);\n}\n.page-link.active, .active > .page-link {\n z-index: 3;\n color: var(--bs-pagination-active-color);\n background-color: var(--bs-pagination-active-bg);\n border-color: var(--bs-pagination-active-border-color);\n}\n.page-link.disabled, .disabled > .page-link {\n color: var(--bs-pagination-disabled-color);\n pointer-events: none;\n background-color: var(--bs-pagination-disabled-bg);\n border-color: var(--bs-pagination-disabled-border-color);\n}\n\n.page-item:not(:first-child) .page-link {\n margin-left: calc(-1 * var(--bs-border-width));\n}\n.page-item:first-child .page-link {\n border-top-left-radius: var(--bs-pagination-border-radius);\n border-bottom-left-radius: var(--bs-pagination-border-radius);\n}\n.page-item:last-child .page-link {\n border-top-right-radius: var(--bs-pagination-border-radius);\n border-bottom-right-radius: var(--bs-pagination-border-radius);\n}\n\n.pagination-lg {\n --bs-pagination-padding-x: 1.5rem;\n --bs-pagination-padding-y: 0.75rem;\n --bs-pagination-font-size: 1.25rem;\n --bs-pagination-border-radius: var(--bs-border-radius-lg);\n}\n\n.pagination-sm {\n --bs-pagination-padding-x: 0.5rem;\n --bs-pagination-padding-y: 0.25rem;\n --bs-pagination-font-size: 0.875rem;\n --bs-pagination-border-radius: var(--bs-border-radius-sm);\n}\n\n.badge {\n --bs-badge-padding-x: 0.65em;\n --bs-badge-padding-y: 0.35em;\n --bs-badge-font-size: 0.75em;\n --bs-badge-font-weight: 700;\n --bs-badge-color: #fff;\n --bs-badge-border-radius: var(--bs-border-radius);\n display: inline-block;\n padding: var(--bs-badge-padding-y) var(--bs-badge-padding-x);\n font-size: var(--bs-badge-font-size);\n font-weight: var(--bs-badge-font-weight);\n line-height: 1;\n color: var(--bs-badge-color);\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n border-radius: var(--bs-badge-border-radius);\n}\n.badge:empty {\n display: none;\n}\n\n.btn .badge {\n position: relative;\n top: -1px;\n}\n\n.alert {\n --bs-alert-bg: transparent;\n --bs-alert-padding-x: 1rem;\n --bs-alert-padding-y: 1rem;\n --bs-alert-margin-bottom: 1rem;\n --bs-alert-color: inherit;\n --bs-alert-border-color: transparent;\n --bs-alert-border: var(--bs-border-width) solid var(--bs-alert-border-color);\n --bs-alert-border-radius: var(--bs-border-radius);\n --bs-alert-link-color: inherit;\n position: relative;\n padding: var(--bs-alert-padding-y) var(--bs-alert-padding-x);\n margin-bottom: var(--bs-alert-margin-bottom);\n color: var(--bs-alert-color);\n background-color: var(--bs-alert-bg);\n border: var(--bs-alert-border);\n border-radius: var(--bs-alert-border-radius);\n}\n\n.alert-heading {\n color: inherit;\n}\n\n.alert-link {\n font-weight: 700;\n color: var(--bs-alert-link-color);\n}\n\n.alert-dismissible {\n padding-right: 3rem;\n}\n.alert-dismissible .btn-close {\n position: absolute;\n top: 0;\n right: 0;\n z-index: 2;\n padding: 1.25rem 1rem;\n}\n\n.alert-primary {\n --bs-alert-color: var(--bs-primary-text-emphasis);\n --bs-alert-bg: var(--bs-primary-bg-subtle);\n --bs-alert-border-color: var(--bs-primary-border-subtle);\n --bs-alert-link-color: var(--bs-primary-text-emphasis);\n}\n\n.alert-secondary {\n --bs-alert-color: var(--bs-secondary-text-emphasis);\n --bs-alert-bg: var(--bs-secondary-bg-subtle);\n --bs-alert-border-color: var(--bs-secondary-border-subtle);\n --bs-alert-link-color: var(--bs-secondary-text-emphasis);\n}\n\n.alert-success {\n --bs-alert-color: var(--bs-success-text-emphasis);\n --bs-alert-bg: var(--bs-success-bg-subtle);\n --bs-alert-border-color: var(--bs-success-border-subtle);\n --bs-alert-link-color: var(--bs-success-text-emphasis);\n}\n\n.alert-info {\n --bs-alert-color: var(--bs-info-text-emphasis);\n --bs-alert-bg: var(--bs-info-bg-subtle);\n --bs-alert-border-color: var(--bs-info-border-subtle);\n --bs-alert-link-color: var(--bs-info-text-emphasis);\n}\n\n.alert-warning {\n --bs-alert-color: var(--bs-warning-text-emphasis);\n --bs-alert-bg: var(--bs-warning-bg-subtle);\n --bs-alert-border-color: var(--bs-warning-border-subtle);\n --bs-alert-link-color: var(--bs-warning-text-emphasis);\n}\n\n.alert-danger {\n --bs-alert-color: var(--bs-danger-text-emphasis);\n --bs-alert-bg: var(--bs-danger-bg-subtle);\n --bs-alert-border-color: var(--bs-danger-border-subtle);\n --bs-alert-link-color: var(--bs-danger-text-emphasis);\n}\n\n.alert-light {\n --bs-alert-color: var(--bs-light-text-emphasis);\n --bs-alert-bg: var(--bs-light-bg-subtle);\n --bs-alert-border-color: var(--bs-light-border-subtle);\n --bs-alert-link-color: var(--bs-light-text-emphasis);\n}\n\n.alert-dark {\n --bs-alert-color: var(--bs-dark-text-emphasis);\n --bs-alert-bg: var(--bs-dark-bg-subtle);\n --bs-alert-border-color: var(--bs-dark-border-subtle);\n --bs-alert-link-color: var(--bs-dark-text-emphasis);\n}\n\n@keyframes progress-bar-stripes {\n 0% {\n background-position-x: var(--bs-progress-height);\n }\n}\n.progress,\n.progress-stacked {\n --bs-progress-height: 1rem;\n --bs-progress-font-size: 0.75rem;\n --bs-progress-bg: var(--bs-secondary-bg);\n --bs-progress-border-radius: var(--bs-border-radius);\n --bs-progress-box-shadow: var(--bs-box-shadow-inset);\n --bs-progress-bar-color: #fff;\n --bs-progress-bar-bg: #0d6efd;\n --bs-progress-bar-transition: width 0.6s ease;\n display: flex;\n height: var(--bs-progress-height);\n overflow: hidden;\n font-size: var(--bs-progress-font-size);\n background-color: var(--bs-progress-bg);\n border-radius: var(--bs-progress-border-radius);\n}\n\n.progress-bar {\n display: flex;\n flex-direction: column;\n justify-content: center;\n overflow: hidden;\n color: var(--bs-progress-bar-color);\n text-align: center;\n white-space: nowrap;\n background-color: var(--bs-progress-bar-bg);\n transition: var(--bs-progress-bar-transition);\n}\n@media (prefers-reduced-motion: reduce) {\n .progress-bar {\n transition: none;\n }\n}\n\n.progress-bar-striped {\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-size: var(--bs-progress-height) var(--bs-progress-height);\n}\n\n.progress-stacked > .progress {\n overflow: visible;\n}\n\n.progress-stacked > .progress > .progress-bar {\n width: 100%;\n}\n\n.progress-bar-animated {\n animation: 1s linear infinite progress-bar-stripes;\n}\n@media (prefers-reduced-motion: reduce) {\n .progress-bar-animated {\n animation: none;\n }\n}\n\n.list-group {\n --bs-list-group-color: var(--bs-body-color);\n --bs-list-group-bg: var(--bs-body-bg);\n --bs-list-group-border-color: var(--bs-border-color);\n --bs-list-group-border-width: var(--bs-border-width);\n --bs-list-group-border-radius: var(--bs-border-radius);\n --bs-list-group-item-padding-x: 1rem;\n --bs-list-group-item-padding-y: 0.5rem;\n --bs-list-group-action-color: var(--bs-secondary-color);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-tertiary-bg);\n --bs-list-group-action-active-color: var(--bs-body-color);\n --bs-list-group-action-active-bg: var(--bs-secondary-bg);\n --bs-list-group-disabled-color: var(--bs-secondary-color);\n --bs-list-group-disabled-bg: var(--bs-body-bg);\n --bs-list-group-active-color: #fff;\n --bs-list-group-active-bg: #0d6efd;\n --bs-list-group-active-border-color: #0d6efd;\n display: flex;\n flex-direction: column;\n padding-left: 0;\n margin-bottom: 0;\n border-radius: var(--bs-list-group-border-radius);\n}\n\n.list-group-numbered {\n list-style-type: none;\n counter-reset: section;\n}\n.list-group-numbered > .list-group-item::before {\n content: counters(section, \".\") \". \";\n counter-increment: section;\n}\n\n.list-group-item {\n position: relative;\n display: block;\n padding: var(--bs-list-group-item-padding-y) var(--bs-list-group-item-padding-x);\n color: var(--bs-list-group-color);\n text-decoration: none;\n background-color: var(--bs-list-group-bg);\n border: var(--bs-list-group-border-width) solid var(--bs-list-group-border-color);\n}\n.list-group-item:first-child {\n border-top-left-radius: inherit;\n border-top-right-radius: inherit;\n}\n.list-group-item:last-child {\n border-bottom-right-radius: inherit;\n border-bottom-left-radius: inherit;\n}\n.list-group-item.disabled, .list-group-item:disabled {\n color: var(--bs-list-group-disabled-color);\n pointer-events: none;\n background-color: var(--bs-list-group-disabled-bg);\n}\n.list-group-item.active {\n z-index: 2;\n color: var(--bs-list-group-active-color);\n background-color: var(--bs-list-group-active-bg);\n border-color: var(--bs-list-group-active-border-color);\n}\n.list-group-item + .list-group-item {\n border-top-width: 0;\n}\n.list-group-item + .list-group-item.active {\n margin-top: calc(-1 * var(--bs-list-group-border-width));\n border-top-width: var(--bs-list-group-border-width);\n}\n\n.list-group-item-action {\n width: 100%;\n color: var(--bs-list-group-action-color);\n text-align: inherit;\n}\n.list-group-item-action:not(.active):hover, .list-group-item-action:not(.active):focus {\n z-index: 1;\n color: var(--bs-list-group-action-hover-color);\n text-decoration: none;\n background-color: var(--bs-list-group-action-hover-bg);\n}\n.list-group-item-action:not(.active):active {\n color: var(--bs-list-group-action-active-color);\n background-color: var(--bs-list-group-action-active-bg);\n}\n\n.list-group-horizontal {\n flex-direction: row;\n}\n.list-group-horizontal > .list-group-item:first-child:not(:last-child) {\n border-bottom-left-radius: var(--bs-list-group-border-radius);\n border-top-right-radius: 0;\n}\n.list-group-horizontal > .list-group-item:last-child:not(:first-child) {\n border-top-right-radius: var(--bs-list-group-border-radius);\n border-bottom-left-radius: 0;\n}\n.list-group-horizontal > .list-group-item.active {\n margin-top: 0;\n}\n.list-group-horizontal > .list-group-item + .list-group-item {\n border-top-width: var(--bs-list-group-border-width);\n border-left-width: 0;\n}\n.list-group-horizontal > .list-group-item + .list-group-item.active {\n margin-left: calc(-1 * var(--bs-list-group-border-width));\n border-left-width: var(--bs-list-group-border-width);\n}\n\n@media (min-width: 576px) {\n .list-group-horizontal-sm {\n flex-direction: row;\n }\n .list-group-horizontal-sm > .list-group-item:first-child:not(:last-child) {\n border-bottom-left-radius: var(--bs-list-group-border-radius);\n border-top-right-radius: 0;\n }\n .list-group-horizontal-sm > .list-group-item:last-child:not(:first-child) {\n border-top-right-radius: var(--bs-list-group-border-radius);\n border-bottom-left-radius: 0;\n }\n .list-group-horizontal-sm > .list-group-item.active {\n margin-top: 0;\n }\n .list-group-horizontal-sm > .list-group-item + .list-group-item {\n border-top-width: var(--bs-list-group-border-width);\n border-left-width: 0;\n }\n .list-group-horizontal-sm > .list-group-item + .list-group-item.active {\n margin-left: calc(-1 * var(--bs-list-group-border-width));\n border-left-width: var(--bs-list-group-border-width);\n }\n}\n@media (min-width: 768px) {\n .list-group-horizontal-md {\n flex-direction: row;\n }\n .list-group-horizontal-md > .list-group-item:first-child:not(:last-child) {\n border-bottom-left-radius: var(--bs-list-group-border-radius);\n border-top-right-radius: 0;\n }\n .list-group-horizontal-md > .list-group-item:last-child:not(:first-child) {\n border-top-right-radius: var(--bs-list-group-border-radius);\n border-bottom-left-radius: 0;\n }\n .list-group-horizontal-md > .list-group-item.active {\n margin-top: 0;\n }\n .list-group-horizontal-md > .list-group-item + .list-group-item {\n border-top-width: var(--bs-list-group-border-width);\n border-left-width: 0;\n }\n .list-group-horizontal-md > .list-group-item + .list-group-item.active {\n margin-left: calc(-1 * var(--bs-list-group-border-width));\n border-left-width: var(--bs-list-group-border-width);\n }\n}\n@media (min-width: 992px) {\n .list-group-horizontal-lg {\n flex-direction: row;\n }\n .list-group-horizontal-lg > .list-group-item:first-child:not(:last-child) {\n border-bottom-left-radius: var(--bs-list-group-border-radius);\n border-top-right-radius: 0;\n }\n .list-group-horizontal-lg > .list-group-item:last-child:not(:first-child) {\n border-top-right-radius: var(--bs-list-group-border-radius);\n border-bottom-left-radius: 0;\n }\n .list-group-horizontal-lg > .list-group-item.active {\n margin-top: 0;\n }\n .list-group-horizontal-lg > .list-group-item + .list-group-item {\n border-top-width: var(--bs-list-group-border-width);\n border-left-width: 0;\n }\n .list-group-horizontal-lg > .list-group-item + .list-group-item.active {\n margin-left: calc(-1 * var(--bs-list-group-border-width));\n border-left-width: var(--bs-list-group-border-width);\n }\n}\n@media (min-width: 1200px) {\n .list-group-horizontal-xl {\n flex-direction: row;\n }\n .list-group-horizontal-xl > .list-group-item:first-child:not(:last-child) {\n border-bottom-left-radius: var(--bs-list-group-border-radius);\n border-top-right-radius: 0;\n }\n .list-group-horizontal-xl > .list-group-item:last-child:not(:first-child) {\n border-top-right-radius: var(--bs-list-group-border-radius);\n border-bottom-left-radius: 0;\n }\n .list-group-horizontal-xl > .list-group-item.active {\n margin-top: 0;\n }\n .list-group-horizontal-xl > .list-group-item + .list-group-item {\n border-top-width: var(--bs-list-group-border-width);\n border-left-width: 0;\n }\n .list-group-horizontal-xl > .list-group-item + .list-group-item.active {\n margin-left: calc(-1 * var(--bs-list-group-border-width));\n border-left-width: var(--bs-list-group-border-width);\n }\n}\n@media (min-width: 1400px) {\n .list-group-horizontal-xxl {\n flex-direction: row;\n }\n .list-group-horizontal-xxl > .list-group-item:first-child:not(:last-child) {\n border-bottom-left-radius: var(--bs-list-group-border-radius);\n border-top-right-radius: 0;\n }\n .list-group-horizontal-xxl > .list-group-item:last-child:not(:first-child) {\n border-top-right-radius: var(--bs-list-group-border-radius);\n border-bottom-left-radius: 0;\n }\n .list-group-horizontal-xxl > .list-group-item.active {\n margin-top: 0;\n }\n .list-group-horizontal-xxl > .list-group-item + .list-group-item {\n border-top-width: var(--bs-list-group-border-width);\n border-left-width: 0;\n }\n .list-group-horizontal-xxl > .list-group-item + .list-group-item.active {\n margin-left: calc(-1 * var(--bs-list-group-border-width));\n border-left-width: var(--bs-list-group-border-width);\n }\n}\n.list-group-flush {\n border-radius: 0;\n}\n.list-group-flush > .list-group-item {\n border-width: 0 0 var(--bs-list-group-border-width);\n}\n.list-group-flush > .list-group-item:last-child {\n border-bottom-width: 0;\n}\n\n.list-group-item-primary {\n --bs-list-group-color: var(--bs-primary-text-emphasis);\n --bs-list-group-bg: var(--bs-primary-bg-subtle);\n --bs-list-group-border-color: var(--bs-primary-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-primary-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-primary-border-subtle);\n --bs-list-group-active-color: var(--bs-primary-bg-subtle);\n --bs-list-group-active-bg: var(--bs-primary-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-primary-text-emphasis);\n}\n\n.list-group-item-secondary {\n --bs-list-group-color: var(--bs-secondary-text-emphasis);\n --bs-list-group-bg: var(--bs-secondary-bg-subtle);\n --bs-list-group-border-color: var(--bs-secondary-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-secondary-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-secondary-border-subtle);\n --bs-list-group-active-color: var(--bs-secondary-bg-subtle);\n --bs-list-group-active-bg: var(--bs-secondary-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-secondary-text-emphasis);\n}\n\n.list-group-item-success {\n --bs-list-group-color: var(--bs-success-text-emphasis);\n --bs-list-group-bg: var(--bs-success-bg-subtle);\n --bs-list-group-border-color: var(--bs-success-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-success-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-success-border-subtle);\n --bs-list-group-active-color: var(--bs-success-bg-subtle);\n --bs-list-group-active-bg: var(--bs-success-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-success-text-emphasis);\n}\n\n.list-group-item-info {\n --bs-list-group-color: var(--bs-info-text-emphasis);\n --bs-list-group-bg: var(--bs-info-bg-subtle);\n --bs-list-group-border-color: var(--bs-info-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-info-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-info-border-subtle);\n --bs-list-group-active-color: var(--bs-info-bg-subtle);\n --bs-list-group-active-bg: var(--bs-info-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-info-text-emphasis);\n}\n\n.list-group-item-warning {\n --bs-list-group-color: var(--bs-warning-text-emphasis);\n --bs-list-group-bg: var(--bs-warning-bg-subtle);\n --bs-list-group-border-color: var(--bs-warning-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-warning-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-warning-border-subtle);\n --bs-list-group-active-color: var(--bs-warning-bg-subtle);\n --bs-list-group-active-bg: var(--bs-warning-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-warning-text-emphasis);\n}\n\n.list-group-item-danger {\n --bs-list-group-color: var(--bs-danger-text-emphasis);\n --bs-list-group-bg: var(--bs-danger-bg-subtle);\n --bs-list-group-border-color: var(--bs-danger-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-danger-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-danger-border-subtle);\n --bs-list-group-active-color: var(--bs-danger-bg-subtle);\n --bs-list-group-active-bg: var(--bs-danger-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-danger-text-emphasis);\n}\n\n.list-group-item-light {\n --bs-list-group-color: var(--bs-light-text-emphasis);\n --bs-list-group-bg: var(--bs-light-bg-subtle);\n --bs-list-group-border-color: var(--bs-light-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-light-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-light-border-subtle);\n --bs-list-group-active-color: var(--bs-light-bg-subtle);\n --bs-list-group-active-bg: var(--bs-light-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-light-text-emphasis);\n}\n\n.list-group-item-dark {\n --bs-list-group-color: var(--bs-dark-text-emphasis);\n --bs-list-group-bg: var(--bs-dark-bg-subtle);\n --bs-list-group-border-color: var(--bs-dark-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-dark-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-dark-border-subtle);\n --bs-list-group-active-color: var(--bs-dark-bg-subtle);\n --bs-list-group-active-bg: var(--bs-dark-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-dark-text-emphasis);\n}\n\n.btn-close {\n --bs-btn-close-color: #000;\n --bs-btn-close-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414'/%3e%3c/svg%3e\");\n --bs-btn-close-opacity: 0.5;\n --bs-btn-close-hover-opacity: 0.75;\n --bs-btn-close-focus-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n --bs-btn-close-focus-opacity: 1;\n --bs-btn-close-disabled-opacity: 0.25;\n box-sizing: content-box;\n width: 1em;\n height: 1em;\n padding: 0.25em 0.25em;\n color: var(--bs-btn-close-color);\n background: transparent var(--bs-btn-close-bg) center/1em auto no-repeat;\n filter: var(--bs-btn-close-filter);\n border: 0;\n border-radius: 0.375rem;\n opacity: var(--bs-btn-close-opacity);\n}\n.btn-close:hover {\n color: var(--bs-btn-close-color);\n text-decoration: none;\n opacity: var(--bs-btn-close-hover-opacity);\n}\n.btn-close:focus {\n outline: 0;\n box-shadow: var(--bs-btn-close-focus-shadow);\n opacity: var(--bs-btn-close-focus-opacity);\n}\n.btn-close:disabled, .btn-close.disabled {\n pointer-events: none;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n opacity: var(--bs-btn-close-disabled-opacity);\n}\n\n.btn-close-white {\n --bs-btn-close-filter: invert(1) grayscale(100%) brightness(200%);\n}\n\n:root,\n[data-bs-theme=light] {\n --bs-btn-close-filter: ;\n}\n\n[data-bs-theme=dark] {\n --bs-btn-close-filter: invert(1) grayscale(100%) brightness(200%);\n}\n\n.toast {\n --bs-toast-zindex: 1090;\n --bs-toast-padding-x: 0.75rem;\n --bs-toast-padding-y: 0.5rem;\n --bs-toast-spacing: 1.5rem;\n --bs-toast-max-width: 350px;\n --bs-toast-font-size: 0.875rem;\n --bs-toast-color: ;\n --bs-toast-bg: rgba(var(--bs-body-bg-rgb), 0.85);\n --bs-toast-border-width: var(--bs-border-width);\n --bs-toast-border-color: var(--bs-border-color-translucent);\n --bs-toast-border-radius: var(--bs-border-radius);\n --bs-toast-box-shadow: var(--bs-box-shadow);\n --bs-toast-header-color: var(--bs-secondary-color);\n --bs-toast-header-bg: rgba(var(--bs-body-bg-rgb), 0.85);\n --bs-toast-header-border-color: var(--bs-border-color-translucent);\n width: var(--bs-toast-max-width);\n max-width: 100%;\n font-size: var(--bs-toast-font-size);\n color: var(--bs-toast-color);\n pointer-events: auto;\n background-color: var(--bs-toast-bg);\n background-clip: padding-box;\n border: var(--bs-toast-border-width) solid var(--bs-toast-border-color);\n box-shadow: var(--bs-toast-box-shadow);\n border-radius: var(--bs-toast-border-radius);\n}\n.toast.showing {\n opacity: 0;\n}\n.toast:not(.show) {\n display: none;\n}\n\n.toast-container {\n --bs-toast-zindex: 1090;\n position: absolute;\n z-index: var(--bs-toast-zindex);\n width: -webkit-max-content;\n width: -moz-max-content;\n width: max-content;\n max-width: 100%;\n pointer-events: none;\n}\n.toast-container > :not(:last-child) {\n margin-bottom: var(--bs-toast-spacing);\n}\n\n.toast-header {\n display: flex;\n align-items: center;\n padding: var(--bs-toast-padding-y) var(--bs-toast-padding-x);\n color: var(--bs-toast-header-color);\n background-color: var(--bs-toast-header-bg);\n background-clip: padding-box;\n border-bottom: var(--bs-toast-border-width) solid var(--bs-toast-header-border-color);\n border-top-left-radius: calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));\n border-top-right-radius: calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));\n}\n.toast-header .btn-close {\n margin-right: calc(-0.5 * var(--bs-toast-padding-x));\n margin-left: var(--bs-toast-padding-x);\n}\n\n.toast-body {\n padding: var(--bs-toast-padding-x);\n word-wrap: break-word;\n}\n\n.modal {\n --bs-modal-zindex: 1055;\n --bs-modal-width: 500px;\n --bs-modal-padding: 1rem;\n --bs-modal-margin: 0.5rem;\n --bs-modal-color: var(--bs-body-color);\n --bs-modal-bg: var(--bs-body-bg);\n --bs-modal-border-color: var(--bs-border-color-translucent);\n --bs-modal-border-width: var(--bs-border-width);\n --bs-modal-border-radius: var(--bs-border-radius-lg);\n --bs-modal-box-shadow: var(--bs-box-shadow-sm);\n --bs-modal-inner-border-radius: calc(var(--bs-border-radius-lg) - (var(--bs-border-width)));\n --bs-modal-header-padding-x: 1rem;\n --bs-modal-header-padding-y: 1rem;\n --bs-modal-header-padding: 1rem 1rem;\n --bs-modal-header-border-color: var(--bs-border-color);\n --bs-modal-header-border-width: var(--bs-border-width);\n --bs-modal-title-line-height: 1.5;\n --bs-modal-footer-gap: 0.5rem;\n --bs-modal-footer-bg: ;\n --bs-modal-footer-border-color: var(--bs-border-color);\n --bs-modal-footer-border-width: var(--bs-border-width);\n position: fixed;\n top: 0;\n left: 0;\n z-index: var(--bs-modal-zindex);\n display: none;\n width: 100%;\n height: 100%;\n overflow-x: hidden;\n overflow-y: auto;\n outline: 0;\n}\n\n.modal-dialog {\n position: relative;\n width: auto;\n margin: var(--bs-modal-margin);\n pointer-events: none;\n}\n.modal.fade .modal-dialog {\n transform: translate(0, -50px);\n transition: transform 0.3s ease-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .modal.fade .modal-dialog {\n transition: none;\n }\n}\n.modal.show .modal-dialog {\n transform: none;\n}\n.modal.modal-static .modal-dialog {\n transform: scale(1.02);\n}\n\n.modal-dialog-scrollable {\n height: calc(100% - var(--bs-modal-margin) * 2);\n}\n.modal-dialog-scrollable .modal-content {\n max-height: 100%;\n overflow: hidden;\n}\n.modal-dialog-scrollable .modal-body {\n overflow-y: auto;\n}\n\n.modal-dialog-centered {\n display: flex;\n align-items: center;\n min-height: calc(100% - var(--bs-modal-margin) * 2);\n}\n\n.modal-content {\n position: relative;\n display: flex;\n flex-direction: column;\n width: 100%;\n color: var(--bs-modal-color);\n pointer-events: auto;\n background-color: var(--bs-modal-bg);\n background-clip: padding-box;\n border: var(--bs-modal-border-width) solid var(--bs-modal-border-color);\n border-radius: var(--bs-modal-border-radius);\n outline: 0;\n}\n\n.modal-backdrop {\n --bs-backdrop-zindex: 1050;\n --bs-backdrop-bg: #000;\n --bs-backdrop-opacity: 0.5;\n position: fixed;\n top: 0;\n left: 0;\n z-index: var(--bs-backdrop-zindex);\n width: 100vw;\n height: 100vh;\n background-color: var(--bs-backdrop-bg);\n}\n.modal-backdrop.fade {\n opacity: 0;\n}\n.modal-backdrop.show {\n opacity: var(--bs-backdrop-opacity);\n}\n\n.modal-header {\n display: flex;\n flex-shrink: 0;\n align-items: center;\n padding: var(--bs-modal-header-padding);\n border-bottom: var(--bs-modal-header-border-width) solid var(--bs-modal-header-border-color);\n border-top-left-radius: var(--bs-modal-inner-border-radius);\n border-top-right-radius: var(--bs-modal-inner-border-radius);\n}\n.modal-header .btn-close {\n padding: calc(var(--bs-modal-header-padding-y) * 0.5) calc(var(--bs-modal-header-padding-x) * 0.5);\n margin-top: calc(-0.5 * var(--bs-modal-header-padding-y));\n margin-right: calc(-0.5 * var(--bs-modal-header-padding-x));\n margin-bottom: calc(-0.5 * var(--bs-modal-header-padding-y));\n margin-left: auto;\n}\n\n.modal-title {\n margin-bottom: 0;\n line-height: var(--bs-modal-title-line-height);\n}\n\n.modal-body {\n position: relative;\n flex: 1 1 auto;\n padding: var(--bs-modal-padding);\n}\n\n.modal-footer {\n display: flex;\n flex-shrink: 0;\n flex-wrap: wrap;\n align-items: center;\n justify-content: flex-end;\n padding: calc(var(--bs-modal-padding) - var(--bs-modal-footer-gap) * 0.5);\n background-color: var(--bs-modal-footer-bg);\n border-top: var(--bs-modal-footer-border-width) solid var(--bs-modal-footer-border-color);\n border-bottom-right-radius: var(--bs-modal-inner-border-radius);\n border-bottom-left-radius: var(--bs-modal-inner-border-radius);\n}\n.modal-footer > * {\n margin: calc(var(--bs-modal-footer-gap) * 0.5);\n}\n\n@media (min-width: 576px) {\n .modal {\n --bs-modal-margin: 1.75rem;\n --bs-modal-box-shadow: var(--bs-box-shadow);\n }\n .modal-dialog {\n max-width: var(--bs-modal-width);\n margin-right: auto;\n margin-left: auto;\n }\n .modal-sm {\n --bs-modal-width: 300px;\n }\n}\n@media (min-width: 992px) {\n .modal-lg,\n .modal-xl {\n --bs-modal-width: 800px;\n }\n}\n@media (min-width: 1200px) {\n .modal-xl {\n --bs-modal-width: 1140px;\n }\n}\n.modal-fullscreen {\n width: 100vw;\n max-width: none;\n height: 100%;\n margin: 0;\n}\n.modal-fullscreen .modal-content {\n height: 100%;\n border: 0;\n border-radius: 0;\n}\n.modal-fullscreen .modal-header,\n.modal-fullscreen .modal-footer {\n border-radius: 0;\n}\n.modal-fullscreen .modal-body {\n overflow-y: auto;\n}\n\n@media (max-width: 575.98px) {\n .modal-fullscreen-sm-down {\n width: 100vw;\n max-width: none;\n height: 100%;\n margin: 0;\n }\n .modal-fullscreen-sm-down .modal-content {\n height: 100%;\n border: 0;\n border-radius: 0;\n }\n .modal-fullscreen-sm-down .modal-header,\n .modal-fullscreen-sm-down .modal-footer {\n border-radius: 0;\n }\n .modal-fullscreen-sm-down .modal-body {\n overflow-y: auto;\n }\n}\n@media (max-width: 767.98px) {\n .modal-fullscreen-md-down {\n width: 100vw;\n max-width: none;\n height: 100%;\n margin: 0;\n }\n .modal-fullscreen-md-down .modal-content {\n height: 100%;\n border: 0;\n border-radius: 0;\n }\n .modal-fullscreen-md-down .modal-header,\n .modal-fullscreen-md-down .modal-footer {\n border-radius: 0;\n }\n .modal-fullscreen-md-down .modal-body {\n overflow-y: auto;\n }\n}\n@media (max-width: 991.98px) {\n .modal-fullscreen-lg-down {\n width: 100vw;\n max-width: none;\n height: 100%;\n margin: 0;\n }\n .modal-fullscreen-lg-down .modal-content {\n height: 100%;\n border: 0;\n border-radius: 0;\n }\n .modal-fullscreen-lg-down .modal-header,\n .modal-fullscreen-lg-down .modal-footer {\n border-radius: 0;\n }\n .modal-fullscreen-lg-down .modal-body {\n overflow-y: auto;\n }\n}\n@media (max-width: 1199.98px) {\n .modal-fullscreen-xl-down {\n width: 100vw;\n max-width: none;\n height: 100%;\n margin: 0;\n }\n .modal-fullscreen-xl-down .modal-content {\n height: 100%;\n border: 0;\n border-radius: 0;\n }\n .modal-fullscreen-xl-down .modal-header,\n .modal-fullscreen-xl-down .modal-footer {\n border-radius: 0;\n }\n .modal-fullscreen-xl-down .modal-body {\n overflow-y: auto;\n }\n}\n@media (max-width: 1399.98px) {\n .modal-fullscreen-xxl-down {\n width: 100vw;\n max-width: none;\n height: 100%;\n margin: 0;\n }\n .modal-fullscreen-xxl-down .modal-content {\n height: 100%;\n border: 0;\n border-radius: 0;\n }\n .modal-fullscreen-xxl-down .modal-header,\n .modal-fullscreen-xxl-down .modal-footer {\n border-radius: 0;\n }\n .modal-fullscreen-xxl-down .modal-body {\n overflow-y: auto;\n }\n}\n.tooltip {\n --bs-tooltip-zindex: 1080;\n --bs-tooltip-max-width: 200px;\n --bs-tooltip-padding-x: 0.5rem;\n --bs-tooltip-padding-y: 0.25rem;\n --bs-tooltip-margin: ;\n --bs-tooltip-font-size: 0.875rem;\n --bs-tooltip-color: var(--bs-body-bg);\n --bs-tooltip-bg: var(--bs-emphasis-color);\n --bs-tooltip-border-radius: var(--bs-border-radius);\n --bs-tooltip-opacity: 0.9;\n --bs-tooltip-arrow-width: 0.8rem;\n --bs-tooltip-arrow-height: 0.4rem;\n z-index: var(--bs-tooltip-zindex);\n display: block;\n margin: var(--bs-tooltip-margin);\n font-family: var(--bs-font-sans-serif);\n font-style: normal;\n font-weight: 400;\n line-height: 1.5;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-break: normal;\n white-space: normal;\n word-spacing: normal;\n line-break: auto;\n font-size: var(--bs-tooltip-font-size);\n word-wrap: break-word;\n opacity: 0;\n}\n.tooltip.show {\n opacity: var(--bs-tooltip-opacity);\n}\n.tooltip .tooltip-arrow {\n display: block;\n width: var(--bs-tooltip-arrow-width);\n height: var(--bs-tooltip-arrow-height);\n}\n.tooltip .tooltip-arrow::before {\n position: absolute;\n content: \"\";\n border-color: transparent;\n border-style: solid;\n}\n\n.bs-tooltip-top .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow {\n bottom: calc(-1 * var(--bs-tooltip-arrow-height));\n}\n.bs-tooltip-top .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before {\n top: -1px;\n border-width: var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * 0.5) 0;\n border-top-color: var(--bs-tooltip-bg);\n}\n\n/* rtl:begin:ignore */\n.bs-tooltip-end .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow {\n left: calc(-1 * var(--bs-tooltip-arrow-height));\n width: var(--bs-tooltip-arrow-height);\n height: var(--bs-tooltip-arrow-width);\n}\n.bs-tooltip-end .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before {\n right: -1px;\n border-width: calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * 0.5) 0;\n border-right-color: var(--bs-tooltip-bg);\n}\n\n/* rtl:end:ignore */\n.bs-tooltip-bottom .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow {\n top: calc(-1 * var(--bs-tooltip-arrow-height));\n}\n.bs-tooltip-bottom .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before {\n bottom: -1px;\n border-width: 0 calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height);\n border-bottom-color: var(--bs-tooltip-bg);\n}\n\n/* rtl:begin:ignore */\n.bs-tooltip-start .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow {\n right: calc(-1 * var(--bs-tooltip-arrow-height));\n width: var(--bs-tooltip-arrow-height);\n height: var(--bs-tooltip-arrow-width);\n}\n.bs-tooltip-start .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before {\n left: -1px;\n border-width: calc(var(--bs-tooltip-arrow-width) * 0.5) 0 calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height);\n border-left-color: var(--bs-tooltip-bg);\n}\n\n/* rtl:end:ignore */\n.tooltip-inner {\n max-width: var(--bs-tooltip-max-width);\n padding: var(--bs-tooltip-padding-y) var(--bs-tooltip-padding-x);\n color: var(--bs-tooltip-color);\n text-align: center;\n background-color: var(--bs-tooltip-bg);\n border-radius: var(--bs-tooltip-border-radius);\n}\n\n.popover {\n --bs-popover-zindex: 1070;\n --bs-popover-max-width: 276px;\n --bs-popover-font-size: 0.875rem;\n --bs-popover-bg: var(--bs-body-bg);\n --bs-popover-border-width: var(--bs-border-width);\n --bs-popover-border-color: var(--bs-border-color-translucent);\n --bs-popover-border-radius: var(--bs-border-radius-lg);\n --bs-popover-inner-border-radius: calc(var(--bs-border-radius-lg) - var(--bs-border-width));\n --bs-popover-box-shadow: var(--bs-box-shadow);\n --bs-popover-header-padding-x: 1rem;\n --bs-popover-header-padding-y: 0.5rem;\n --bs-popover-header-font-size: 1rem;\n --bs-popover-header-color: inherit;\n --bs-popover-header-bg: var(--bs-secondary-bg);\n --bs-popover-body-padding-x: 1rem;\n --bs-popover-body-padding-y: 1rem;\n --bs-popover-body-color: var(--bs-body-color);\n --bs-popover-arrow-width: 1rem;\n --bs-popover-arrow-height: 0.5rem;\n --bs-popover-arrow-border: var(--bs-popover-border-color);\n z-index: var(--bs-popover-zindex);\n display: block;\n max-width: var(--bs-popover-max-width);\n font-family: var(--bs-font-sans-serif);\n font-style: normal;\n font-weight: 400;\n line-height: 1.5;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-break: normal;\n white-space: normal;\n word-spacing: normal;\n line-break: auto;\n font-size: var(--bs-popover-font-size);\n word-wrap: break-word;\n background-color: var(--bs-popover-bg);\n background-clip: padding-box;\n border: var(--bs-popover-border-width) solid var(--bs-popover-border-color);\n border-radius: var(--bs-popover-border-radius);\n}\n.popover .popover-arrow {\n display: block;\n width: var(--bs-popover-arrow-width);\n height: var(--bs-popover-arrow-height);\n}\n.popover .popover-arrow::before, .popover .popover-arrow::after {\n position: absolute;\n display: block;\n content: \"\";\n border-color: transparent;\n border-style: solid;\n border-width: 0;\n}\n\n.bs-popover-top > .popover-arrow, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow {\n bottom: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));\n}\n.bs-popover-top > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::before, .bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::after {\n border-width: var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * 0.5) 0;\n}\n.bs-popover-top > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::before {\n bottom: 0;\n border-top-color: var(--bs-popover-arrow-border);\n}\n.bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::after {\n bottom: var(--bs-popover-border-width);\n border-top-color: var(--bs-popover-bg);\n}\n\n/* rtl:begin:ignore */\n.bs-popover-end > .popover-arrow, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow {\n left: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));\n width: var(--bs-popover-arrow-height);\n height: var(--bs-popover-arrow-width);\n}\n.bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before, .bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after {\n border-width: calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * 0.5) 0;\n}\n.bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before {\n left: 0;\n border-right-color: var(--bs-popover-arrow-border);\n}\n.bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after {\n left: var(--bs-popover-border-width);\n border-right-color: var(--bs-popover-bg);\n}\n\n/* rtl:end:ignore */\n.bs-popover-bottom > .popover-arrow, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow {\n top: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));\n}\n.bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::before, .bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::after {\n border-width: 0 calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height);\n}\n.bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::before {\n top: 0;\n border-bottom-color: var(--bs-popover-arrow-border);\n}\n.bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::after {\n top: var(--bs-popover-border-width);\n border-bottom-color: var(--bs-popover-bg);\n}\n.bs-popover-bottom .popover-header::before, .bs-popover-auto[data-popper-placement^=bottom] .popover-header::before {\n position: absolute;\n top: 0;\n left: 50%;\n display: block;\n width: var(--bs-popover-arrow-width);\n margin-left: calc(-0.5 * var(--bs-popover-arrow-width));\n content: \"\";\n border-bottom: var(--bs-popover-border-width) solid var(--bs-popover-header-bg);\n}\n\n/* rtl:begin:ignore */\n.bs-popover-start > .popover-arrow, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow {\n right: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));\n width: var(--bs-popover-arrow-height);\n height: var(--bs-popover-arrow-width);\n}\n.bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before, .bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after {\n border-width: calc(var(--bs-popover-arrow-width) * 0.5) 0 calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height);\n}\n.bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before {\n right: 0;\n border-left-color: var(--bs-popover-arrow-border);\n}\n.bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after {\n right: var(--bs-popover-border-width);\n border-left-color: var(--bs-popover-bg);\n}\n\n/* rtl:end:ignore */\n.popover-header {\n padding: var(--bs-popover-header-padding-y) var(--bs-popover-header-padding-x);\n margin-bottom: 0;\n font-size: var(--bs-popover-header-font-size);\n color: var(--bs-popover-header-color);\n background-color: var(--bs-popover-header-bg);\n border-bottom: var(--bs-popover-border-width) solid var(--bs-popover-border-color);\n border-top-left-radius: var(--bs-popover-inner-border-radius);\n border-top-right-radius: var(--bs-popover-inner-border-radius);\n}\n.popover-header:empty {\n display: none;\n}\n\n.popover-body {\n padding: var(--bs-popover-body-padding-y) var(--bs-popover-body-padding-x);\n color: var(--bs-popover-body-color);\n}\n\n.carousel {\n position: relative;\n}\n\n.carousel.pointer-event {\n touch-action: pan-y;\n}\n\n.carousel-inner {\n position: relative;\n width: 100%;\n overflow: hidden;\n}\n.carousel-inner::after {\n display: block;\n clear: both;\n content: \"\";\n}\n\n.carousel-item {\n position: relative;\n display: none;\n float: left;\n width: 100%;\n margin-right: -100%;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n transition: transform 0.6s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .carousel-item {\n transition: none;\n }\n}\n\n.carousel-item.active,\n.carousel-item-next,\n.carousel-item-prev {\n display: block;\n}\n\n.carousel-item-next:not(.carousel-item-start),\n.active.carousel-item-end {\n transform: translateX(100%);\n}\n\n.carousel-item-prev:not(.carousel-item-end),\n.active.carousel-item-start {\n transform: translateX(-100%);\n}\n\n.carousel-fade .carousel-item {\n opacity: 0;\n transition-property: opacity;\n transform: none;\n}\n.carousel-fade .carousel-item.active,\n.carousel-fade .carousel-item-next.carousel-item-start,\n.carousel-fade .carousel-item-prev.carousel-item-end {\n z-index: 1;\n opacity: 1;\n}\n.carousel-fade .active.carousel-item-start,\n.carousel-fade .active.carousel-item-end {\n z-index: 0;\n opacity: 0;\n transition: opacity 0s 0.6s;\n}\n@media (prefers-reduced-motion: reduce) {\n .carousel-fade .active.carousel-item-start,\n .carousel-fade .active.carousel-item-end {\n transition: none;\n }\n}\n\n.carousel-control-prev,\n.carousel-control-next {\n position: absolute;\n top: 0;\n bottom: 0;\n z-index: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 15%;\n padding: 0;\n color: #fff;\n text-align: center;\n background: none;\n filter: var(--bs-carousel-control-icon-filter);\n border: 0;\n opacity: 0.5;\n transition: opacity 0.15s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .carousel-control-prev,\n .carousel-control-next {\n transition: none;\n }\n}\n.carousel-control-prev:hover, .carousel-control-prev:focus,\n.carousel-control-next:hover,\n.carousel-control-next:focus {\n color: #fff;\n text-decoration: none;\n outline: 0;\n opacity: 0.9;\n}\n\n.carousel-control-prev {\n left: 0;\n}\n\n.carousel-control-next {\n right: 0;\n}\n\n.carousel-control-prev-icon,\n.carousel-control-next-icon {\n display: inline-block;\n width: 2rem;\n height: 2rem;\n background-repeat: no-repeat;\n background-position: 50%;\n background-size: 100% 100%;\n}\n\n.carousel-control-prev-icon {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0'/%3e%3c/svg%3e\") /*rtl:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708'/%3e%3c/svg%3e\")*/;\n}\n\n.carousel-control-next-icon {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708'/%3e%3c/svg%3e\") /*rtl:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0'/%3e%3c/svg%3e\")*/;\n}\n\n.carousel-indicators {\n position: absolute;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 2;\n display: flex;\n justify-content: center;\n padding: 0;\n margin-right: 15%;\n margin-bottom: 1rem;\n margin-left: 15%;\n}\n.carousel-indicators [data-bs-target] {\n box-sizing: content-box;\n flex: 0 1 auto;\n width: 30px;\n height: 3px;\n padding: 0;\n margin-right: 3px;\n margin-left: 3px;\n text-indent: -999px;\n cursor: pointer;\n background-color: var(--bs-carousel-indicator-active-bg);\n background-clip: padding-box;\n border: 0;\n border-top: 10px solid transparent;\n border-bottom: 10px solid transparent;\n opacity: 0.5;\n transition: opacity 0.6s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .carousel-indicators [data-bs-target] {\n transition: none;\n }\n}\n.carousel-indicators .active {\n opacity: 1;\n}\n\n.carousel-caption {\n position: absolute;\n right: 15%;\n bottom: 1.25rem;\n left: 15%;\n padding-top: 1.25rem;\n padding-bottom: 1.25rem;\n color: var(--bs-carousel-caption-color);\n text-align: center;\n}\n\n.carousel-dark {\n --bs-carousel-indicator-active-bg: #000;\n --bs-carousel-caption-color: #000;\n --bs-carousel-control-icon-filter: invert(1) grayscale(100);\n}\n\n:root,\n[data-bs-theme=light] {\n --bs-carousel-indicator-active-bg: #fff;\n --bs-carousel-caption-color: #fff;\n --bs-carousel-control-icon-filter: ;\n}\n\n[data-bs-theme=dark] {\n --bs-carousel-indicator-active-bg: #000;\n --bs-carousel-caption-color: #000;\n --bs-carousel-control-icon-filter: invert(1) grayscale(100);\n}\n\n.spinner-grow,\n.spinner-border {\n display: inline-block;\n width: var(--bs-spinner-width);\n height: var(--bs-spinner-height);\n vertical-align: var(--bs-spinner-vertical-align);\n border-radius: 50%;\n animation: var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name);\n}\n\n@keyframes spinner-border {\n to {\n transform: rotate(360deg) /* rtl:ignore */;\n }\n}\n.spinner-border {\n --bs-spinner-width: 2rem;\n --bs-spinner-height: 2rem;\n --bs-spinner-vertical-align: -0.125em;\n --bs-spinner-border-width: 0.25em;\n --bs-spinner-animation-speed: 0.75s;\n --bs-spinner-animation-name: spinner-border;\n border: var(--bs-spinner-border-width) solid currentcolor;\n border-right-color: transparent;\n}\n\n.spinner-border-sm {\n --bs-spinner-width: 1rem;\n --bs-spinner-height: 1rem;\n --bs-spinner-border-width: 0.2em;\n}\n\n@keyframes spinner-grow {\n 0% {\n transform: scale(0);\n }\n 50% {\n opacity: 1;\n transform: none;\n }\n}\n.spinner-grow {\n --bs-spinner-width: 2rem;\n --bs-spinner-height: 2rem;\n --bs-spinner-vertical-align: -0.125em;\n --bs-spinner-animation-speed: 0.75s;\n --bs-spinner-animation-name: spinner-grow;\n background-color: currentcolor;\n opacity: 0;\n}\n\n.spinner-grow-sm {\n --bs-spinner-width: 1rem;\n --bs-spinner-height: 1rem;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .spinner-border,\n .spinner-grow {\n --bs-spinner-animation-speed: 1.5s;\n }\n}\n.offcanvas, .offcanvas-xxl, .offcanvas-xl, .offcanvas-lg, .offcanvas-md, .offcanvas-sm {\n --bs-offcanvas-zindex: 1045;\n --bs-offcanvas-width: 400px;\n --bs-offcanvas-height: 30vh;\n --bs-offcanvas-padding-x: 1rem;\n --bs-offcanvas-padding-y: 1rem;\n --bs-offcanvas-color: var(--bs-body-color);\n --bs-offcanvas-bg: var(--bs-body-bg);\n --bs-offcanvas-border-width: var(--bs-border-width);\n --bs-offcanvas-border-color: var(--bs-border-color-translucent);\n --bs-offcanvas-box-shadow: var(--bs-box-shadow-sm);\n --bs-offcanvas-transition: transform 0.3s ease-in-out;\n --bs-offcanvas-title-line-height: 1.5;\n}\n\n@media (max-width: 575.98px) {\n .offcanvas-sm {\n position: fixed;\n bottom: 0;\n z-index: var(--bs-offcanvas-zindex);\n display: flex;\n flex-direction: column;\n max-width: 100%;\n color: var(--bs-offcanvas-color);\n visibility: hidden;\n background-color: var(--bs-offcanvas-bg);\n background-clip: padding-box;\n outline: 0;\n transition: var(--bs-offcanvas-transition);\n }\n}\n@media (max-width: 575.98px) and (prefers-reduced-motion: reduce) {\n .offcanvas-sm {\n transition: none;\n }\n}\n@media (max-width: 575.98px) {\n .offcanvas-sm.offcanvas-start {\n top: 0;\n left: 0;\n width: var(--bs-offcanvas-width);\n border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateX(-100%);\n }\n .offcanvas-sm.offcanvas-end {\n top: 0;\n right: 0;\n width: var(--bs-offcanvas-width);\n border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateX(100%);\n }\n .offcanvas-sm.offcanvas-top {\n top: 0;\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateY(-100%);\n }\n .offcanvas-sm.offcanvas-bottom {\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateY(100%);\n }\n .offcanvas-sm.showing, .offcanvas-sm.show:not(.hiding) {\n transform: none;\n }\n .offcanvas-sm.showing, .offcanvas-sm.hiding, .offcanvas-sm.show {\n visibility: visible;\n }\n}\n@media (min-width: 576px) {\n .offcanvas-sm {\n --bs-offcanvas-height: auto;\n --bs-offcanvas-border-width: 0;\n background-color: transparent !important;\n }\n .offcanvas-sm .offcanvas-header {\n display: none;\n }\n .offcanvas-sm .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n background-color: transparent !important;\n }\n}\n\n@media (max-width: 767.98px) {\n .offcanvas-md {\n position: fixed;\n bottom: 0;\n z-index: var(--bs-offcanvas-zindex);\n display: flex;\n flex-direction: column;\n max-width: 100%;\n color: var(--bs-offcanvas-color);\n visibility: hidden;\n background-color: var(--bs-offcanvas-bg);\n background-clip: padding-box;\n outline: 0;\n transition: var(--bs-offcanvas-transition);\n }\n}\n@media (max-width: 767.98px) and (prefers-reduced-motion: reduce) {\n .offcanvas-md {\n transition: none;\n }\n}\n@media (max-width: 767.98px) {\n .offcanvas-md.offcanvas-start {\n top: 0;\n left: 0;\n width: var(--bs-offcanvas-width);\n border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateX(-100%);\n }\n .offcanvas-md.offcanvas-end {\n top: 0;\n right: 0;\n width: var(--bs-offcanvas-width);\n border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateX(100%);\n }\n .offcanvas-md.offcanvas-top {\n top: 0;\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateY(-100%);\n }\n .offcanvas-md.offcanvas-bottom {\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateY(100%);\n }\n .offcanvas-md.showing, .offcanvas-md.show:not(.hiding) {\n transform: none;\n }\n .offcanvas-md.showing, .offcanvas-md.hiding, .offcanvas-md.show {\n visibility: visible;\n }\n}\n@media (min-width: 768px) {\n .offcanvas-md {\n --bs-offcanvas-height: auto;\n --bs-offcanvas-border-width: 0;\n background-color: transparent !important;\n }\n .offcanvas-md .offcanvas-header {\n display: none;\n }\n .offcanvas-md .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n background-color: transparent !important;\n }\n}\n\n@media (max-width: 991.98px) {\n .offcanvas-lg {\n position: fixed;\n bottom: 0;\n z-index: var(--bs-offcanvas-zindex);\n display: flex;\n flex-direction: column;\n max-width: 100%;\n color: var(--bs-offcanvas-color);\n visibility: hidden;\n background-color: var(--bs-offcanvas-bg);\n background-clip: padding-box;\n outline: 0;\n transition: var(--bs-offcanvas-transition);\n }\n}\n@media (max-width: 991.98px) and (prefers-reduced-motion: reduce) {\n .offcanvas-lg {\n transition: none;\n }\n}\n@media (max-width: 991.98px) {\n .offcanvas-lg.offcanvas-start {\n top: 0;\n left: 0;\n width: var(--bs-offcanvas-width);\n border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateX(-100%);\n }\n .offcanvas-lg.offcanvas-end {\n top: 0;\n right: 0;\n width: var(--bs-offcanvas-width);\n border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateX(100%);\n }\n .offcanvas-lg.offcanvas-top {\n top: 0;\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateY(-100%);\n }\n .offcanvas-lg.offcanvas-bottom {\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateY(100%);\n }\n .offcanvas-lg.showing, .offcanvas-lg.show:not(.hiding) {\n transform: none;\n }\n .offcanvas-lg.showing, .offcanvas-lg.hiding, .offcanvas-lg.show {\n visibility: visible;\n }\n}\n@media (min-width: 992px) {\n .offcanvas-lg {\n --bs-offcanvas-height: auto;\n --bs-offcanvas-border-width: 0;\n background-color: transparent !important;\n }\n .offcanvas-lg .offcanvas-header {\n display: none;\n }\n .offcanvas-lg .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n background-color: transparent !important;\n }\n}\n\n@media (max-width: 1199.98px) {\n .offcanvas-xl {\n position: fixed;\n bottom: 0;\n z-index: var(--bs-offcanvas-zindex);\n display: flex;\n flex-direction: column;\n max-width: 100%;\n color: var(--bs-offcanvas-color);\n visibility: hidden;\n background-color: var(--bs-offcanvas-bg);\n background-clip: padding-box;\n outline: 0;\n transition: var(--bs-offcanvas-transition);\n }\n}\n@media (max-width: 1199.98px) and (prefers-reduced-motion: reduce) {\n .offcanvas-xl {\n transition: none;\n }\n}\n@media (max-width: 1199.98px) {\n .offcanvas-xl.offcanvas-start {\n top: 0;\n left: 0;\n width: var(--bs-offcanvas-width);\n border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateX(-100%);\n }\n .offcanvas-xl.offcanvas-end {\n top: 0;\n right: 0;\n width: var(--bs-offcanvas-width);\n border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateX(100%);\n }\n .offcanvas-xl.offcanvas-top {\n top: 0;\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateY(-100%);\n }\n .offcanvas-xl.offcanvas-bottom {\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateY(100%);\n }\n .offcanvas-xl.showing, .offcanvas-xl.show:not(.hiding) {\n transform: none;\n }\n .offcanvas-xl.showing, .offcanvas-xl.hiding, .offcanvas-xl.show {\n visibility: visible;\n }\n}\n@media (min-width: 1200px) {\n .offcanvas-xl {\n --bs-offcanvas-height: auto;\n --bs-offcanvas-border-width: 0;\n background-color: transparent !important;\n }\n .offcanvas-xl .offcanvas-header {\n display: none;\n }\n .offcanvas-xl .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n background-color: transparent !important;\n }\n}\n\n@media (max-width: 1399.98px) {\n .offcanvas-xxl {\n position: fixed;\n bottom: 0;\n z-index: var(--bs-offcanvas-zindex);\n display: flex;\n flex-direction: column;\n max-width: 100%;\n color: var(--bs-offcanvas-color);\n visibility: hidden;\n background-color: var(--bs-offcanvas-bg);\n background-clip: padding-box;\n outline: 0;\n transition: var(--bs-offcanvas-transition);\n }\n}\n@media (max-width: 1399.98px) and (prefers-reduced-motion: reduce) {\n .offcanvas-xxl {\n transition: none;\n }\n}\n@media (max-width: 1399.98px) {\n .offcanvas-xxl.offcanvas-start {\n top: 0;\n left: 0;\n width: var(--bs-offcanvas-width);\n border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateX(-100%);\n }\n .offcanvas-xxl.offcanvas-end {\n top: 0;\n right: 0;\n width: var(--bs-offcanvas-width);\n border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateX(100%);\n }\n .offcanvas-xxl.offcanvas-top {\n top: 0;\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateY(-100%);\n }\n .offcanvas-xxl.offcanvas-bottom {\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateY(100%);\n }\n .offcanvas-xxl.showing, .offcanvas-xxl.show:not(.hiding) {\n transform: none;\n }\n .offcanvas-xxl.showing, .offcanvas-xxl.hiding, .offcanvas-xxl.show {\n visibility: visible;\n }\n}\n@media (min-width: 1400px) {\n .offcanvas-xxl {\n --bs-offcanvas-height: auto;\n --bs-offcanvas-border-width: 0;\n background-color: transparent !important;\n }\n .offcanvas-xxl .offcanvas-header {\n display: none;\n }\n .offcanvas-xxl .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n background-color: transparent !important;\n }\n}\n\n.offcanvas {\n position: fixed;\n bottom: 0;\n z-index: var(--bs-offcanvas-zindex);\n display: flex;\n flex-direction: column;\n max-width: 100%;\n color: var(--bs-offcanvas-color);\n visibility: hidden;\n background-color: var(--bs-offcanvas-bg);\n background-clip: padding-box;\n outline: 0;\n transition: var(--bs-offcanvas-transition);\n}\n@media (prefers-reduced-motion: reduce) {\n .offcanvas {\n transition: none;\n }\n}\n.offcanvas.offcanvas-start {\n top: 0;\n left: 0;\n width: var(--bs-offcanvas-width);\n border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateX(-100%);\n}\n.offcanvas.offcanvas-end {\n top: 0;\n right: 0;\n width: var(--bs-offcanvas-width);\n border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateX(100%);\n}\n.offcanvas.offcanvas-top {\n top: 0;\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateY(-100%);\n}\n.offcanvas.offcanvas-bottom {\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateY(100%);\n}\n.offcanvas.showing, .offcanvas.show:not(.hiding) {\n transform: none;\n}\n.offcanvas.showing, .offcanvas.hiding, .offcanvas.show {\n visibility: visible;\n}\n\n.offcanvas-backdrop {\n position: fixed;\n top: 0;\n left: 0;\n z-index: 1040;\n width: 100vw;\n height: 100vh;\n background-color: #000;\n}\n.offcanvas-backdrop.fade {\n opacity: 0;\n}\n.offcanvas-backdrop.show {\n opacity: 0.5;\n}\n\n.offcanvas-header {\n display: flex;\n align-items: center;\n padding: var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);\n}\n.offcanvas-header .btn-close {\n padding: calc(var(--bs-offcanvas-padding-y) * 0.5) calc(var(--bs-offcanvas-padding-x) * 0.5);\n margin-top: calc(-0.5 * var(--bs-offcanvas-padding-y));\n margin-right: calc(-0.5 * var(--bs-offcanvas-padding-x));\n margin-bottom: calc(-0.5 * var(--bs-offcanvas-padding-y));\n margin-left: auto;\n}\n\n.offcanvas-title {\n margin-bottom: 0;\n line-height: var(--bs-offcanvas-title-line-height);\n}\n\n.offcanvas-body {\n flex-grow: 1;\n padding: var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);\n overflow-y: auto;\n}\n\n.placeholder {\n display: inline-block;\n min-height: 1em;\n vertical-align: middle;\n cursor: wait;\n background-color: currentcolor;\n opacity: 0.5;\n}\n.placeholder.btn::before {\n display: inline-block;\n content: \"\";\n}\n\n.placeholder-xs {\n min-height: 0.6em;\n}\n\n.placeholder-sm {\n min-height: 0.8em;\n}\n\n.placeholder-lg {\n min-height: 1.2em;\n}\n\n.placeholder-glow .placeholder {\n animation: placeholder-glow 2s ease-in-out infinite;\n}\n\n@keyframes placeholder-glow {\n 50% {\n opacity: 0.2;\n }\n}\n.placeholder-wave {\n -webkit-mask-image: linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);\n mask-image: linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);\n -webkit-mask-size: 200% 100%;\n mask-size: 200% 100%;\n animation: placeholder-wave 2s linear infinite;\n}\n\n@keyframes placeholder-wave {\n 100% {\n -webkit-mask-position: -200% 0%;\n mask-position: -200% 0%;\n }\n}\n.clearfix::after {\n display: block;\n clear: both;\n content: \"\";\n}\n\n.text-bg-primary {\n color: #fff !important;\n background-color: RGBA(var(--bs-primary-rgb), var(--bs-bg-opacity, 1)) !important;\n}\n\n.text-bg-secondary {\n color: #fff !important;\n background-color: RGBA(var(--bs-secondary-rgb), var(--bs-bg-opacity, 1)) !important;\n}\n\n.text-bg-success {\n color: #fff !important;\n background-color: RGBA(var(--bs-success-rgb), var(--bs-bg-opacity, 1)) !important;\n}\n\n.text-bg-info {\n color: #000 !important;\n background-color: RGBA(var(--bs-info-rgb), var(--bs-bg-opacity, 1)) !important;\n}\n\n.text-bg-warning {\n color: #000 !important;\n background-color: RGBA(var(--bs-warning-rgb), var(--bs-bg-opacity, 1)) !important;\n}\n\n.text-bg-danger {\n color: #fff !important;\n background-color: RGBA(var(--bs-danger-rgb), var(--bs-bg-opacity, 1)) !important;\n}\n\n.text-bg-light {\n color: #000 !important;\n background-color: RGBA(var(--bs-light-rgb), var(--bs-bg-opacity, 1)) !important;\n}\n\n.text-bg-dark {\n color: #fff !important;\n background-color: RGBA(var(--bs-dark-rgb), var(--bs-bg-opacity, 1)) !important;\n}\n\n.link-primary {\n color: RGBA(var(--bs-primary-rgb), var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-primary-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--bs-primary-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-primary:hover, .link-primary:focus {\n color: RGBA(10, 88, 202, var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(10, 88, 202, var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(10, 88, 202, var(--bs-link-underline-opacity, 1)) !important;\n}\n\n.link-secondary {\n color: RGBA(var(--bs-secondary-rgb), var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-secondary-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--bs-secondary-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-secondary:hover, .link-secondary:focus {\n color: RGBA(86, 94, 100, var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(86, 94, 100, var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(86, 94, 100, var(--bs-link-underline-opacity, 1)) !important;\n}\n\n.link-success {\n color: RGBA(var(--bs-success-rgb), var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-success-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--bs-success-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-success:hover, .link-success:focus {\n color: RGBA(20, 108, 67, var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(20, 108, 67, var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(20, 108, 67, var(--bs-link-underline-opacity, 1)) !important;\n}\n\n.link-info {\n color: RGBA(var(--bs-info-rgb), var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-info-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--bs-info-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-info:hover, .link-info:focus {\n color: RGBA(61, 213, 243, var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(61, 213, 243, var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(61, 213, 243, var(--bs-link-underline-opacity, 1)) !important;\n}\n\n.link-warning {\n color: RGBA(var(--bs-warning-rgb), var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-warning-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--bs-warning-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-warning:hover, .link-warning:focus {\n color: RGBA(255, 205, 57, var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(255, 205, 57, var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(255, 205, 57, var(--bs-link-underline-opacity, 1)) !important;\n}\n\n.link-danger {\n color: RGBA(var(--bs-danger-rgb), var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-danger-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--bs-danger-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-danger:hover, .link-danger:focus {\n color: RGBA(176, 42, 55, var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(176, 42, 55, var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(176, 42, 55, var(--bs-link-underline-opacity, 1)) !important;\n}\n\n.link-light {\n color: RGBA(var(--bs-light-rgb), var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-light-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--bs-light-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-light:hover, .link-light:focus {\n color: RGBA(249, 250, 251, var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(249, 250, 251, var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(249, 250, 251, var(--bs-link-underline-opacity, 1)) !important;\n}\n\n.link-dark {\n color: RGBA(var(--bs-dark-rgb), var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-dark-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--bs-dark-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-dark:hover, .link-dark:focus {\n color: RGBA(26, 30, 33, var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(26, 30, 33, var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(26, 30, 33, var(--bs-link-underline-opacity, 1)) !important;\n}\n\n.link-body-emphasis {\n color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-body-emphasis:hover, .link-body-emphasis:focus {\n color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 0.75)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 0.75)) !important;\n text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 0.75)) !important;\n}\n\n.focus-ring:focus {\n outline: 0;\n box-shadow: var(--bs-focus-ring-x, 0) var(--bs-focus-ring-y, 0) var(--bs-focus-ring-blur, 0) var(--bs-focus-ring-width) var(--bs-focus-ring-color);\n}\n\n.icon-link {\n display: inline-flex;\n gap: 0.375rem;\n align-items: center;\n -webkit-text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 0.5));\n text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 0.5));\n text-underline-offset: 0.25em;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n}\n.icon-link > .bi {\n flex-shrink: 0;\n width: 1em;\n height: 1em;\n fill: currentcolor;\n transition: 0.2s ease-in-out transform;\n}\n@media (prefers-reduced-motion: reduce) {\n .icon-link > .bi {\n transition: none;\n }\n}\n\n.icon-link-hover:hover > .bi, .icon-link-hover:focus-visible > .bi {\n transform: var(--bs-icon-link-transform, translate3d(0.25em, 0, 0));\n}\n\n.ratio {\n position: relative;\n width: 100%;\n}\n.ratio::before {\n display: block;\n padding-top: var(--bs-aspect-ratio);\n content: \"\";\n}\n.ratio > * {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n}\n\n.ratio-1x1 {\n --bs-aspect-ratio: 100%;\n}\n\n.ratio-4x3 {\n --bs-aspect-ratio: 75%;\n}\n\n.ratio-16x9 {\n --bs-aspect-ratio: 56.25%;\n}\n\n.ratio-21x9 {\n --bs-aspect-ratio: 42.8571428571%;\n}\n\n.fixed-top {\n position: fixed;\n top: 0;\n right: 0;\n left: 0;\n z-index: 1030;\n}\n\n.fixed-bottom {\n position: fixed;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1030;\n}\n\n.sticky-top {\n position: -webkit-sticky;\n position: sticky;\n top: 0;\n z-index: 1020;\n}\n\n.sticky-bottom {\n position: -webkit-sticky;\n position: sticky;\n bottom: 0;\n z-index: 1020;\n}\n\n@media (min-width: 576px) {\n .sticky-sm-top {\n position: -webkit-sticky;\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n .sticky-sm-bottom {\n position: -webkit-sticky;\n position: sticky;\n bottom: 0;\n z-index: 1020;\n }\n}\n@media (min-width: 768px) {\n .sticky-md-top {\n position: -webkit-sticky;\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n .sticky-md-bottom {\n position: -webkit-sticky;\n position: sticky;\n bottom: 0;\n z-index: 1020;\n }\n}\n@media (min-width: 992px) {\n .sticky-lg-top {\n position: -webkit-sticky;\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n .sticky-lg-bottom {\n position: -webkit-sticky;\n position: sticky;\n bottom: 0;\n z-index: 1020;\n }\n}\n@media (min-width: 1200px) {\n .sticky-xl-top {\n position: -webkit-sticky;\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n .sticky-xl-bottom {\n position: -webkit-sticky;\n position: sticky;\n bottom: 0;\n z-index: 1020;\n }\n}\n@media (min-width: 1400px) {\n .sticky-xxl-top {\n position: -webkit-sticky;\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n .sticky-xxl-bottom {\n position: -webkit-sticky;\n position: sticky;\n bottom: 0;\n z-index: 1020;\n }\n}\n.hstack {\n display: flex;\n flex-direction: row;\n align-items: center;\n align-self: stretch;\n}\n\n.vstack {\n display: flex;\n flex: 1 1 auto;\n flex-direction: column;\n align-self: stretch;\n}\n\n.visually-hidden,\n.visually-hidden-focusable:not(:focus):not(:focus-within) {\n width: 1px !important;\n height: 1px !important;\n padding: 0 !important;\n margin: -1px !important;\n overflow: hidden !important;\n clip: rect(0, 0, 0, 0) !important;\n white-space: nowrap !important;\n border: 0 !important;\n}\n.visually-hidden:not(caption),\n.visually-hidden-focusable:not(:focus):not(:focus-within):not(caption) {\n position: absolute !important;\n}\n.visually-hidden *,\n.visually-hidden-focusable:not(:focus):not(:focus-within) * {\n overflow: hidden !important;\n}\n\n.stretched-link::after {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1;\n content: \"\";\n}\n\n.text-truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.vr {\n display: inline-block;\n align-self: stretch;\n width: var(--bs-border-width);\n min-height: 1em;\n background-color: currentcolor;\n opacity: 0.25;\n}\n\n.align-baseline {\n vertical-align: baseline !important;\n}\n\n.align-top {\n vertical-align: top !important;\n}\n\n.align-middle {\n vertical-align: middle !important;\n}\n\n.align-bottom {\n vertical-align: bottom !important;\n}\n\n.align-text-bottom {\n vertical-align: text-bottom !important;\n}\n\n.align-text-top {\n vertical-align: text-top !important;\n}\n\n.float-start {\n float: left !important;\n}\n\n.float-end {\n float: right !important;\n}\n\n.float-none {\n float: none !important;\n}\n\n.object-fit-contain {\n -o-object-fit: contain !important;\n object-fit: contain !important;\n}\n\n.object-fit-cover {\n -o-object-fit: cover !important;\n object-fit: cover !important;\n}\n\n.object-fit-fill {\n -o-object-fit: fill !important;\n object-fit: fill !important;\n}\n\n.object-fit-scale {\n -o-object-fit: scale-down !important;\n object-fit: scale-down !important;\n}\n\n.object-fit-none {\n -o-object-fit: none !important;\n object-fit: none !important;\n}\n\n.opacity-0 {\n opacity: 0 !important;\n}\n\n.opacity-25 {\n opacity: 0.25 !important;\n}\n\n.opacity-50 {\n opacity: 0.5 !important;\n}\n\n.opacity-75 {\n opacity: 0.75 !important;\n}\n\n.opacity-100 {\n opacity: 1 !important;\n}\n\n.overflow-auto {\n overflow: auto !important;\n}\n\n.overflow-hidden {\n overflow: hidden !important;\n}\n\n.overflow-visible {\n overflow: visible !important;\n}\n\n.overflow-scroll {\n overflow: scroll !important;\n}\n\n.overflow-x-auto {\n overflow-x: auto !important;\n}\n\n.overflow-x-hidden {\n overflow-x: hidden !important;\n}\n\n.overflow-x-visible {\n overflow-x: visible !important;\n}\n\n.overflow-x-scroll {\n overflow-x: scroll !important;\n}\n\n.overflow-y-auto {\n overflow-y: auto !important;\n}\n\n.overflow-y-hidden {\n overflow-y: hidden !important;\n}\n\n.overflow-y-visible {\n overflow-y: visible !important;\n}\n\n.overflow-y-scroll {\n overflow-y: scroll !important;\n}\n\n.d-inline {\n display: inline !important;\n}\n\n.d-inline-block {\n display: inline-block !important;\n}\n\n.d-block {\n display: block !important;\n}\n\n.d-grid {\n display: grid !important;\n}\n\n.d-inline-grid {\n display: inline-grid !important;\n}\n\n.d-table {\n display: table !important;\n}\n\n.d-table-row {\n display: table-row !important;\n}\n\n.d-table-cell {\n display: table-cell !important;\n}\n\n.d-flex {\n display: flex !important;\n}\n\n.d-inline-flex {\n display: inline-flex !important;\n}\n\n.d-none {\n display: none !important;\n}\n\n.shadow {\n box-shadow: var(--bs-box-shadow) !important;\n}\n\n.shadow-sm {\n box-shadow: var(--bs-box-shadow-sm) !important;\n}\n\n.shadow-lg {\n box-shadow: var(--bs-box-shadow-lg) !important;\n}\n\n.shadow-none {\n box-shadow: none !important;\n}\n\n.focus-ring-primary {\n --bs-focus-ring-color: rgba(var(--bs-primary-rgb), var(--bs-focus-ring-opacity));\n}\n\n.focus-ring-secondary {\n --bs-focus-ring-color: rgba(var(--bs-secondary-rgb), var(--bs-focus-ring-opacity));\n}\n\n.focus-ring-success {\n --bs-focus-ring-color: rgba(var(--bs-success-rgb), var(--bs-focus-ring-opacity));\n}\n\n.focus-ring-info {\n --bs-focus-ring-color: rgba(var(--bs-info-rgb), var(--bs-focus-ring-opacity));\n}\n\n.focus-ring-warning {\n --bs-focus-ring-color: rgba(var(--bs-warning-rgb), var(--bs-focus-ring-opacity));\n}\n\n.focus-ring-danger {\n --bs-focus-ring-color: rgba(var(--bs-danger-rgb), var(--bs-focus-ring-opacity));\n}\n\n.focus-ring-light {\n --bs-focus-ring-color: rgba(var(--bs-light-rgb), var(--bs-focus-ring-opacity));\n}\n\n.focus-ring-dark {\n --bs-focus-ring-color: rgba(var(--bs-dark-rgb), var(--bs-focus-ring-opacity));\n}\n\n.position-static {\n position: static !important;\n}\n\n.position-relative {\n position: relative !important;\n}\n\n.position-absolute {\n position: absolute !important;\n}\n\n.position-fixed {\n position: fixed !important;\n}\n\n.position-sticky {\n position: -webkit-sticky !important;\n position: sticky !important;\n}\n\n.top-0 {\n top: 0 !important;\n}\n\n.top-50 {\n top: 50% !important;\n}\n\n.top-100 {\n top: 100% !important;\n}\n\n.bottom-0 {\n bottom: 0 !important;\n}\n\n.bottom-50 {\n bottom: 50% !important;\n}\n\n.bottom-100 {\n bottom: 100% !important;\n}\n\n.start-0 {\n left: 0 !important;\n}\n\n.start-50 {\n left: 50% !important;\n}\n\n.start-100 {\n left: 100% !important;\n}\n\n.end-0 {\n right: 0 !important;\n}\n\n.end-50 {\n right: 50% !important;\n}\n\n.end-100 {\n right: 100% !important;\n}\n\n.translate-middle {\n transform: translate(-50%, -50%) !important;\n}\n\n.translate-middle-x {\n transform: translateX(-50%) !important;\n}\n\n.translate-middle-y {\n transform: translateY(-50%) !important;\n}\n\n.border {\n border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;\n}\n\n.border-0 {\n border: 0 !important;\n}\n\n.border-top {\n border-top: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;\n}\n\n.border-top-0 {\n border-top: 0 !important;\n}\n\n.border-end {\n border-right: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;\n}\n\n.border-end-0 {\n border-right: 0 !important;\n}\n\n.border-bottom {\n border-bottom: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;\n}\n\n.border-bottom-0 {\n border-bottom: 0 !important;\n}\n\n.border-start {\n border-left: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;\n}\n\n.border-start-0 {\n border-left: 0 !important;\n}\n\n.border-primary {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-primary-rgb), var(--bs-border-opacity)) !important;\n}\n\n.border-secondary {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-secondary-rgb), var(--bs-border-opacity)) !important;\n}\n\n.border-success {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-success-rgb), var(--bs-border-opacity)) !important;\n}\n\n.border-info {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-info-rgb), var(--bs-border-opacity)) !important;\n}\n\n.border-warning {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-warning-rgb), var(--bs-border-opacity)) !important;\n}\n\n.border-danger {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-danger-rgb), var(--bs-border-opacity)) !important;\n}\n\n.border-light {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-light-rgb), var(--bs-border-opacity)) !important;\n}\n\n.border-dark {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-dark-rgb), var(--bs-border-opacity)) !important;\n}\n\n.border-black {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-black-rgb), var(--bs-border-opacity)) !important;\n}\n\n.border-white {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-white-rgb), var(--bs-border-opacity)) !important;\n}\n\n.border-primary-subtle {\n border-color: var(--bs-primary-border-subtle) !important;\n}\n\n.border-secondary-subtle {\n border-color: var(--bs-secondary-border-subtle) !important;\n}\n\n.border-success-subtle {\n border-color: var(--bs-success-border-subtle) !important;\n}\n\n.border-info-subtle {\n border-color: var(--bs-info-border-subtle) !important;\n}\n\n.border-warning-subtle {\n border-color: var(--bs-warning-border-subtle) !important;\n}\n\n.border-danger-subtle {\n border-color: var(--bs-danger-border-subtle) !important;\n}\n\n.border-light-subtle {\n border-color: var(--bs-light-border-subtle) !important;\n}\n\n.border-dark-subtle {\n border-color: var(--bs-dark-border-subtle) !important;\n}\n\n.border-1 {\n border-width: 1px !important;\n}\n\n.border-2 {\n border-width: 2px !important;\n}\n\n.border-3 {\n border-width: 3px !important;\n}\n\n.border-4 {\n border-width: 4px !important;\n}\n\n.border-5 {\n border-width: 5px !important;\n}\n\n.border-opacity-10 {\n --bs-border-opacity: 0.1;\n}\n\n.border-opacity-25 {\n --bs-border-opacity: 0.25;\n}\n\n.border-opacity-50 {\n --bs-border-opacity: 0.5;\n}\n\n.border-opacity-75 {\n --bs-border-opacity: 0.75;\n}\n\n.border-opacity-100 {\n --bs-border-opacity: 1;\n}\n\n.w-25 {\n width: 25% !important;\n}\n\n.w-50 {\n width: 50% !important;\n}\n\n.w-75 {\n width: 75% !important;\n}\n\n.w-100 {\n width: 100% !important;\n}\n\n.w-auto {\n width: auto !important;\n}\n\n.mw-100 {\n max-width: 100% !important;\n}\n\n.vw-100 {\n width: 100vw !important;\n}\n\n.min-vw-100 {\n min-width: 100vw !important;\n}\n\n.h-25 {\n height: 25% !important;\n}\n\n.h-50 {\n height: 50% !important;\n}\n\n.h-75 {\n height: 75% !important;\n}\n\n.h-100 {\n height: 100% !important;\n}\n\n.h-auto {\n height: auto !important;\n}\n\n.mh-100 {\n max-height: 100% !important;\n}\n\n.vh-100 {\n height: 100vh !important;\n}\n\n.min-vh-100 {\n min-height: 100vh !important;\n}\n\n.flex-fill {\n flex: 1 1 auto !important;\n}\n\n.flex-row {\n flex-direction: row !important;\n}\n\n.flex-column {\n flex-direction: column !important;\n}\n\n.flex-row-reverse {\n flex-direction: row-reverse !important;\n}\n\n.flex-column-reverse {\n flex-direction: column-reverse !important;\n}\n\n.flex-grow-0 {\n flex-grow: 0 !important;\n}\n\n.flex-grow-1 {\n flex-grow: 1 !important;\n}\n\n.flex-shrink-0 {\n flex-shrink: 0 !important;\n}\n\n.flex-shrink-1 {\n flex-shrink: 1 !important;\n}\n\n.flex-wrap {\n flex-wrap: wrap !important;\n}\n\n.flex-nowrap {\n flex-wrap: nowrap !important;\n}\n\n.flex-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n}\n\n.justify-content-start {\n justify-content: flex-start !important;\n}\n\n.justify-content-end {\n justify-content: flex-end !important;\n}\n\n.justify-content-center {\n justify-content: center !important;\n}\n\n.justify-content-between {\n justify-content: space-between !important;\n}\n\n.justify-content-around {\n justify-content: space-around !important;\n}\n\n.justify-content-evenly {\n justify-content: space-evenly !important;\n}\n\n.align-items-start {\n align-items: flex-start !important;\n}\n\n.align-items-end {\n align-items: flex-end !important;\n}\n\n.align-items-center {\n align-items: center !important;\n}\n\n.align-items-baseline {\n align-items: baseline !important;\n}\n\n.align-items-stretch {\n align-items: stretch !important;\n}\n\n.align-content-start {\n align-content: flex-start !important;\n}\n\n.align-content-end {\n align-content: flex-end !important;\n}\n\n.align-content-center {\n align-content: center !important;\n}\n\n.align-content-between {\n align-content: space-between !important;\n}\n\n.align-content-around {\n align-content: space-around !important;\n}\n\n.align-content-stretch {\n align-content: stretch !important;\n}\n\n.align-self-auto {\n align-self: auto !important;\n}\n\n.align-self-start {\n align-self: flex-start !important;\n}\n\n.align-self-end {\n align-self: flex-end !important;\n}\n\n.align-self-center {\n align-self: center !important;\n}\n\n.align-self-baseline {\n align-self: baseline !important;\n}\n\n.align-self-stretch {\n align-self: stretch !important;\n}\n\n.order-first {\n order: -1 !important;\n}\n\n.order-0 {\n order: 0 !important;\n}\n\n.order-1 {\n order: 1 !important;\n}\n\n.order-2 {\n order: 2 !important;\n}\n\n.order-3 {\n order: 3 !important;\n}\n\n.order-4 {\n order: 4 !important;\n}\n\n.order-5 {\n order: 5 !important;\n}\n\n.order-last {\n order: 6 !important;\n}\n\n.m-0 {\n margin: 0 !important;\n}\n\n.m-1 {\n margin: 0.25rem !important;\n}\n\n.m-2 {\n margin: 0.5rem !important;\n}\n\n.m-3 {\n margin: 1rem !important;\n}\n\n.m-4 {\n margin: 1.5rem !important;\n}\n\n.m-5 {\n margin: 3rem !important;\n}\n\n.m-auto {\n margin: auto !important;\n}\n\n.mx-0 {\n margin-right: 0 !important;\n margin-left: 0 !important;\n}\n\n.mx-1 {\n margin-right: 0.25rem !important;\n margin-left: 0.25rem !important;\n}\n\n.mx-2 {\n margin-right: 0.5rem !important;\n margin-left: 0.5rem !important;\n}\n\n.mx-3 {\n margin-right: 1rem !important;\n margin-left: 1rem !important;\n}\n\n.mx-4 {\n margin-right: 1.5rem !important;\n margin-left: 1.5rem !important;\n}\n\n.mx-5 {\n margin-right: 3rem !important;\n margin-left: 3rem !important;\n}\n\n.mx-auto {\n margin-right: auto !important;\n margin-left: auto !important;\n}\n\n.my-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n}\n\n.my-1 {\n margin-top: 0.25rem !important;\n margin-bottom: 0.25rem !important;\n}\n\n.my-2 {\n margin-top: 0.5rem !important;\n margin-bottom: 0.5rem !important;\n}\n\n.my-3 {\n margin-top: 1rem !important;\n margin-bottom: 1rem !important;\n}\n\n.my-4 {\n margin-top: 1.5rem !important;\n margin-bottom: 1.5rem !important;\n}\n\n.my-5 {\n margin-top: 3rem !important;\n margin-bottom: 3rem !important;\n}\n\n.my-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n}\n\n.mt-0 {\n margin-top: 0 !important;\n}\n\n.mt-1 {\n margin-top: 0.25rem !important;\n}\n\n.mt-2 {\n margin-top: 0.5rem !important;\n}\n\n.mt-3 {\n margin-top: 1rem !important;\n}\n\n.mt-4 {\n margin-top: 1.5rem !important;\n}\n\n.mt-5 {\n margin-top: 3rem !important;\n}\n\n.mt-auto {\n margin-top: auto !important;\n}\n\n.me-0 {\n margin-right: 0 !important;\n}\n\n.me-1 {\n margin-right: 0.25rem !important;\n}\n\n.me-2 {\n margin-right: 0.5rem !important;\n}\n\n.me-3 {\n margin-right: 1rem !important;\n}\n\n.me-4 {\n margin-right: 1.5rem !important;\n}\n\n.me-5 {\n margin-right: 3rem !important;\n}\n\n.me-auto {\n margin-right: auto !important;\n}\n\n.mb-0 {\n margin-bottom: 0 !important;\n}\n\n.mb-1 {\n margin-bottom: 0.25rem !important;\n}\n\n.mb-2 {\n margin-bottom: 0.5rem !important;\n}\n\n.mb-3 {\n margin-bottom: 1rem !important;\n}\n\n.mb-4 {\n margin-bottom: 1.5rem !important;\n}\n\n.mb-5 {\n margin-bottom: 3rem !important;\n}\n\n.mb-auto {\n margin-bottom: auto !important;\n}\n\n.ms-0 {\n margin-left: 0 !important;\n}\n\n.ms-1 {\n margin-left: 0.25rem !important;\n}\n\n.ms-2 {\n margin-left: 0.5rem !important;\n}\n\n.ms-3 {\n margin-left: 1rem !important;\n}\n\n.ms-4 {\n margin-left: 1.5rem !important;\n}\n\n.ms-5 {\n margin-left: 3rem !important;\n}\n\n.ms-auto {\n margin-left: auto !important;\n}\n\n.p-0 {\n padding: 0 !important;\n}\n\n.p-1 {\n padding: 0.25rem !important;\n}\n\n.p-2 {\n padding: 0.5rem !important;\n}\n\n.p-3 {\n padding: 1rem !important;\n}\n\n.p-4 {\n padding: 1.5rem !important;\n}\n\n.p-5 {\n padding: 3rem !important;\n}\n\n.px-0 {\n padding-right: 0 !important;\n padding-left: 0 !important;\n}\n\n.px-1 {\n padding-right: 0.25rem !important;\n padding-left: 0.25rem !important;\n}\n\n.px-2 {\n padding-right: 0.5rem !important;\n padding-left: 0.5rem !important;\n}\n\n.px-3 {\n padding-right: 1rem !important;\n padding-left: 1rem !important;\n}\n\n.px-4 {\n padding-right: 1.5rem !important;\n padding-left: 1.5rem !important;\n}\n\n.px-5 {\n padding-right: 3rem !important;\n padding-left: 3rem !important;\n}\n\n.py-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n}\n\n.py-1 {\n padding-top: 0.25rem !important;\n padding-bottom: 0.25rem !important;\n}\n\n.py-2 {\n padding-top: 0.5rem !important;\n padding-bottom: 0.5rem !important;\n}\n\n.py-3 {\n padding-top: 1rem !important;\n padding-bottom: 1rem !important;\n}\n\n.py-4 {\n padding-top: 1.5rem !important;\n padding-bottom: 1.5rem !important;\n}\n\n.py-5 {\n padding-top: 3rem !important;\n padding-bottom: 3rem !important;\n}\n\n.pt-0 {\n padding-top: 0 !important;\n}\n\n.pt-1 {\n padding-top: 0.25rem !important;\n}\n\n.pt-2 {\n padding-top: 0.5rem !important;\n}\n\n.pt-3 {\n padding-top: 1rem !important;\n}\n\n.pt-4 {\n padding-top: 1.5rem !important;\n}\n\n.pt-5 {\n padding-top: 3rem !important;\n}\n\n.pe-0 {\n padding-right: 0 !important;\n}\n\n.pe-1 {\n padding-right: 0.25rem !important;\n}\n\n.pe-2 {\n padding-right: 0.5rem !important;\n}\n\n.pe-3 {\n padding-right: 1rem !important;\n}\n\n.pe-4 {\n padding-right: 1.5rem !important;\n}\n\n.pe-5 {\n padding-right: 3rem !important;\n}\n\n.pb-0 {\n padding-bottom: 0 !important;\n}\n\n.pb-1 {\n padding-bottom: 0.25rem !important;\n}\n\n.pb-2 {\n padding-bottom: 0.5rem !important;\n}\n\n.pb-3 {\n padding-bottom: 1rem !important;\n}\n\n.pb-4 {\n padding-bottom: 1.5rem !important;\n}\n\n.pb-5 {\n padding-bottom: 3rem !important;\n}\n\n.ps-0 {\n padding-left: 0 !important;\n}\n\n.ps-1 {\n padding-left: 0.25rem !important;\n}\n\n.ps-2 {\n padding-left: 0.5rem !important;\n}\n\n.ps-3 {\n padding-left: 1rem !important;\n}\n\n.ps-4 {\n padding-left: 1.5rem !important;\n}\n\n.ps-5 {\n padding-left: 3rem !important;\n}\n\n.gap-0 {\n gap: 0 !important;\n}\n\n.gap-1 {\n gap: 0.25rem !important;\n}\n\n.gap-2 {\n gap: 0.5rem !important;\n}\n\n.gap-3 {\n gap: 1rem !important;\n}\n\n.gap-4 {\n gap: 1.5rem !important;\n}\n\n.gap-5 {\n gap: 3rem !important;\n}\n\n.row-gap-0 {\n row-gap: 0 !important;\n}\n\n.row-gap-1 {\n row-gap: 0.25rem !important;\n}\n\n.row-gap-2 {\n row-gap: 0.5rem !important;\n}\n\n.row-gap-3 {\n row-gap: 1rem !important;\n}\n\n.row-gap-4 {\n row-gap: 1.5rem !important;\n}\n\n.row-gap-5 {\n row-gap: 3rem !important;\n}\n\n.column-gap-0 {\n -moz-column-gap: 0 !important;\n column-gap: 0 !important;\n}\n\n.column-gap-1 {\n -moz-column-gap: 0.25rem !important;\n column-gap: 0.25rem !important;\n}\n\n.column-gap-2 {\n -moz-column-gap: 0.5rem !important;\n column-gap: 0.5rem !important;\n}\n\n.column-gap-3 {\n -moz-column-gap: 1rem !important;\n column-gap: 1rem !important;\n}\n\n.column-gap-4 {\n -moz-column-gap: 1.5rem !important;\n column-gap: 1.5rem !important;\n}\n\n.column-gap-5 {\n -moz-column-gap: 3rem !important;\n column-gap: 3rem !important;\n}\n\n.font-monospace {\n font-family: var(--bs-font-monospace) !important;\n}\n\n.fs-1 {\n font-size: calc(1.375rem + 1.5vw) !important;\n}\n\n.fs-2 {\n font-size: calc(1.325rem + 0.9vw) !important;\n}\n\n.fs-3 {\n font-size: calc(1.3rem + 0.6vw) !important;\n}\n\n.fs-4 {\n font-size: calc(1.275rem + 0.3vw) !important;\n}\n\n.fs-5 {\n font-size: 1.25rem !important;\n}\n\n.fs-6 {\n font-size: 1rem !important;\n}\n\n.fst-italic {\n font-style: italic !important;\n}\n\n.fst-normal {\n font-style: normal !important;\n}\n\n.fw-lighter {\n font-weight: lighter !important;\n}\n\n.fw-light {\n font-weight: 300 !important;\n}\n\n.fw-normal {\n font-weight: 400 !important;\n}\n\n.fw-medium {\n font-weight: 500 !important;\n}\n\n.fw-semibold {\n font-weight: 600 !important;\n}\n\n.fw-bold {\n font-weight: 700 !important;\n}\n\n.fw-bolder {\n font-weight: bolder !important;\n}\n\n.lh-1 {\n line-height: 1 !important;\n}\n\n.lh-sm {\n line-height: 1.25 !important;\n}\n\n.lh-base {\n line-height: 1.5 !important;\n}\n\n.lh-lg {\n line-height: 2 !important;\n}\n\n.text-start {\n text-align: left !important;\n}\n\n.text-end {\n text-align: right !important;\n}\n\n.text-center {\n text-align: center !important;\n}\n\n.text-decoration-none {\n text-decoration: none !important;\n}\n\n.text-decoration-underline {\n text-decoration: underline !important;\n}\n\n.text-decoration-line-through {\n text-decoration: line-through !important;\n}\n\n.text-lowercase {\n text-transform: lowercase !important;\n}\n\n.text-uppercase {\n text-transform: uppercase !important;\n}\n\n.text-capitalize {\n text-transform: capitalize !important;\n}\n\n.text-wrap {\n white-space: normal !important;\n}\n\n.text-nowrap {\n white-space: nowrap !important;\n}\n\n/* rtl:begin:remove */\n.text-break {\n word-wrap: break-word !important;\n word-break: break-word !important;\n}\n\n/* rtl:end:remove */\n.text-primary {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-primary-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-secondary {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-secondary-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-success {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-success-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-info {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-info-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-warning {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-warning-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-danger {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-danger-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-light {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-light-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-dark {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-dark-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-black {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-black-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-white {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-white-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-body {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-body-color-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-muted {\n --bs-text-opacity: 1;\n color: var(--bs-secondary-color) !important;\n}\n\n.text-black-50 {\n --bs-text-opacity: 1;\n color: rgba(0, 0, 0, 0.5) !important;\n}\n\n.text-white-50 {\n --bs-text-opacity: 1;\n color: rgba(255, 255, 255, 0.5) !important;\n}\n\n.text-body-secondary {\n --bs-text-opacity: 1;\n color: var(--bs-secondary-color) !important;\n}\n\n.text-body-tertiary {\n --bs-text-opacity: 1;\n color: var(--bs-tertiary-color) !important;\n}\n\n.text-body-emphasis {\n --bs-text-opacity: 1;\n color: var(--bs-emphasis-color) !important;\n}\n\n.text-reset {\n --bs-text-opacity: 1;\n color: inherit !important;\n}\n\n.text-opacity-25 {\n --bs-text-opacity: 0.25;\n}\n\n.text-opacity-50 {\n --bs-text-opacity: 0.5;\n}\n\n.text-opacity-75 {\n --bs-text-opacity: 0.75;\n}\n\n.text-opacity-100 {\n --bs-text-opacity: 1;\n}\n\n.text-primary-emphasis {\n color: var(--bs-primary-text-emphasis) !important;\n}\n\n.text-secondary-emphasis {\n color: var(--bs-secondary-text-emphasis) !important;\n}\n\n.text-success-emphasis {\n color: var(--bs-success-text-emphasis) !important;\n}\n\n.text-info-emphasis {\n color: var(--bs-info-text-emphasis) !important;\n}\n\n.text-warning-emphasis {\n color: var(--bs-warning-text-emphasis) !important;\n}\n\n.text-danger-emphasis {\n color: var(--bs-danger-text-emphasis) !important;\n}\n\n.text-light-emphasis {\n color: var(--bs-light-text-emphasis) !important;\n}\n\n.text-dark-emphasis {\n color: var(--bs-dark-text-emphasis) !important;\n}\n\n.link-opacity-10 {\n --bs-link-opacity: 0.1;\n}\n\n.link-opacity-10-hover:hover {\n --bs-link-opacity: 0.1;\n}\n\n.link-opacity-25 {\n --bs-link-opacity: 0.25;\n}\n\n.link-opacity-25-hover:hover {\n --bs-link-opacity: 0.25;\n}\n\n.link-opacity-50 {\n --bs-link-opacity: 0.5;\n}\n\n.link-opacity-50-hover:hover {\n --bs-link-opacity: 0.5;\n}\n\n.link-opacity-75 {\n --bs-link-opacity: 0.75;\n}\n\n.link-opacity-75-hover:hover {\n --bs-link-opacity: 0.75;\n}\n\n.link-opacity-100 {\n --bs-link-opacity: 1;\n}\n\n.link-opacity-100-hover:hover {\n --bs-link-opacity: 1;\n}\n\n.link-offset-1 {\n text-underline-offset: 0.125em !important;\n}\n\n.link-offset-1-hover:hover {\n text-underline-offset: 0.125em !important;\n}\n\n.link-offset-2 {\n text-underline-offset: 0.25em !important;\n}\n\n.link-offset-2-hover:hover {\n text-underline-offset: 0.25em !important;\n}\n\n.link-offset-3 {\n text-underline-offset: 0.375em !important;\n}\n\n.link-offset-3-hover:hover {\n text-underline-offset: 0.375em !important;\n}\n\n.link-underline-primary {\n --bs-link-underline-opacity: 1;\n -webkit-text-decoration-color: rgba(var(--bs-primary-rgb), var(--bs-link-underline-opacity)) !important;\n text-decoration-color: rgba(var(--bs-primary-rgb), var(--bs-link-underline-opacity)) !important;\n}\n\n.link-underline-secondary {\n --bs-link-underline-opacity: 1;\n -webkit-text-decoration-color: rgba(var(--bs-secondary-rgb), var(--bs-link-underline-opacity)) !important;\n text-decoration-color: rgba(var(--bs-secondary-rgb), var(--bs-link-underline-opacity)) !important;\n}\n\n.link-underline-success {\n --bs-link-underline-opacity: 1;\n -webkit-text-decoration-color: rgba(var(--bs-success-rgb), var(--bs-link-underline-opacity)) !important;\n text-decoration-color: rgba(var(--bs-success-rgb), var(--bs-link-underline-opacity)) !important;\n}\n\n.link-underline-info {\n --bs-link-underline-opacity: 1;\n -webkit-text-decoration-color: rgba(var(--bs-info-rgb), var(--bs-link-underline-opacity)) !important;\n text-decoration-color: rgba(var(--bs-info-rgb), var(--bs-link-underline-opacity)) !important;\n}\n\n.link-underline-warning {\n --bs-link-underline-opacity: 1;\n -webkit-text-decoration-color: rgba(var(--bs-warning-rgb), var(--bs-link-underline-opacity)) !important;\n text-decoration-color: rgba(var(--bs-warning-rgb), var(--bs-link-underline-opacity)) !important;\n}\n\n.link-underline-danger {\n --bs-link-underline-opacity: 1;\n -webkit-text-decoration-color: rgba(var(--bs-danger-rgb), var(--bs-link-underline-opacity)) !important;\n text-decoration-color: rgba(var(--bs-danger-rgb), var(--bs-link-underline-opacity)) !important;\n}\n\n.link-underline-light {\n --bs-link-underline-opacity: 1;\n -webkit-text-decoration-color: rgba(var(--bs-light-rgb), var(--bs-link-underline-opacity)) !important;\n text-decoration-color: rgba(var(--bs-light-rgb), var(--bs-link-underline-opacity)) !important;\n}\n\n.link-underline-dark {\n --bs-link-underline-opacity: 1;\n -webkit-text-decoration-color: rgba(var(--bs-dark-rgb), var(--bs-link-underline-opacity)) !important;\n text-decoration-color: rgba(var(--bs-dark-rgb), var(--bs-link-underline-opacity)) !important;\n}\n\n.link-underline {\n --bs-link-underline-opacity: 1;\n -webkit-text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n\n.link-underline-opacity-0 {\n --bs-link-underline-opacity: 0;\n}\n\n.link-underline-opacity-0-hover:hover {\n --bs-link-underline-opacity: 0;\n}\n\n.link-underline-opacity-10 {\n --bs-link-underline-opacity: 0.1;\n}\n\n.link-underline-opacity-10-hover:hover {\n --bs-link-underline-opacity: 0.1;\n}\n\n.link-underline-opacity-25 {\n --bs-link-underline-opacity: 0.25;\n}\n\n.link-underline-opacity-25-hover:hover {\n --bs-link-underline-opacity: 0.25;\n}\n\n.link-underline-opacity-50 {\n --bs-link-underline-opacity: 0.5;\n}\n\n.link-underline-opacity-50-hover:hover {\n --bs-link-underline-opacity: 0.5;\n}\n\n.link-underline-opacity-75 {\n --bs-link-underline-opacity: 0.75;\n}\n\n.link-underline-opacity-75-hover:hover {\n --bs-link-underline-opacity: 0.75;\n}\n\n.link-underline-opacity-100 {\n --bs-link-underline-opacity: 1;\n}\n\n.link-underline-opacity-100-hover:hover {\n --bs-link-underline-opacity: 1;\n}\n\n.bg-primary {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-primary-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-secondary {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-secondary-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-success {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-success-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-info {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-info-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-warning {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-warning-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-danger {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-danger-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-light {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-light-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-dark {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-dark-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-black {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-black-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-white {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-white-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-body {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-body-bg-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-transparent {\n --bs-bg-opacity: 1;\n background-color: transparent !important;\n}\n\n.bg-body-secondary {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-secondary-bg-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-body-tertiary {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-tertiary-bg-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-opacity-10 {\n --bs-bg-opacity: 0.1;\n}\n\n.bg-opacity-25 {\n --bs-bg-opacity: 0.25;\n}\n\n.bg-opacity-50 {\n --bs-bg-opacity: 0.5;\n}\n\n.bg-opacity-75 {\n --bs-bg-opacity: 0.75;\n}\n\n.bg-opacity-100 {\n --bs-bg-opacity: 1;\n}\n\n.bg-primary-subtle {\n background-color: var(--bs-primary-bg-subtle) !important;\n}\n\n.bg-secondary-subtle {\n background-color: var(--bs-secondary-bg-subtle) !important;\n}\n\n.bg-success-subtle {\n background-color: var(--bs-success-bg-subtle) !important;\n}\n\n.bg-info-subtle {\n background-color: var(--bs-info-bg-subtle) !important;\n}\n\n.bg-warning-subtle {\n background-color: var(--bs-warning-bg-subtle) !important;\n}\n\n.bg-danger-subtle {\n background-color: var(--bs-danger-bg-subtle) !important;\n}\n\n.bg-light-subtle {\n background-color: var(--bs-light-bg-subtle) !important;\n}\n\n.bg-dark-subtle {\n background-color: var(--bs-dark-bg-subtle) !important;\n}\n\n.bg-gradient {\n background-image: var(--bs-gradient) !important;\n}\n\n.user-select-all {\n -webkit-user-select: all !important;\n -moz-user-select: all !important;\n user-select: all !important;\n}\n\n.user-select-auto {\n -webkit-user-select: auto !important;\n -moz-user-select: auto !important;\n user-select: auto !important;\n}\n\n.user-select-none {\n -webkit-user-select: none !important;\n -moz-user-select: none !important;\n user-select: none !important;\n}\n\n.pe-none {\n pointer-events: none !important;\n}\n\n.pe-auto {\n pointer-events: auto !important;\n}\n\n.rounded {\n border-radius: var(--bs-border-radius) !important;\n}\n\n.rounded-0 {\n border-radius: 0 !important;\n}\n\n.rounded-1 {\n border-radius: var(--bs-border-radius-sm) !important;\n}\n\n.rounded-2 {\n border-radius: var(--bs-border-radius) !important;\n}\n\n.rounded-3 {\n border-radius: var(--bs-border-radius-lg) !important;\n}\n\n.rounded-4 {\n border-radius: var(--bs-border-radius-xl) !important;\n}\n\n.rounded-5 {\n border-radius: var(--bs-border-radius-xxl) !important;\n}\n\n.rounded-circle {\n border-radius: 50% !important;\n}\n\n.rounded-pill {\n border-radius: var(--bs-border-radius-pill) !important;\n}\n\n.rounded-top {\n border-top-left-radius: var(--bs-border-radius) !important;\n border-top-right-radius: var(--bs-border-radius) !important;\n}\n\n.rounded-top-0 {\n border-top-left-radius: 0 !important;\n border-top-right-radius: 0 !important;\n}\n\n.rounded-top-1 {\n border-top-left-radius: var(--bs-border-radius-sm) !important;\n border-top-right-radius: var(--bs-border-radius-sm) !important;\n}\n\n.rounded-top-2 {\n border-top-left-radius: var(--bs-border-radius) !important;\n border-top-right-radius: var(--bs-border-radius) !important;\n}\n\n.rounded-top-3 {\n border-top-left-radius: var(--bs-border-radius-lg) !important;\n border-top-right-radius: var(--bs-border-radius-lg) !important;\n}\n\n.rounded-top-4 {\n border-top-left-radius: var(--bs-border-radius-xl) !important;\n border-top-right-radius: var(--bs-border-radius-xl) !important;\n}\n\n.rounded-top-5 {\n border-top-left-radius: var(--bs-border-radius-xxl) !important;\n border-top-right-radius: var(--bs-border-radius-xxl) !important;\n}\n\n.rounded-top-circle {\n border-top-left-radius: 50% !important;\n border-top-right-radius: 50% !important;\n}\n\n.rounded-top-pill {\n border-top-left-radius: var(--bs-border-radius-pill) !important;\n border-top-right-radius: var(--bs-border-radius-pill) !important;\n}\n\n.rounded-end {\n border-top-right-radius: var(--bs-border-radius) !important;\n border-bottom-right-radius: var(--bs-border-radius) !important;\n}\n\n.rounded-end-0 {\n border-top-right-radius: 0 !important;\n border-bottom-right-radius: 0 !important;\n}\n\n.rounded-end-1 {\n border-top-right-radius: var(--bs-border-radius-sm) !important;\n border-bottom-right-radius: var(--bs-border-radius-sm) !important;\n}\n\n.rounded-end-2 {\n border-top-right-radius: var(--bs-border-radius) !important;\n border-bottom-right-radius: var(--bs-border-radius) !important;\n}\n\n.rounded-end-3 {\n border-top-right-radius: var(--bs-border-radius-lg) !important;\n border-bottom-right-radius: var(--bs-border-radius-lg) !important;\n}\n\n.rounded-end-4 {\n border-top-right-radius: var(--bs-border-radius-xl) !important;\n border-bottom-right-radius: var(--bs-border-radius-xl) !important;\n}\n\n.rounded-end-5 {\n border-top-right-radius: var(--bs-border-radius-xxl) !important;\n border-bottom-right-radius: var(--bs-border-radius-xxl) !important;\n}\n\n.rounded-end-circle {\n border-top-right-radius: 50% !important;\n border-bottom-right-radius: 50% !important;\n}\n\n.rounded-end-pill {\n border-top-right-radius: var(--bs-border-radius-pill) !important;\n border-bottom-right-radius: var(--bs-border-radius-pill) !important;\n}\n\n.rounded-bottom {\n border-bottom-right-radius: var(--bs-border-radius) !important;\n border-bottom-left-radius: var(--bs-border-radius) !important;\n}\n\n.rounded-bottom-0 {\n border-bottom-right-radius: 0 !important;\n border-bottom-left-radius: 0 !important;\n}\n\n.rounded-bottom-1 {\n border-bottom-right-radius: var(--bs-border-radius-sm) !important;\n border-bottom-left-radius: var(--bs-border-radius-sm) !important;\n}\n\n.rounded-bottom-2 {\n border-bottom-right-radius: var(--bs-border-radius) !important;\n border-bottom-left-radius: var(--bs-border-radius) !important;\n}\n\n.rounded-bottom-3 {\n border-bottom-right-radius: var(--bs-border-radius-lg) !important;\n border-bottom-left-radius: var(--bs-border-radius-lg) !important;\n}\n\n.rounded-bottom-4 {\n border-bottom-right-radius: var(--bs-border-radius-xl) !important;\n border-bottom-left-radius: var(--bs-border-radius-xl) !important;\n}\n\n.rounded-bottom-5 {\n border-bottom-right-radius: var(--bs-border-radius-xxl) !important;\n border-bottom-left-radius: var(--bs-border-radius-xxl) !important;\n}\n\n.rounded-bottom-circle {\n border-bottom-right-radius: 50% !important;\n border-bottom-left-radius: 50% !important;\n}\n\n.rounded-bottom-pill {\n border-bottom-right-radius: var(--bs-border-radius-pill) !important;\n border-bottom-left-radius: var(--bs-border-radius-pill) !important;\n}\n\n.rounded-start {\n border-bottom-left-radius: var(--bs-border-radius) !important;\n border-top-left-radius: var(--bs-border-radius) !important;\n}\n\n.rounded-start-0 {\n border-bottom-left-radius: 0 !important;\n border-top-left-radius: 0 !important;\n}\n\n.rounded-start-1 {\n border-bottom-left-radius: var(--bs-border-radius-sm) !important;\n border-top-left-radius: var(--bs-border-radius-sm) !important;\n}\n\n.rounded-start-2 {\n border-bottom-left-radius: var(--bs-border-radius) !important;\n border-top-left-radius: var(--bs-border-radius) !important;\n}\n\n.rounded-start-3 {\n border-bottom-left-radius: var(--bs-border-radius-lg) !important;\n border-top-left-radius: var(--bs-border-radius-lg) !important;\n}\n\n.rounded-start-4 {\n border-bottom-left-radius: var(--bs-border-radius-xl) !important;\n border-top-left-radius: var(--bs-border-radius-xl) !important;\n}\n\n.rounded-start-5 {\n border-bottom-left-radius: var(--bs-border-radius-xxl) !important;\n border-top-left-radius: var(--bs-border-radius-xxl) !important;\n}\n\n.rounded-start-circle {\n border-bottom-left-radius: 50% !important;\n border-top-left-radius: 50% !important;\n}\n\n.rounded-start-pill {\n border-bottom-left-radius: var(--bs-border-radius-pill) !important;\n border-top-left-radius: var(--bs-border-radius-pill) !important;\n}\n\n.visible {\n visibility: visible !important;\n}\n\n.invisible {\n visibility: hidden !important;\n}\n\n.z-n1 {\n z-index: -1 !important;\n}\n\n.z-0 {\n z-index: 0 !important;\n}\n\n.z-1 {\n z-index: 1 !important;\n}\n\n.z-2 {\n z-index: 2 !important;\n}\n\n.z-3 {\n z-index: 3 !important;\n}\n\n@media (min-width: 576px) {\n .float-sm-start {\n float: left !important;\n }\n .float-sm-end {\n float: right !important;\n }\n .float-sm-none {\n float: none !important;\n }\n .object-fit-sm-contain {\n -o-object-fit: contain !important;\n object-fit: contain !important;\n }\n .object-fit-sm-cover {\n -o-object-fit: cover !important;\n object-fit: cover !important;\n }\n .object-fit-sm-fill {\n -o-object-fit: fill !important;\n object-fit: fill !important;\n }\n .object-fit-sm-scale {\n -o-object-fit: scale-down !important;\n object-fit: scale-down !important;\n }\n .object-fit-sm-none {\n -o-object-fit: none !important;\n object-fit: none !important;\n }\n .d-sm-inline {\n display: inline !important;\n }\n .d-sm-inline-block {\n display: inline-block !important;\n }\n .d-sm-block {\n display: block !important;\n }\n .d-sm-grid {\n display: grid !important;\n }\n .d-sm-inline-grid {\n display: inline-grid !important;\n }\n .d-sm-table {\n display: table !important;\n }\n .d-sm-table-row {\n display: table-row !important;\n }\n .d-sm-table-cell {\n display: table-cell !important;\n }\n .d-sm-flex {\n display: flex !important;\n }\n .d-sm-inline-flex {\n display: inline-flex !important;\n }\n .d-sm-none {\n display: none !important;\n }\n .flex-sm-fill {\n flex: 1 1 auto !important;\n }\n .flex-sm-row {\n flex-direction: row !important;\n }\n .flex-sm-column {\n flex-direction: column !important;\n }\n .flex-sm-row-reverse {\n flex-direction: row-reverse !important;\n }\n .flex-sm-column-reverse {\n flex-direction: column-reverse !important;\n }\n .flex-sm-grow-0 {\n flex-grow: 0 !important;\n }\n .flex-sm-grow-1 {\n flex-grow: 1 !important;\n }\n .flex-sm-shrink-0 {\n flex-shrink: 0 !important;\n }\n .flex-sm-shrink-1 {\n flex-shrink: 1 !important;\n }\n .flex-sm-wrap {\n flex-wrap: wrap !important;\n }\n .flex-sm-nowrap {\n flex-wrap: nowrap !important;\n }\n .flex-sm-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n .justify-content-sm-start {\n justify-content: flex-start !important;\n }\n .justify-content-sm-end {\n justify-content: flex-end !important;\n }\n .justify-content-sm-center {\n justify-content: center !important;\n }\n .justify-content-sm-between {\n justify-content: space-between !important;\n }\n .justify-content-sm-around {\n justify-content: space-around !important;\n }\n .justify-content-sm-evenly {\n justify-content: space-evenly !important;\n }\n .align-items-sm-start {\n align-items: flex-start !important;\n }\n .align-items-sm-end {\n align-items: flex-end !important;\n }\n .align-items-sm-center {\n align-items: center !important;\n }\n .align-items-sm-baseline {\n align-items: baseline !important;\n }\n .align-items-sm-stretch {\n align-items: stretch !important;\n }\n .align-content-sm-start {\n align-content: flex-start !important;\n }\n .align-content-sm-end {\n align-content: flex-end !important;\n }\n .align-content-sm-center {\n align-content: center !important;\n }\n .align-content-sm-between {\n align-content: space-between !important;\n }\n .align-content-sm-around {\n align-content: space-around !important;\n }\n .align-content-sm-stretch {\n align-content: stretch !important;\n }\n .align-self-sm-auto {\n align-self: auto !important;\n }\n .align-self-sm-start {\n align-self: flex-start !important;\n }\n .align-self-sm-end {\n align-self: flex-end !important;\n }\n .align-self-sm-center {\n align-self: center !important;\n }\n .align-self-sm-baseline {\n align-self: baseline !important;\n }\n .align-self-sm-stretch {\n align-self: stretch !important;\n }\n .order-sm-first {\n order: -1 !important;\n }\n .order-sm-0 {\n order: 0 !important;\n }\n .order-sm-1 {\n order: 1 !important;\n }\n .order-sm-2 {\n order: 2 !important;\n }\n .order-sm-3 {\n order: 3 !important;\n }\n .order-sm-4 {\n order: 4 !important;\n }\n .order-sm-5 {\n order: 5 !important;\n }\n .order-sm-last {\n order: 6 !important;\n }\n .m-sm-0 {\n margin: 0 !important;\n }\n .m-sm-1 {\n margin: 0.25rem !important;\n }\n .m-sm-2 {\n margin: 0.5rem !important;\n }\n .m-sm-3 {\n margin: 1rem !important;\n }\n .m-sm-4 {\n margin: 1.5rem !important;\n }\n .m-sm-5 {\n margin: 3rem !important;\n }\n .m-sm-auto {\n margin: auto !important;\n }\n .mx-sm-0 {\n margin-right: 0 !important;\n margin-left: 0 !important;\n }\n .mx-sm-1 {\n margin-right: 0.25rem !important;\n margin-left: 0.25rem !important;\n }\n .mx-sm-2 {\n margin-right: 0.5rem !important;\n margin-left: 0.5rem !important;\n }\n .mx-sm-3 {\n margin-right: 1rem !important;\n margin-left: 1rem !important;\n }\n .mx-sm-4 {\n margin-right: 1.5rem !important;\n margin-left: 1.5rem !important;\n }\n .mx-sm-5 {\n margin-right: 3rem !important;\n margin-left: 3rem !important;\n }\n .mx-sm-auto {\n margin-right: auto !important;\n margin-left: auto !important;\n }\n .my-sm-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n }\n .my-sm-1 {\n margin-top: 0.25rem !important;\n margin-bottom: 0.25rem !important;\n }\n .my-sm-2 {\n margin-top: 0.5rem !important;\n margin-bottom: 0.5rem !important;\n }\n .my-sm-3 {\n margin-top: 1rem !important;\n margin-bottom: 1rem !important;\n }\n .my-sm-4 {\n margin-top: 1.5rem !important;\n margin-bottom: 1.5rem !important;\n }\n .my-sm-5 {\n margin-top: 3rem !important;\n margin-bottom: 3rem !important;\n }\n .my-sm-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n }\n .mt-sm-0 {\n margin-top: 0 !important;\n }\n .mt-sm-1 {\n margin-top: 0.25rem !important;\n }\n .mt-sm-2 {\n margin-top: 0.5rem !important;\n }\n .mt-sm-3 {\n margin-top: 1rem !important;\n }\n .mt-sm-4 {\n margin-top: 1.5rem !important;\n }\n .mt-sm-5 {\n margin-top: 3rem !important;\n }\n .mt-sm-auto {\n margin-top: auto !important;\n }\n .me-sm-0 {\n margin-right: 0 !important;\n }\n .me-sm-1 {\n margin-right: 0.25rem !important;\n }\n .me-sm-2 {\n margin-right: 0.5rem !important;\n }\n .me-sm-3 {\n margin-right: 1rem !important;\n }\n .me-sm-4 {\n margin-right: 1.5rem !important;\n }\n .me-sm-5 {\n margin-right: 3rem !important;\n }\n .me-sm-auto {\n margin-right: auto !important;\n }\n .mb-sm-0 {\n margin-bottom: 0 !important;\n }\n .mb-sm-1 {\n margin-bottom: 0.25rem !important;\n }\n .mb-sm-2 {\n margin-bottom: 0.5rem !important;\n }\n .mb-sm-3 {\n margin-bottom: 1rem !important;\n }\n .mb-sm-4 {\n margin-bottom: 1.5rem !important;\n }\n .mb-sm-5 {\n margin-bottom: 3rem !important;\n }\n .mb-sm-auto {\n margin-bottom: auto !important;\n }\n .ms-sm-0 {\n margin-left: 0 !important;\n }\n .ms-sm-1 {\n margin-left: 0.25rem !important;\n }\n .ms-sm-2 {\n margin-left: 0.5rem !important;\n }\n .ms-sm-3 {\n margin-left: 1rem !important;\n }\n .ms-sm-4 {\n margin-left: 1.5rem !important;\n }\n .ms-sm-5 {\n margin-left: 3rem !important;\n }\n .ms-sm-auto {\n margin-left: auto !important;\n }\n .p-sm-0 {\n padding: 0 !important;\n }\n .p-sm-1 {\n padding: 0.25rem !important;\n }\n .p-sm-2 {\n padding: 0.5rem !important;\n }\n .p-sm-3 {\n padding: 1rem !important;\n }\n .p-sm-4 {\n padding: 1.5rem !important;\n }\n .p-sm-5 {\n padding: 3rem !important;\n }\n .px-sm-0 {\n padding-right: 0 !important;\n padding-left: 0 !important;\n }\n .px-sm-1 {\n padding-right: 0.25rem !important;\n padding-left: 0.25rem !important;\n }\n .px-sm-2 {\n padding-right: 0.5rem !important;\n padding-left: 0.5rem !important;\n }\n .px-sm-3 {\n padding-right: 1rem !important;\n padding-left: 1rem !important;\n }\n .px-sm-4 {\n padding-right: 1.5rem !important;\n padding-left: 1.5rem !important;\n }\n .px-sm-5 {\n padding-right: 3rem !important;\n padding-left: 3rem !important;\n }\n .py-sm-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n }\n .py-sm-1 {\n padding-top: 0.25rem !important;\n padding-bottom: 0.25rem !important;\n }\n .py-sm-2 {\n padding-top: 0.5rem !important;\n padding-bottom: 0.5rem !important;\n }\n .py-sm-3 {\n padding-top: 1rem !important;\n padding-bottom: 1rem !important;\n }\n .py-sm-4 {\n padding-top: 1.5rem !important;\n padding-bottom: 1.5rem !important;\n }\n .py-sm-5 {\n padding-top: 3rem !important;\n padding-bottom: 3rem !important;\n }\n .pt-sm-0 {\n padding-top: 0 !important;\n }\n .pt-sm-1 {\n padding-top: 0.25rem !important;\n }\n .pt-sm-2 {\n padding-top: 0.5rem !important;\n }\n .pt-sm-3 {\n padding-top: 1rem !important;\n }\n .pt-sm-4 {\n padding-top: 1.5rem !important;\n }\n .pt-sm-5 {\n padding-top: 3rem !important;\n }\n .pe-sm-0 {\n padding-right: 0 !important;\n }\n .pe-sm-1 {\n padding-right: 0.25rem !important;\n }\n .pe-sm-2 {\n padding-right: 0.5rem !important;\n }\n .pe-sm-3 {\n padding-right: 1rem !important;\n }\n .pe-sm-4 {\n padding-right: 1.5rem !important;\n }\n .pe-sm-5 {\n padding-right: 3rem !important;\n }\n .pb-sm-0 {\n padding-bottom: 0 !important;\n }\n .pb-sm-1 {\n padding-bottom: 0.25rem !important;\n }\n .pb-sm-2 {\n padding-bottom: 0.5rem !important;\n }\n .pb-sm-3 {\n padding-bottom: 1rem !important;\n }\n .pb-sm-4 {\n padding-bottom: 1.5rem !important;\n }\n .pb-sm-5 {\n padding-bottom: 3rem !important;\n }\n .ps-sm-0 {\n padding-left: 0 !important;\n }\n .ps-sm-1 {\n padding-left: 0.25rem !important;\n }\n .ps-sm-2 {\n padding-left: 0.5rem !important;\n }\n .ps-sm-3 {\n padding-left: 1rem !important;\n }\n .ps-sm-4 {\n padding-left: 1.5rem !important;\n }\n .ps-sm-5 {\n padding-left: 3rem !important;\n }\n .gap-sm-0 {\n gap: 0 !important;\n }\n .gap-sm-1 {\n gap: 0.25rem !important;\n }\n .gap-sm-2 {\n gap: 0.5rem !important;\n }\n .gap-sm-3 {\n gap: 1rem !important;\n }\n .gap-sm-4 {\n gap: 1.5rem !important;\n }\n .gap-sm-5 {\n gap: 3rem !important;\n }\n .row-gap-sm-0 {\n row-gap: 0 !important;\n }\n .row-gap-sm-1 {\n row-gap: 0.25rem !important;\n }\n .row-gap-sm-2 {\n row-gap: 0.5rem !important;\n }\n .row-gap-sm-3 {\n row-gap: 1rem !important;\n }\n .row-gap-sm-4 {\n row-gap: 1.5rem !important;\n }\n .row-gap-sm-5 {\n row-gap: 3rem !important;\n }\n .column-gap-sm-0 {\n -moz-column-gap: 0 !important;\n column-gap: 0 !important;\n }\n .column-gap-sm-1 {\n -moz-column-gap: 0.25rem !important;\n column-gap: 0.25rem !important;\n }\n .column-gap-sm-2 {\n -moz-column-gap: 0.5rem !important;\n column-gap: 0.5rem !important;\n }\n .column-gap-sm-3 {\n -moz-column-gap: 1rem !important;\n column-gap: 1rem !important;\n }\n .column-gap-sm-4 {\n -moz-column-gap: 1.5rem !important;\n column-gap: 1.5rem !important;\n }\n .column-gap-sm-5 {\n -moz-column-gap: 3rem !important;\n column-gap: 3rem !important;\n }\n .text-sm-start {\n text-align: left !important;\n }\n .text-sm-end {\n text-align: right !important;\n }\n .text-sm-center {\n text-align: center !important;\n }\n}\n@media (min-width: 768px) {\n .float-md-start {\n float: left !important;\n }\n .float-md-end {\n float: right !important;\n }\n .float-md-none {\n float: none !important;\n }\n .object-fit-md-contain {\n -o-object-fit: contain !important;\n object-fit: contain !important;\n }\n .object-fit-md-cover {\n -o-object-fit: cover !important;\n object-fit: cover !important;\n }\n .object-fit-md-fill {\n -o-object-fit: fill !important;\n object-fit: fill !important;\n }\n .object-fit-md-scale {\n -o-object-fit: scale-down !important;\n object-fit: scale-down !important;\n }\n .object-fit-md-none {\n -o-object-fit: none !important;\n object-fit: none !important;\n }\n .d-md-inline {\n display: inline !important;\n }\n .d-md-inline-block {\n display: inline-block !important;\n }\n .d-md-block {\n display: block !important;\n }\n .d-md-grid {\n display: grid !important;\n }\n .d-md-inline-grid {\n display: inline-grid !important;\n }\n .d-md-table {\n display: table !important;\n }\n .d-md-table-row {\n display: table-row !important;\n }\n .d-md-table-cell {\n display: table-cell !important;\n }\n .d-md-flex {\n display: flex !important;\n }\n .d-md-inline-flex {\n display: inline-flex !important;\n }\n .d-md-none {\n display: none !important;\n }\n .flex-md-fill {\n flex: 1 1 auto !important;\n }\n .flex-md-row {\n flex-direction: row !important;\n }\n .flex-md-column {\n flex-direction: column !important;\n }\n .flex-md-row-reverse {\n flex-direction: row-reverse !important;\n }\n .flex-md-column-reverse {\n flex-direction: column-reverse !important;\n }\n .flex-md-grow-0 {\n flex-grow: 0 !important;\n }\n .flex-md-grow-1 {\n flex-grow: 1 !important;\n }\n .flex-md-shrink-0 {\n flex-shrink: 0 !important;\n }\n .flex-md-shrink-1 {\n flex-shrink: 1 !important;\n }\n .flex-md-wrap {\n flex-wrap: wrap !important;\n }\n .flex-md-nowrap {\n flex-wrap: nowrap !important;\n }\n .flex-md-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n .justify-content-md-start {\n justify-content: flex-start !important;\n }\n .justify-content-md-end {\n justify-content: flex-end !important;\n }\n .justify-content-md-center {\n justify-content: center !important;\n }\n .justify-content-md-between {\n justify-content: space-between !important;\n }\n .justify-content-md-around {\n justify-content: space-around !important;\n }\n .justify-content-md-evenly {\n justify-content: space-evenly !important;\n }\n .align-items-md-start {\n align-items: flex-start !important;\n }\n .align-items-md-end {\n align-items: flex-end !important;\n }\n .align-items-md-center {\n align-items: center !important;\n }\n .align-items-md-baseline {\n align-items: baseline !important;\n }\n .align-items-md-stretch {\n align-items: stretch !important;\n }\n .align-content-md-start {\n align-content: flex-start !important;\n }\n .align-content-md-end {\n align-content: flex-end !important;\n }\n .align-content-md-center {\n align-content: center !important;\n }\n .align-content-md-between {\n align-content: space-between !important;\n }\n .align-content-md-around {\n align-content: space-around !important;\n }\n .align-content-md-stretch {\n align-content: stretch !important;\n }\n .align-self-md-auto {\n align-self: auto !important;\n }\n .align-self-md-start {\n align-self: flex-start !important;\n }\n .align-self-md-end {\n align-self: flex-end !important;\n }\n .align-self-md-center {\n align-self: center !important;\n }\n .align-self-md-baseline {\n align-self: baseline !important;\n }\n .align-self-md-stretch {\n align-self: stretch !important;\n }\n .order-md-first {\n order: -1 !important;\n }\n .order-md-0 {\n order: 0 !important;\n }\n .order-md-1 {\n order: 1 !important;\n }\n .order-md-2 {\n order: 2 !important;\n }\n .order-md-3 {\n order: 3 !important;\n }\n .order-md-4 {\n order: 4 !important;\n }\n .order-md-5 {\n order: 5 !important;\n }\n .order-md-last {\n order: 6 !important;\n }\n .m-md-0 {\n margin: 0 !important;\n }\n .m-md-1 {\n margin: 0.25rem !important;\n }\n .m-md-2 {\n margin: 0.5rem !important;\n }\n .m-md-3 {\n margin: 1rem !important;\n }\n .m-md-4 {\n margin: 1.5rem !important;\n }\n .m-md-5 {\n margin: 3rem !important;\n }\n .m-md-auto {\n margin: auto !important;\n }\n .mx-md-0 {\n margin-right: 0 !important;\n margin-left: 0 !important;\n }\n .mx-md-1 {\n margin-right: 0.25rem !important;\n margin-left: 0.25rem !important;\n }\n .mx-md-2 {\n margin-right: 0.5rem !important;\n margin-left: 0.5rem !important;\n }\n .mx-md-3 {\n margin-right: 1rem !important;\n margin-left: 1rem !important;\n }\n .mx-md-4 {\n margin-right: 1.5rem !important;\n margin-left: 1.5rem !important;\n }\n .mx-md-5 {\n margin-right: 3rem !important;\n margin-left: 3rem !important;\n }\n .mx-md-auto {\n margin-right: auto !important;\n margin-left: auto !important;\n }\n .my-md-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n }\n .my-md-1 {\n margin-top: 0.25rem !important;\n margin-bottom: 0.25rem !important;\n }\n .my-md-2 {\n margin-top: 0.5rem !important;\n margin-bottom: 0.5rem !important;\n }\n .my-md-3 {\n margin-top: 1rem !important;\n margin-bottom: 1rem !important;\n }\n .my-md-4 {\n margin-top: 1.5rem !important;\n margin-bottom: 1.5rem !important;\n }\n .my-md-5 {\n margin-top: 3rem !important;\n margin-bottom: 3rem !important;\n }\n .my-md-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n }\n .mt-md-0 {\n margin-top: 0 !important;\n }\n .mt-md-1 {\n margin-top: 0.25rem !important;\n }\n .mt-md-2 {\n margin-top: 0.5rem !important;\n }\n .mt-md-3 {\n margin-top: 1rem !important;\n }\n .mt-md-4 {\n margin-top: 1.5rem !important;\n }\n .mt-md-5 {\n margin-top: 3rem !important;\n }\n .mt-md-auto {\n margin-top: auto !important;\n }\n .me-md-0 {\n margin-right: 0 !important;\n }\n .me-md-1 {\n margin-right: 0.25rem !important;\n }\n .me-md-2 {\n margin-right: 0.5rem !important;\n }\n .me-md-3 {\n margin-right: 1rem !important;\n }\n .me-md-4 {\n margin-right: 1.5rem !important;\n }\n .me-md-5 {\n margin-right: 3rem !important;\n }\n .me-md-auto {\n margin-right: auto !important;\n }\n .mb-md-0 {\n margin-bottom: 0 !important;\n }\n .mb-md-1 {\n margin-bottom: 0.25rem !important;\n }\n .mb-md-2 {\n margin-bottom: 0.5rem !important;\n }\n .mb-md-3 {\n margin-bottom: 1rem !important;\n }\n .mb-md-4 {\n margin-bottom: 1.5rem !important;\n }\n .mb-md-5 {\n margin-bottom: 3rem !important;\n }\n .mb-md-auto {\n margin-bottom: auto !important;\n }\n .ms-md-0 {\n margin-left: 0 !important;\n }\n .ms-md-1 {\n margin-left: 0.25rem !important;\n }\n .ms-md-2 {\n margin-left: 0.5rem !important;\n }\n .ms-md-3 {\n margin-left: 1rem !important;\n }\n .ms-md-4 {\n margin-left: 1.5rem !important;\n }\n .ms-md-5 {\n margin-left: 3rem !important;\n }\n .ms-md-auto {\n margin-left: auto !important;\n }\n .p-md-0 {\n padding: 0 !important;\n }\n .p-md-1 {\n padding: 0.25rem !important;\n }\n .p-md-2 {\n padding: 0.5rem !important;\n }\n .p-md-3 {\n padding: 1rem !important;\n }\n .p-md-4 {\n padding: 1.5rem !important;\n }\n .p-md-5 {\n padding: 3rem !important;\n }\n .px-md-0 {\n padding-right: 0 !important;\n padding-left: 0 !important;\n }\n .px-md-1 {\n padding-right: 0.25rem !important;\n padding-left: 0.25rem !important;\n }\n .px-md-2 {\n padding-right: 0.5rem !important;\n padding-left: 0.5rem !important;\n }\n .px-md-3 {\n padding-right: 1rem !important;\n padding-left: 1rem !important;\n }\n .px-md-4 {\n padding-right: 1.5rem !important;\n padding-left: 1.5rem !important;\n }\n .px-md-5 {\n padding-right: 3rem !important;\n padding-left: 3rem !important;\n }\n .py-md-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n }\n .py-md-1 {\n padding-top: 0.25rem !important;\n padding-bottom: 0.25rem !important;\n }\n .py-md-2 {\n padding-top: 0.5rem !important;\n padding-bottom: 0.5rem !important;\n }\n .py-md-3 {\n padding-top: 1rem !important;\n padding-bottom: 1rem !important;\n }\n .py-md-4 {\n padding-top: 1.5rem !important;\n padding-bottom: 1.5rem !important;\n }\n .py-md-5 {\n padding-top: 3rem !important;\n padding-bottom: 3rem !important;\n }\n .pt-md-0 {\n padding-top: 0 !important;\n }\n .pt-md-1 {\n padding-top: 0.25rem !important;\n }\n .pt-md-2 {\n padding-top: 0.5rem !important;\n }\n .pt-md-3 {\n padding-top: 1rem !important;\n }\n .pt-md-4 {\n padding-top: 1.5rem !important;\n }\n .pt-md-5 {\n padding-top: 3rem !important;\n }\n .pe-md-0 {\n padding-right: 0 !important;\n }\n .pe-md-1 {\n padding-right: 0.25rem !important;\n }\n .pe-md-2 {\n padding-right: 0.5rem !important;\n }\n .pe-md-3 {\n padding-right: 1rem !important;\n }\n .pe-md-4 {\n padding-right: 1.5rem !important;\n }\n .pe-md-5 {\n padding-right: 3rem !important;\n }\n .pb-md-0 {\n padding-bottom: 0 !important;\n }\n .pb-md-1 {\n padding-bottom: 0.25rem !important;\n }\n .pb-md-2 {\n padding-bottom: 0.5rem !important;\n }\n .pb-md-3 {\n padding-bottom: 1rem !important;\n }\n .pb-md-4 {\n padding-bottom: 1.5rem !important;\n }\n .pb-md-5 {\n padding-bottom: 3rem !important;\n }\n .ps-md-0 {\n padding-left: 0 !important;\n }\n .ps-md-1 {\n padding-left: 0.25rem !important;\n }\n .ps-md-2 {\n padding-left: 0.5rem !important;\n }\n .ps-md-3 {\n padding-left: 1rem !important;\n }\n .ps-md-4 {\n padding-left: 1.5rem !important;\n }\n .ps-md-5 {\n padding-left: 3rem !important;\n }\n .gap-md-0 {\n gap: 0 !important;\n }\n .gap-md-1 {\n gap: 0.25rem !important;\n }\n .gap-md-2 {\n gap: 0.5rem !important;\n }\n .gap-md-3 {\n gap: 1rem !important;\n }\n .gap-md-4 {\n gap: 1.5rem !important;\n }\n .gap-md-5 {\n gap: 3rem !important;\n }\n .row-gap-md-0 {\n row-gap: 0 !important;\n }\n .row-gap-md-1 {\n row-gap: 0.25rem !important;\n }\n .row-gap-md-2 {\n row-gap: 0.5rem !important;\n }\n .row-gap-md-3 {\n row-gap: 1rem !important;\n }\n .row-gap-md-4 {\n row-gap: 1.5rem !important;\n }\n .row-gap-md-5 {\n row-gap: 3rem !important;\n }\n .column-gap-md-0 {\n -moz-column-gap: 0 !important;\n column-gap: 0 !important;\n }\n .column-gap-md-1 {\n -moz-column-gap: 0.25rem !important;\n column-gap: 0.25rem !important;\n }\n .column-gap-md-2 {\n -moz-column-gap: 0.5rem !important;\n column-gap: 0.5rem !important;\n }\n .column-gap-md-3 {\n -moz-column-gap: 1rem !important;\n column-gap: 1rem !important;\n }\n .column-gap-md-4 {\n -moz-column-gap: 1.5rem !important;\n column-gap: 1.5rem !important;\n }\n .column-gap-md-5 {\n -moz-column-gap: 3rem !important;\n column-gap: 3rem !important;\n }\n .text-md-start {\n text-align: left !important;\n }\n .text-md-end {\n text-align: right !important;\n }\n .text-md-center {\n text-align: center !important;\n }\n}\n@media (min-width: 992px) {\n .float-lg-start {\n float: left !important;\n }\n .float-lg-end {\n float: right !important;\n }\n .float-lg-none {\n float: none !important;\n }\n .object-fit-lg-contain {\n -o-object-fit: contain !important;\n object-fit: contain !important;\n }\n .object-fit-lg-cover {\n -o-object-fit: cover !important;\n object-fit: cover !important;\n }\n .object-fit-lg-fill {\n -o-object-fit: fill !important;\n object-fit: fill !important;\n }\n .object-fit-lg-scale {\n -o-object-fit: scale-down !important;\n object-fit: scale-down !important;\n }\n .object-fit-lg-none {\n -o-object-fit: none !important;\n object-fit: none !important;\n }\n .d-lg-inline {\n display: inline !important;\n }\n .d-lg-inline-block {\n display: inline-block !important;\n }\n .d-lg-block {\n display: block !important;\n }\n .d-lg-grid {\n display: grid !important;\n }\n .d-lg-inline-grid {\n display: inline-grid !important;\n }\n .d-lg-table {\n display: table !important;\n }\n .d-lg-table-row {\n display: table-row !important;\n }\n .d-lg-table-cell {\n display: table-cell !important;\n }\n .d-lg-flex {\n display: flex !important;\n }\n .d-lg-inline-flex {\n display: inline-flex !important;\n }\n .d-lg-none {\n display: none !important;\n }\n .flex-lg-fill {\n flex: 1 1 auto !important;\n }\n .flex-lg-row {\n flex-direction: row !important;\n }\n .flex-lg-column {\n flex-direction: column !important;\n }\n .flex-lg-row-reverse {\n flex-direction: row-reverse !important;\n }\n .flex-lg-column-reverse {\n flex-direction: column-reverse !important;\n }\n .flex-lg-grow-0 {\n flex-grow: 0 !important;\n }\n .flex-lg-grow-1 {\n flex-grow: 1 !important;\n }\n .flex-lg-shrink-0 {\n flex-shrink: 0 !important;\n }\n .flex-lg-shrink-1 {\n flex-shrink: 1 !important;\n }\n .flex-lg-wrap {\n flex-wrap: wrap !important;\n }\n .flex-lg-nowrap {\n flex-wrap: nowrap !important;\n }\n .flex-lg-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n .justify-content-lg-start {\n justify-content: flex-start !important;\n }\n .justify-content-lg-end {\n justify-content: flex-end !important;\n }\n .justify-content-lg-center {\n justify-content: center !important;\n }\n .justify-content-lg-between {\n justify-content: space-between !important;\n }\n .justify-content-lg-around {\n justify-content: space-around !important;\n }\n .justify-content-lg-evenly {\n justify-content: space-evenly !important;\n }\n .align-items-lg-start {\n align-items: flex-start !important;\n }\n .align-items-lg-end {\n align-items: flex-end !important;\n }\n .align-items-lg-center {\n align-items: center !important;\n }\n .align-items-lg-baseline {\n align-items: baseline !important;\n }\n .align-items-lg-stretch {\n align-items: stretch !important;\n }\n .align-content-lg-start {\n align-content: flex-start !important;\n }\n .align-content-lg-end {\n align-content: flex-end !important;\n }\n .align-content-lg-center {\n align-content: center !important;\n }\n .align-content-lg-between {\n align-content: space-between !important;\n }\n .align-content-lg-around {\n align-content: space-around !important;\n }\n .align-content-lg-stretch {\n align-content: stretch !important;\n }\n .align-self-lg-auto {\n align-self: auto !important;\n }\n .align-self-lg-start {\n align-self: flex-start !important;\n }\n .align-self-lg-end {\n align-self: flex-end !important;\n }\n .align-self-lg-center {\n align-self: center !important;\n }\n .align-self-lg-baseline {\n align-self: baseline !important;\n }\n .align-self-lg-stretch {\n align-self: stretch !important;\n }\n .order-lg-first {\n order: -1 !important;\n }\n .order-lg-0 {\n order: 0 !important;\n }\n .order-lg-1 {\n order: 1 !important;\n }\n .order-lg-2 {\n order: 2 !important;\n }\n .order-lg-3 {\n order: 3 !important;\n }\n .order-lg-4 {\n order: 4 !important;\n }\n .order-lg-5 {\n order: 5 !important;\n }\n .order-lg-last {\n order: 6 !important;\n }\n .m-lg-0 {\n margin: 0 !important;\n }\n .m-lg-1 {\n margin: 0.25rem !important;\n }\n .m-lg-2 {\n margin: 0.5rem !important;\n }\n .m-lg-3 {\n margin: 1rem !important;\n }\n .m-lg-4 {\n margin: 1.5rem !important;\n }\n .m-lg-5 {\n margin: 3rem !important;\n }\n .m-lg-auto {\n margin: auto !important;\n }\n .mx-lg-0 {\n margin-right: 0 !important;\n margin-left: 0 !important;\n }\n .mx-lg-1 {\n margin-right: 0.25rem !important;\n margin-left: 0.25rem !important;\n }\n .mx-lg-2 {\n margin-right: 0.5rem !important;\n margin-left: 0.5rem !important;\n }\n .mx-lg-3 {\n margin-right: 1rem !important;\n margin-left: 1rem !important;\n }\n .mx-lg-4 {\n margin-right: 1.5rem !important;\n margin-left: 1.5rem !important;\n }\n .mx-lg-5 {\n margin-right: 3rem !important;\n margin-left: 3rem !important;\n }\n .mx-lg-auto {\n margin-right: auto !important;\n margin-left: auto !important;\n }\n .my-lg-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n }\n .my-lg-1 {\n margin-top: 0.25rem !important;\n margin-bottom: 0.25rem !important;\n }\n .my-lg-2 {\n margin-top: 0.5rem !important;\n margin-bottom: 0.5rem !important;\n }\n .my-lg-3 {\n margin-top: 1rem !important;\n margin-bottom: 1rem !important;\n }\n .my-lg-4 {\n margin-top: 1.5rem !important;\n margin-bottom: 1.5rem !important;\n }\n .my-lg-5 {\n margin-top: 3rem !important;\n margin-bottom: 3rem !important;\n }\n .my-lg-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n }\n .mt-lg-0 {\n margin-top: 0 !important;\n }\n .mt-lg-1 {\n margin-top: 0.25rem !important;\n }\n .mt-lg-2 {\n margin-top: 0.5rem !important;\n }\n .mt-lg-3 {\n margin-top: 1rem !important;\n }\n .mt-lg-4 {\n margin-top: 1.5rem !important;\n }\n .mt-lg-5 {\n margin-top: 3rem !important;\n }\n .mt-lg-auto {\n margin-top: auto !important;\n }\n .me-lg-0 {\n margin-right: 0 !important;\n }\n .me-lg-1 {\n margin-right: 0.25rem !important;\n }\n .me-lg-2 {\n margin-right: 0.5rem !important;\n }\n .me-lg-3 {\n margin-right: 1rem !important;\n }\n .me-lg-4 {\n margin-right: 1.5rem !important;\n }\n .me-lg-5 {\n margin-right: 3rem !important;\n }\n .me-lg-auto {\n margin-right: auto !important;\n }\n .mb-lg-0 {\n margin-bottom: 0 !important;\n }\n .mb-lg-1 {\n margin-bottom: 0.25rem !important;\n }\n .mb-lg-2 {\n margin-bottom: 0.5rem !important;\n }\n .mb-lg-3 {\n margin-bottom: 1rem !important;\n }\n .mb-lg-4 {\n margin-bottom: 1.5rem !important;\n }\n .mb-lg-5 {\n margin-bottom: 3rem !important;\n }\n .mb-lg-auto {\n margin-bottom: auto !important;\n }\n .ms-lg-0 {\n margin-left: 0 !important;\n }\n .ms-lg-1 {\n margin-left: 0.25rem !important;\n }\n .ms-lg-2 {\n margin-left: 0.5rem !important;\n }\n .ms-lg-3 {\n margin-left: 1rem !important;\n }\n .ms-lg-4 {\n margin-left: 1.5rem !important;\n }\n .ms-lg-5 {\n margin-left: 3rem !important;\n }\n .ms-lg-auto {\n margin-left: auto !important;\n }\n .p-lg-0 {\n padding: 0 !important;\n }\n .p-lg-1 {\n padding: 0.25rem !important;\n }\n .p-lg-2 {\n padding: 0.5rem !important;\n }\n .p-lg-3 {\n padding: 1rem !important;\n }\n .p-lg-4 {\n padding: 1.5rem !important;\n }\n .p-lg-5 {\n padding: 3rem !important;\n }\n .px-lg-0 {\n padding-right: 0 !important;\n padding-left: 0 !important;\n }\n .px-lg-1 {\n padding-right: 0.25rem !important;\n padding-left: 0.25rem !important;\n }\n .px-lg-2 {\n padding-right: 0.5rem !important;\n padding-left: 0.5rem !important;\n }\n .px-lg-3 {\n padding-right: 1rem !important;\n padding-left: 1rem !important;\n }\n .px-lg-4 {\n padding-right: 1.5rem !important;\n padding-left: 1.5rem !important;\n }\n .px-lg-5 {\n padding-right: 3rem !important;\n padding-left: 3rem !important;\n }\n .py-lg-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n }\n .py-lg-1 {\n padding-top: 0.25rem !important;\n padding-bottom: 0.25rem !important;\n }\n .py-lg-2 {\n padding-top: 0.5rem !important;\n padding-bottom: 0.5rem !important;\n }\n .py-lg-3 {\n padding-top: 1rem !important;\n padding-bottom: 1rem !important;\n }\n .py-lg-4 {\n padding-top: 1.5rem !important;\n padding-bottom: 1.5rem !important;\n }\n .py-lg-5 {\n padding-top: 3rem !important;\n padding-bottom: 3rem !important;\n }\n .pt-lg-0 {\n padding-top: 0 !important;\n }\n .pt-lg-1 {\n padding-top: 0.25rem !important;\n }\n .pt-lg-2 {\n padding-top: 0.5rem !important;\n }\n .pt-lg-3 {\n padding-top: 1rem !important;\n }\n .pt-lg-4 {\n padding-top: 1.5rem !important;\n }\n .pt-lg-5 {\n padding-top: 3rem !important;\n }\n .pe-lg-0 {\n padding-right: 0 !important;\n }\n .pe-lg-1 {\n padding-right: 0.25rem !important;\n }\n .pe-lg-2 {\n padding-right: 0.5rem !important;\n }\n .pe-lg-3 {\n padding-right: 1rem !important;\n }\n .pe-lg-4 {\n padding-right: 1.5rem !important;\n }\n .pe-lg-5 {\n padding-right: 3rem !important;\n }\n .pb-lg-0 {\n padding-bottom: 0 !important;\n }\n .pb-lg-1 {\n padding-bottom: 0.25rem !important;\n }\n .pb-lg-2 {\n padding-bottom: 0.5rem !important;\n }\n .pb-lg-3 {\n padding-bottom: 1rem !important;\n }\n .pb-lg-4 {\n padding-bottom: 1.5rem !important;\n }\n .pb-lg-5 {\n padding-bottom: 3rem !important;\n }\n .ps-lg-0 {\n padding-left: 0 !important;\n }\n .ps-lg-1 {\n padding-left: 0.25rem !important;\n }\n .ps-lg-2 {\n padding-left: 0.5rem !important;\n }\n .ps-lg-3 {\n padding-left: 1rem !important;\n }\n .ps-lg-4 {\n padding-left: 1.5rem !important;\n }\n .ps-lg-5 {\n padding-left: 3rem !important;\n }\n .gap-lg-0 {\n gap: 0 !important;\n }\n .gap-lg-1 {\n gap: 0.25rem !important;\n }\n .gap-lg-2 {\n gap: 0.5rem !important;\n }\n .gap-lg-3 {\n gap: 1rem !important;\n }\n .gap-lg-4 {\n gap: 1.5rem !important;\n }\n .gap-lg-5 {\n gap: 3rem !important;\n }\n .row-gap-lg-0 {\n row-gap: 0 !important;\n }\n .row-gap-lg-1 {\n row-gap: 0.25rem !important;\n }\n .row-gap-lg-2 {\n row-gap: 0.5rem !important;\n }\n .row-gap-lg-3 {\n row-gap: 1rem !important;\n }\n .row-gap-lg-4 {\n row-gap: 1.5rem !important;\n }\n .row-gap-lg-5 {\n row-gap: 3rem !important;\n }\n .column-gap-lg-0 {\n -moz-column-gap: 0 !important;\n column-gap: 0 !important;\n }\n .column-gap-lg-1 {\n -moz-column-gap: 0.25rem !important;\n column-gap: 0.25rem !important;\n }\n .column-gap-lg-2 {\n -moz-column-gap: 0.5rem !important;\n column-gap: 0.5rem !important;\n }\n .column-gap-lg-3 {\n -moz-column-gap: 1rem !important;\n column-gap: 1rem !important;\n }\n .column-gap-lg-4 {\n -moz-column-gap: 1.5rem !important;\n column-gap: 1.5rem !important;\n }\n .column-gap-lg-5 {\n -moz-column-gap: 3rem !important;\n column-gap: 3rem !important;\n }\n .text-lg-start {\n text-align: left !important;\n }\n .text-lg-end {\n text-align: right !important;\n }\n .text-lg-center {\n text-align: center !important;\n }\n}\n@media (min-width: 1200px) {\n .float-xl-start {\n float: left !important;\n }\n .float-xl-end {\n float: right !important;\n }\n .float-xl-none {\n float: none !important;\n }\n .object-fit-xl-contain {\n -o-object-fit: contain !important;\n object-fit: contain !important;\n }\n .object-fit-xl-cover {\n -o-object-fit: cover !important;\n object-fit: cover !important;\n }\n .object-fit-xl-fill {\n -o-object-fit: fill !important;\n object-fit: fill !important;\n }\n .object-fit-xl-scale {\n -o-object-fit: scale-down !important;\n object-fit: scale-down !important;\n }\n .object-fit-xl-none {\n -o-object-fit: none !important;\n object-fit: none !important;\n }\n .d-xl-inline {\n display: inline !important;\n }\n .d-xl-inline-block {\n display: inline-block !important;\n }\n .d-xl-block {\n display: block !important;\n }\n .d-xl-grid {\n display: grid !important;\n }\n .d-xl-inline-grid {\n display: inline-grid !important;\n }\n .d-xl-table {\n display: table !important;\n }\n .d-xl-table-row {\n display: table-row !important;\n }\n .d-xl-table-cell {\n display: table-cell !important;\n }\n .d-xl-flex {\n display: flex !important;\n }\n .d-xl-inline-flex {\n display: inline-flex !important;\n }\n .d-xl-none {\n display: none !important;\n }\n .flex-xl-fill {\n flex: 1 1 auto !important;\n }\n .flex-xl-row {\n flex-direction: row !important;\n }\n .flex-xl-column {\n flex-direction: column !important;\n }\n .flex-xl-row-reverse {\n flex-direction: row-reverse !important;\n }\n .flex-xl-column-reverse {\n flex-direction: column-reverse !important;\n }\n .flex-xl-grow-0 {\n flex-grow: 0 !important;\n }\n .flex-xl-grow-1 {\n flex-grow: 1 !important;\n }\n .flex-xl-shrink-0 {\n flex-shrink: 0 !important;\n }\n .flex-xl-shrink-1 {\n flex-shrink: 1 !important;\n }\n .flex-xl-wrap {\n flex-wrap: wrap !important;\n }\n .flex-xl-nowrap {\n flex-wrap: nowrap !important;\n }\n .flex-xl-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n .justify-content-xl-start {\n justify-content: flex-start !important;\n }\n .justify-content-xl-end {\n justify-content: flex-end !important;\n }\n .justify-content-xl-center {\n justify-content: center !important;\n }\n .justify-content-xl-between {\n justify-content: space-between !important;\n }\n .justify-content-xl-around {\n justify-content: space-around !important;\n }\n .justify-content-xl-evenly {\n justify-content: space-evenly !important;\n }\n .align-items-xl-start {\n align-items: flex-start !important;\n }\n .align-items-xl-end {\n align-items: flex-end !important;\n }\n .align-items-xl-center {\n align-items: center !important;\n }\n .align-items-xl-baseline {\n align-items: baseline !important;\n }\n .align-items-xl-stretch {\n align-items: stretch !important;\n }\n .align-content-xl-start {\n align-content: flex-start !important;\n }\n .align-content-xl-end {\n align-content: flex-end !important;\n }\n .align-content-xl-center {\n align-content: center !important;\n }\n .align-content-xl-between {\n align-content: space-between !important;\n }\n .align-content-xl-around {\n align-content: space-around !important;\n }\n .align-content-xl-stretch {\n align-content: stretch !important;\n }\n .align-self-xl-auto {\n align-self: auto !important;\n }\n .align-self-xl-start {\n align-self: flex-start !important;\n }\n .align-self-xl-end {\n align-self: flex-end !important;\n }\n .align-self-xl-center {\n align-self: center !important;\n }\n .align-self-xl-baseline {\n align-self: baseline !important;\n }\n .align-self-xl-stretch {\n align-self: stretch !important;\n }\n .order-xl-first {\n order: -1 !important;\n }\n .order-xl-0 {\n order: 0 !important;\n }\n .order-xl-1 {\n order: 1 !important;\n }\n .order-xl-2 {\n order: 2 !important;\n }\n .order-xl-3 {\n order: 3 !important;\n }\n .order-xl-4 {\n order: 4 !important;\n }\n .order-xl-5 {\n order: 5 !important;\n }\n .order-xl-last {\n order: 6 !important;\n }\n .m-xl-0 {\n margin: 0 !important;\n }\n .m-xl-1 {\n margin: 0.25rem !important;\n }\n .m-xl-2 {\n margin: 0.5rem !important;\n }\n .m-xl-3 {\n margin: 1rem !important;\n }\n .m-xl-4 {\n margin: 1.5rem !important;\n }\n .m-xl-5 {\n margin: 3rem !important;\n }\n .m-xl-auto {\n margin: auto !important;\n }\n .mx-xl-0 {\n margin-right: 0 !important;\n margin-left: 0 !important;\n }\n .mx-xl-1 {\n margin-right: 0.25rem !important;\n margin-left: 0.25rem !important;\n }\n .mx-xl-2 {\n margin-right: 0.5rem !important;\n margin-left: 0.5rem !important;\n }\n .mx-xl-3 {\n margin-right: 1rem !important;\n margin-left: 1rem !important;\n }\n .mx-xl-4 {\n margin-right: 1.5rem !important;\n margin-left: 1.5rem !important;\n }\n .mx-xl-5 {\n margin-right: 3rem !important;\n margin-left: 3rem !important;\n }\n .mx-xl-auto {\n margin-right: auto !important;\n margin-left: auto !important;\n }\n .my-xl-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n }\n .my-xl-1 {\n margin-top: 0.25rem !important;\n margin-bottom: 0.25rem !important;\n }\n .my-xl-2 {\n margin-top: 0.5rem !important;\n margin-bottom: 0.5rem !important;\n }\n .my-xl-3 {\n margin-top: 1rem !important;\n margin-bottom: 1rem !important;\n }\n .my-xl-4 {\n margin-top: 1.5rem !important;\n margin-bottom: 1.5rem !important;\n }\n .my-xl-5 {\n margin-top: 3rem !important;\n margin-bottom: 3rem !important;\n }\n .my-xl-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n }\n .mt-xl-0 {\n margin-top: 0 !important;\n }\n .mt-xl-1 {\n margin-top: 0.25rem !important;\n }\n .mt-xl-2 {\n margin-top: 0.5rem !important;\n }\n .mt-xl-3 {\n margin-top: 1rem !important;\n }\n .mt-xl-4 {\n margin-top: 1.5rem !important;\n }\n .mt-xl-5 {\n margin-top: 3rem !important;\n }\n .mt-xl-auto {\n margin-top: auto !important;\n }\n .me-xl-0 {\n margin-right: 0 !important;\n }\n .me-xl-1 {\n margin-right: 0.25rem !important;\n }\n .me-xl-2 {\n margin-right: 0.5rem !important;\n }\n .me-xl-3 {\n margin-right: 1rem !important;\n }\n .me-xl-4 {\n margin-right: 1.5rem !important;\n }\n .me-xl-5 {\n margin-right: 3rem !important;\n }\n .me-xl-auto {\n margin-right: auto !important;\n }\n .mb-xl-0 {\n margin-bottom: 0 !important;\n }\n .mb-xl-1 {\n margin-bottom: 0.25rem !important;\n }\n .mb-xl-2 {\n margin-bottom: 0.5rem !important;\n }\n .mb-xl-3 {\n margin-bottom: 1rem !important;\n }\n .mb-xl-4 {\n margin-bottom: 1.5rem !important;\n }\n .mb-xl-5 {\n margin-bottom: 3rem !important;\n }\n .mb-xl-auto {\n margin-bottom: auto !important;\n }\n .ms-xl-0 {\n margin-left: 0 !important;\n }\n .ms-xl-1 {\n margin-left: 0.25rem !important;\n }\n .ms-xl-2 {\n margin-left: 0.5rem !important;\n }\n .ms-xl-3 {\n margin-left: 1rem !important;\n }\n .ms-xl-4 {\n margin-left: 1.5rem !important;\n }\n .ms-xl-5 {\n margin-left: 3rem !important;\n }\n .ms-xl-auto {\n margin-left: auto !important;\n }\n .p-xl-0 {\n padding: 0 !important;\n }\n .p-xl-1 {\n padding: 0.25rem !important;\n }\n .p-xl-2 {\n padding: 0.5rem !important;\n }\n .p-xl-3 {\n padding: 1rem !important;\n }\n .p-xl-4 {\n padding: 1.5rem !important;\n }\n .p-xl-5 {\n padding: 3rem !important;\n }\n .px-xl-0 {\n padding-right: 0 !important;\n padding-left: 0 !important;\n }\n .px-xl-1 {\n padding-right: 0.25rem !important;\n padding-left: 0.25rem !important;\n }\n .px-xl-2 {\n padding-right: 0.5rem !important;\n padding-left: 0.5rem !important;\n }\n .px-xl-3 {\n padding-right: 1rem !important;\n padding-left: 1rem !important;\n }\n .px-xl-4 {\n padding-right: 1.5rem !important;\n padding-left: 1.5rem !important;\n }\n .px-xl-5 {\n padding-right: 3rem !important;\n padding-left: 3rem !important;\n }\n .py-xl-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n }\n .py-xl-1 {\n padding-top: 0.25rem !important;\n padding-bottom: 0.25rem !important;\n }\n .py-xl-2 {\n padding-top: 0.5rem !important;\n padding-bottom: 0.5rem !important;\n }\n .py-xl-3 {\n padding-top: 1rem !important;\n padding-bottom: 1rem !important;\n }\n .py-xl-4 {\n padding-top: 1.5rem !important;\n padding-bottom: 1.5rem !important;\n }\n .py-xl-5 {\n padding-top: 3rem !important;\n padding-bottom: 3rem !important;\n }\n .pt-xl-0 {\n padding-top: 0 !important;\n }\n .pt-xl-1 {\n padding-top: 0.25rem !important;\n }\n .pt-xl-2 {\n padding-top: 0.5rem !important;\n }\n .pt-xl-3 {\n padding-top: 1rem !important;\n }\n .pt-xl-4 {\n padding-top: 1.5rem !important;\n }\n .pt-xl-5 {\n padding-top: 3rem !important;\n }\n .pe-xl-0 {\n padding-right: 0 !important;\n }\n .pe-xl-1 {\n padding-right: 0.25rem !important;\n }\n .pe-xl-2 {\n padding-right: 0.5rem !important;\n }\n .pe-xl-3 {\n padding-right: 1rem !important;\n }\n .pe-xl-4 {\n padding-right: 1.5rem !important;\n }\n .pe-xl-5 {\n padding-right: 3rem !important;\n }\n .pb-xl-0 {\n padding-bottom: 0 !important;\n }\n .pb-xl-1 {\n padding-bottom: 0.25rem !important;\n }\n .pb-xl-2 {\n padding-bottom: 0.5rem !important;\n }\n .pb-xl-3 {\n padding-bottom: 1rem !important;\n }\n .pb-xl-4 {\n padding-bottom: 1.5rem !important;\n }\n .pb-xl-5 {\n padding-bottom: 3rem !important;\n }\n .ps-xl-0 {\n padding-left: 0 !important;\n }\n .ps-xl-1 {\n padding-left: 0.25rem !important;\n }\n .ps-xl-2 {\n padding-left: 0.5rem !important;\n }\n .ps-xl-3 {\n padding-left: 1rem !important;\n }\n .ps-xl-4 {\n padding-left: 1.5rem !important;\n }\n .ps-xl-5 {\n padding-left: 3rem !important;\n }\n .gap-xl-0 {\n gap: 0 !important;\n }\n .gap-xl-1 {\n gap: 0.25rem !important;\n }\n .gap-xl-2 {\n gap: 0.5rem !important;\n }\n .gap-xl-3 {\n gap: 1rem !important;\n }\n .gap-xl-4 {\n gap: 1.5rem !important;\n }\n .gap-xl-5 {\n gap: 3rem !important;\n }\n .row-gap-xl-0 {\n row-gap: 0 !important;\n }\n .row-gap-xl-1 {\n row-gap: 0.25rem !important;\n }\n .row-gap-xl-2 {\n row-gap: 0.5rem !important;\n }\n .row-gap-xl-3 {\n row-gap: 1rem !important;\n }\n .row-gap-xl-4 {\n row-gap: 1.5rem !important;\n }\n .row-gap-xl-5 {\n row-gap: 3rem !important;\n }\n .column-gap-xl-0 {\n -moz-column-gap: 0 !important;\n column-gap: 0 !important;\n }\n .column-gap-xl-1 {\n -moz-column-gap: 0.25rem !important;\n column-gap: 0.25rem !important;\n }\n .column-gap-xl-2 {\n -moz-column-gap: 0.5rem !important;\n column-gap: 0.5rem !important;\n }\n .column-gap-xl-3 {\n -moz-column-gap: 1rem !important;\n column-gap: 1rem !important;\n }\n .column-gap-xl-4 {\n -moz-column-gap: 1.5rem !important;\n column-gap: 1.5rem !important;\n }\n .column-gap-xl-5 {\n -moz-column-gap: 3rem !important;\n column-gap: 3rem !important;\n }\n .text-xl-start {\n text-align: left !important;\n }\n .text-xl-end {\n text-align: right !important;\n }\n .text-xl-center {\n text-align: center !important;\n }\n}\n@media (min-width: 1400px) {\n .float-xxl-start {\n float: left !important;\n }\n .float-xxl-end {\n float: right !important;\n }\n .float-xxl-none {\n float: none !important;\n }\n .object-fit-xxl-contain {\n -o-object-fit: contain !important;\n object-fit: contain !important;\n }\n .object-fit-xxl-cover {\n -o-object-fit: cover !important;\n object-fit: cover !important;\n }\n .object-fit-xxl-fill {\n -o-object-fit: fill !important;\n object-fit: fill !important;\n }\n .object-fit-xxl-scale {\n -o-object-fit: scale-down !important;\n object-fit: scale-down !important;\n }\n .object-fit-xxl-none {\n -o-object-fit: none !important;\n object-fit: none !important;\n }\n .d-xxl-inline {\n display: inline !important;\n }\n .d-xxl-inline-block {\n display: inline-block !important;\n }\n .d-xxl-block {\n display: block !important;\n }\n .d-xxl-grid {\n display: grid !important;\n }\n .d-xxl-inline-grid {\n display: inline-grid !important;\n }\n .d-xxl-table {\n display: table !important;\n }\n .d-xxl-table-row {\n display: table-row !important;\n }\n .d-xxl-table-cell {\n display: table-cell !important;\n }\n .d-xxl-flex {\n display: flex !important;\n }\n .d-xxl-inline-flex {\n display: inline-flex !important;\n }\n .d-xxl-none {\n display: none !important;\n }\n .flex-xxl-fill {\n flex: 1 1 auto !important;\n }\n .flex-xxl-row {\n flex-direction: row !important;\n }\n .flex-xxl-column {\n flex-direction: column !important;\n }\n .flex-xxl-row-reverse {\n flex-direction: row-reverse !important;\n }\n .flex-xxl-column-reverse {\n flex-direction: column-reverse !important;\n }\n .flex-xxl-grow-0 {\n flex-grow: 0 !important;\n }\n .flex-xxl-grow-1 {\n flex-grow: 1 !important;\n }\n .flex-xxl-shrink-0 {\n flex-shrink: 0 !important;\n }\n .flex-xxl-shrink-1 {\n flex-shrink: 1 !important;\n }\n .flex-xxl-wrap {\n flex-wrap: wrap !important;\n }\n .flex-xxl-nowrap {\n flex-wrap: nowrap !important;\n }\n .flex-xxl-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n .justify-content-xxl-start {\n justify-content: flex-start !important;\n }\n .justify-content-xxl-end {\n justify-content: flex-end !important;\n }\n .justify-content-xxl-center {\n justify-content: center !important;\n }\n .justify-content-xxl-between {\n justify-content: space-between !important;\n }\n .justify-content-xxl-around {\n justify-content: space-around !important;\n }\n .justify-content-xxl-evenly {\n justify-content: space-evenly !important;\n }\n .align-items-xxl-start {\n align-items: flex-start !important;\n }\n .align-items-xxl-end {\n align-items: flex-end !important;\n }\n .align-items-xxl-center {\n align-items: center !important;\n }\n .align-items-xxl-baseline {\n align-items: baseline !important;\n }\n .align-items-xxl-stretch {\n align-items: stretch !important;\n }\n .align-content-xxl-start {\n align-content: flex-start !important;\n }\n .align-content-xxl-end {\n align-content: flex-end !important;\n }\n .align-content-xxl-center {\n align-content: center !important;\n }\n .align-content-xxl-between {\n align-content: space-between !important;\n }\n .align-content-xxl-around {\n align-content: space-around !important;\n }\n .align-content-xxl-stretch {\n align-content: stretch !important;\n }\n .align-self-xxl-auto {\n align-self: auto !important;\n }\n .align-self-xxl-start {\n align-self: flex-start !important;\n }\n .align-self-xxl-end {\n align-self: flex-end !important;\n }\n .align-self-xxl-center {\n align-self: center !important;\n }\n .align-self-xxl-baseline {\n align-self: baseline !important;\n }\n .align-self-xxl-stretch {\n align-self: stretch !important;\n }\n .order-xxl-first {\n order: -1 !important;\n }\n .order-xxl-0 {\n order: 0 !important;\n }\n .order-xxl-1 {\n order: 1 !important;\n }\n .order-xxl-2 {\n order: 2 !important;\n }\n .order-xxl-3 {\n order: 3 !important;\n }\n .order-xxl-4 {\n order: 4 !important;\n }\n .order-xxl-5 {\n order: 5 !important;\n }\n .order-xxl-last {\n order: 6 !important;\n }\n .m-xxl-0 {\n margin: 0 !important;\n }\n .m-xxl-1 {\n margin: 0.25rem !important;\n }\n .m-xxl-2 {\n margin: 0.5rem !important;\n }\n .m-xxl-3 {\n margin: 1rem !important;\n }\n .m-xxl-4 {\n margin: 1.5rem !important;\n }\n .m-xxl-5 {\n margin: 3rem !important;\n }\n .m-xxl-auto {\n margin: auto !important;\n }\n .mx-xxl-0 {\n margin-right: 0 !important;\n margin-left: 0 !important;\n }\n .mx-xxl-1 {\n margin-right: 0.25rem !important;\n margin-left: 0.25rem !important;\n }\n .mx-xxl-2 {\n margin-right: 0.5rem !important;\n margin-left: 0.5rem !important;\n }\n .mx-xxl-3 {\n margin-right: 1rem !important;\n margin-left: 1rem !important;\n }\n .mx-xxl-4 {\n margin-right: 1.5rem !important;\n margin-left: 1.5rem !important;\n }\n .mx-xxl-5 {\n margin-right: 3rem !important;\n margin-left: 3rem !important;\n }\n .mx-xxl-auto {\n margin-right: auto !important;\n margin-left: auto !important;\n }\n .my-xxl-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n }\n .my-xxl-1 {\n margin-top: 0.25rem !important;\n margin-bottom: 0.25rem !important;\n }\n .my-xxl-2 {\n margin-top: 0.5rem !important;\n margin-bottom: 0.5rem !important;\n }\n .my-xxl-3 {\n margin-top: 1rem !important;\n margin-bottom: 1rem !important;\n }\n .my-xxl-4 {\n margin-top: 1.5rem !important;\n margin-bottom: 1.5rem !important;\n }\n .my-xxl-5 {\n margin-top: 3rem !important;\n margin-bottom: 3rem !important;\n }\n .my-xxl-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n }\n .mt-xxl-0 {\n margin-top: 0 !important;\n }\n .mt-xxl-1 {\n margin-top: 0.25rem !important;\n }\n .mt-xxl-2 {\n margin-top: 0.5rem !important;\n }\n .mt-xxl-3 {\n margin-top: 1rem !important;\n }\n .mt-xxl-4 {\n margin-top: 1.5rem !important;\n }\n .mt-xxl-5 {\n margin-top: 3rem !important;\n }\n .mt-xxl-auto {\n margin-top: auto !important;\n }\n .me-xxl-0 {\n margin-right: 0 !important;\n }\n .me-xxl-1 {\n margin-right: 0.25rem !important;\n }\n .me-xxl-2 {\n margin-right: 0.5rem !important;\n }\n .me-xxl-3 {\n margin-right: 1rem !important;\n }\n .me-xxl-4 {\n margin-right: 1.5rem !important;\n }\n .me-xxl-5 {\n margin-right: 3rem !important;\n }\n .me-xxl-auto {\n margin-right: auto !important;\n }\n .mb-xxl-0 {\n margin-bottom: 0 !important;\n }\n .mb-xxl-1 {\n margin-bottom: 0.25rem !important;\n }\n .mb-xxl-2 {\n margin-bottom: 0.5rem !important;\n }\n .mb-xxl-3 {\n margin-bottom: 1rem !important;\n }\n .mb-xxl-4 {\n margin-bottom: 1.5rem !important;\n }\n .mb-xxl-5 {\n margin-bottom: 3rem !important;\n }\n .mb-xxl-auto {\n margin-bottom: auto !important;\n }\n .ms-xxl-0 {\n margin-left: 0 !important;\n }\n .ms-xxl-1 {\n margin-left: 0.25rem !important;\n }\n .ms-xxl-2 {\n margin-left: 0.5rem !important;\n }\n .ms-xxl-3 {\n margin-left: 1rem !important;\n }\n .ms-xxl-4 {\n margin-left: 1.5rem !important;\n }\n .ms-xxl-5 {\n margin-left: 3rem !important;\n }\n .ms-xxl-auto {\n margin-left: auto !important;\n }\n .p-xxl-0 {\n padding: 0 !important;\n }\n .p-xxl-1 {\n padding: 0.25rem !important;\n }\n .p-xxl-2 {\n padding: 0.5rem !important;\n }\n .p-xxl-3 {\n padding: 1rem !important;\n }\n .p-xxl-4 {\n padding: 1.5rem !important;\n }\n .p-xxl-5 {\n padding: 3rem !important;\n }\n .px-xxl-0 {\n padding-right: 0 !important;\n padding-left: 0 !important;\n }\n .px-xxl-1 {\n padding-right: 0.25rem !important;\n padding-left: 0.25rem !important;\n }\n .px-xxl-2 {\n padding-right: 0.5rem !important;\n padding-left: 0.5rem !important;\n }\n .px-xxl-3 {\n padding-right: 1rem !important;\n padding-left: 1rem !important;\n }\n .px-xxl-4 {\n padding-right: 1.5rem !important;\n padding-left: 1.5rem !important;\n }\n .px-xxl-5 {\n padding-right: 3rem !important;\n padding-left: 3rem !important;\n }\n .py-xxl-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n }\n .py-xxl-1 {\n padding-top: 0.25rem !important;\n padding-bottom: 0.25rem !important;\n }\n .py-xxl-2 {\n padding-top: 0.5rem !important;\n padding-bottom: 0.5rem !important;\n }\n .py-xxl-3 {\n padding-top: 1rem !important;\n padding-bottom: 1rem !important;\n }\n .py-xxl-4 {\n padding-top: 1.5rem !important;\n padding-bottom: 1.5rem !important;\n }\n .py-xxl-5 {\n padding-top: 3rem !important;\n padding-bottom: 3rem !important;\n }\n .pt-xxl-0 {\n padding-top: 0 !important;\n }\n .pt-xxl-1 {\n padding-top: 0.25rem !important;\n }\n .pt-xxl-2 {\n padding-top: 0.5rem !important;\n }\n .pt-xxl-3 {\n padding-top: 1rem !important;\n }\n .pt-xxl-4 {\n padding-top: 1.5rem !important;\n }\n .pt-xxl-5 {\n padding-top: 3rem !important;\n }\n .pe-xxl-0 {\n padding-right: 0 !important;\n }\n .pe-xxl-1 {\n padding-right: 0.25rem !important;\n }\n .pe-xxl-2 {\n padding-right: 0.5rem !important;\n }\n .pe-xxl-3 {\n padding-right: 1rem !important;\n }\n .pe-xxl-4 {\n padding-right: 1.5rem !important;\n }\n .pe-xxl-5 {\n padding-right: 3rem !important;\n }\n .pb-xxl-0 {\n padding-bottom: 0 !important;\n }\n .pb-xxl-1 {\n padding-bottom: 0.25rem !important;\n }\n .pb-xxl-2 {\n padding-bottom: 0.5rem !important;\n }\n .pb-xxl-3 {\n padding-bottom: 1rem !important;\n }\n .pb-xxl-4 {\n padding-bottom: 1.5rem !important;\n }\n .pb-xxl-5 {\n padding-bottom: 3rem !important;\n }\n .ps-xxl-0 {\n padding-left: 0 !important;\n }\n .ps-xxl-1 {\n padding-left: 0.25rem !important;\n }\n .ps-xxl-2 {\n padding-left: 0.5rem !important;\n }\n .ps-xxl-3 {\n padding-left: 1rem !important;\n }\n .ps-xxl-4 {\n padding-left: 1.5rem !important;\n }\n .ps-xxl-5 {\n padding-left: 3rem !important;\n }\n .gap-xxl-0 {\n gap: 0 !important;\n }\n .gap-xxl-1 {\n gap: 0.25rem !important;\n }\n .gap-xxl-2 {\n gap: 0.5rem !important;\n }\n .gap-xxl-3 {\n gap: 1rem !important;\n }\n .gap-xxl-4 {\n gap: 1.5rem !important;\n }\n .gap-xxl-5 {\n gap: 3rem !important;\n }\n .row-gap-xxl-0 {\n row-gap: 0 !important;\n }\n .row-gap-xxl-1 {\n row-gap: 0.25rem !important;\n }\n .row-gap-xxl-2 {\n row-gap: 0.5rem !important;\n }\n .row-gap-xxl-3 {\n row-gap: 1rem !important;\n }\n .row-gap-xxl-4 {\n row-gap: 1.5rem !important;\n }\n .row-gap-xxl-5 {\n row-gap: 3rem !important;\n }\n .column-gap-xxl-0 {\n -moz-column-gap: 0 !important;\n column-gap: 0 !important;\n }\n .column-gap-xxl-1 {\n -moz-column-gap: 0.25rem !important;\n column-gap: 0.25rem !important;\n }\n .column-gap-xxl-2 {\n -moz-column-gap: 0.5rem !important;\n column-gap: 0.5rem !important;\n }\n .column-gap-xxl-3 {\n -moz-column-gap: 1rem !important;\n column-gap: 1rem !important;\n }\n .column-gap-xxl-4 {\n -moz-column-gap: 1.5rem !important;\n column-gap: 1.5rem !important;\n }\n .column-gap-xxl-5 {\n -moz-column-gap: 3rem !important;\n column-gap: 3rem !important;\n }\n .text-xxl-start {\n text-align: left !important;\n }\n .text-xxl-end {\n text-align: right !important;\n }\n .text-xxl-center {\n text-align: center !important;\n }\n}\n@media (min-width: 1200px) {\n .fs-1 {\n font-size: 2.5rem !important;\n }\n .fs-2 {\n font-size: 2rem !important;\n }\n .fs-3 {\n font-size: 1.75rem !important;\n }\n .fs-4 {\n font-size: 1.5rem !important;\n }\n}\n@media print {\n .d-print-inline {\n display: inline !important;\n }\n .d-print-inline-block {\n display: inline-block !important;\n }\n .d-print-block {\n display: block !important;\n }\n .d-print-grid {\n display: grid !important;\n }\n .d-print-inline-grid {\n display: inline-grid !important;\n }\n .d-print-table {\n display: table !important;\n }\n .d-print-table-row {\n display: table-row !important;\n }\n .d-print-table-cell {\n display: table-cell !important;\n }\n .d-print-flex {\n display: flex !important;\n }\n .d-print-inline-flex {\n display: inline-flex !important;\n }\n .d-print-none {\n display: none !important;\n }\n}");o(".tabsGutter {\n display: flex;\n flex-direction: row;\n width: 100%;\n height: 40px;\n background-color: #252526;\n}\n\n.tabsContainer {\n display: flex;\n flex-direction: row;\n height: 100%;\n flex-grow: 1;\n overflow-x: auto;\n scrollbar-gutter: stable;\n scrollbar-color: rgba(71, 71, 71, 0.4) #1e1e1e;\n scrollbar-width: thin;\n}\n\n.tabsDropdown {\n float: right;\n display: flex;\n align-items: center;\n color: rgb(138, 138, 138);\n padding: 0 10px;\n cursor: pointer;\n height: 100%;\n}\n\n.chevron {\n color: rgb(177, 177, 177);\n}\n\n.chevron:hover {\n color: rgb(255, 255, 255);\n}\n\n.dropdown-menu {\n border-radius: 0 !important;\n padding: 0 !important;\n}\n\n.dropdown-item {\n font-size: 11px;\n}\n\n.dropdown-header {\n font-size: 12px !important;\n padding-bottom: 5px !important;\n}");var ao=e.forwardRef(function(e,t){var r=e.children,o=e.onClick;return n.jsx("a",{ref:t,onClick:function(n){n.preventDefault(),o(n)},children:r})}),io=function(t){var r=t.files,o=t.selectFile,a=t.systemTree,i=Y(e.useState(null),2),s=i[0],l=i[1],d=Y(e.useState([]),2),c=d[0],p=d[1],u=function(n,e){l(e.key),o(e.key)},b=function(n){var e=G(c);e.find(function(e){return e.key===n})?(l(n),o(n)):r.forEach(function(t,r){t.key===n&&(e.push(t),l(t.key),o(t.key),p(e))})},m=function(n,e){n.stopPropagation();var t=c.indexOf(e),r=G(c);if(r.splice(t,1),p(r),0===r.length)o(null),l(null);else{var a=t>=r.length?r.length-1:t;l(r[a].key),o(r[a].key)}};return e.useEffect(function(){if(r&&r.length>0){var n=Math.floor(Math.random()*r.length)+1,e=r.slice(0,n);p(e);var t=Math.floor(Math.random()*e.length);l(e[t].key),o(e[t].key)}},[r]),n.jsxs("div",{className:"tabsGutter",children:[n.jsx("div",{className:"tabsContainer",children:c.map(function(e){return n.jsx(ne,{file:e,activeTab:s,selectTab:u,closeTab:m},e.key)})}),n.jsx("div",{className:"tabsDropdown",children:r&&r.length>0&&n.jsxs(oo,{"data-bs-theme":"dark",children:[n.jsx(oo.Toggle,{as:ao,children:n.jsx(Zn,{className:"chevron"})}),n.jsx(oo.Menu,{children:function(){var e=[];if(!a)return e;for(var t in a){e.push(n.jsx(oo.Header,{children:t},"header-".concat(t)));var r=function(){var r=t+"_"+o;e.push(n.jsx(oo.Item,{onClick:function(){return b(r)},children:o},r))};for(var o in a[t])r();e.push(n.jsx(oo.Divider,{},"divider-".concat(t)))}return e.pop(),e}()})]})})]})};io.propTypes={files:A.array,selectFile:A.func,systemTree:A.object};var so=function(t){var r=t.systemTree,o=t.onFileSelect,a=Y(e.useState(),2),i=a[0],s=a[1],l=Y(e.useState(),2),d=l[0],c=l[1],p=Y(e.useState(),2),u=p[0],b=p[1];e.useEffect(function(){var n=[],e={};for(var t in r)for(var o in r[t]){var a=r[t][o],i=t+"_"+o,l={program:t,key:i,fileName:o.split("/").slice(-1)[0],path:o};e[i]=a.source,n.push(l)}0===n.length?(b("Select file using file navigator or drop down on top right."),c({}),s([])):(c(e),s(n))},[r]);return n.jsxs("div",{className:"viewerContainer",children:[n.jsx("div",{className:"tabContainer",children:n.jsx(io,{files:i,selectFile:function(n){if(n){if(i&&d){var e=i.find(function(e){return e.key===n});b(d[n]),o&&e&&o(e)}}else b("Select file using drop down on top right.")},systemTree:r})}),n.jsx("div",{className:"monacoContainer",children:n.jsx(Gn,{editorContent:u})})]})};function lo(n){if("string"==typeof n||"number"==typeof n)return""+n;let e="";if(Array.isArray(n))for(let t,r=0;r<n.length;r++)""!==(t=lo(n[r]))&&(e+=(e&&" ")+t);else for(let t in n)n[t]&&(e+=(e&&" ")+t);return e}so.propTypes={systemTree:A.object,onFileSelect:A.func};var co={value:()=>{}};function po(){for(var n,e=0,t=arguments.length,r={};e<t;++e){if(!(n=arguments[e]+"")||n in r||/[\s.]/.test(n))throw new Error("illegal type: "+n);r[n]=[]}return new uo(r)}function uo(n){this._=n}function bo(n,e){for(var t,r=0,o=n.length;r<o;++r)if((t=n[r]).name===e)return t.value}function mo(n,e,t){for(var r=0,o=n.length;r<o;++r)if(n[r].name===e){n[r]=co,n=n.slice(0,r).concat(n.slice(r+1));break}return null!=t&&n.push({name:e,value:t}),n}uo.prototype=po.prototype={constructor:uo,on:function(n,e){var t,r,o=this._,a=(r=o,(n+"").trim().split(/^|\s+/).map(function(n){var e="",t=n.indexOf(".");if(t>=0&&(e=n.slice(t+1),n=n.slice(0,t)),n&&!r.hasOwnProperty(n))throw new Error("unknown type: "+n);return{type:n,name:e}})),i=-1,s=a.length;if(!(arguments.length<2)){if(null!=e&&"function"!=typeof e)throw new Error("invalid callback: "+e);for(;++i<s;)if(t=(n=a[i]).type)o[t]=mo(o[t],n.name,e);else if(null==e)for(t in o)o[t]=mo(o[t],n.name,null);return this}for(;++i<s;)if((t=(n=a[i]).type)&&(t=bo(o[t],n.name)))return t},copy:function(){var n={},e=this._;for(var t in e)n[t]=e[t].slice();return new uo(n)},call:function(n,e){if((t=arguments.length-2)>0)for(var t,r,o=new Array(t),a=0;a<t;++a)o[a]=arguments[a+2];if(!this._.hasOwnProperty(n))throw new Error("unknown type: "+n);for(a=0,t=(r=this._[n]).length;a<t;++a)r[a].value.apply(e,o)},apply:function(n,e,t){if(!this._.hasOwnProperty(n))throw new Error("unknown type: "+n);for(var r=this._[n],o=0,a=r.length;o<a;++o)r[o].value.apply(e,t)}};var fo="http://www.w3.org/1999/xhtml",go={svg:"http://www.w3.org/2000/svg",xhtml:fo,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function ho(n){var e=n+="",t=e.indexOf(":");return t>=0&&"xmlns"!==(e=n.slice(0,t))&&(n=n.slice(t+1)),go.hasOwnProperty(e)?{space:go[e],local:n}:n}function vo(n){return function(){var e=this.ownerDocument,t=this.namespaceURI;return t===fo&&e.documentElement.namespaceURI===fo?e.createElement(n):e.createElementNS(t,n)}}function xo(n){return function(){return this.ownerDocument.createElementNS(n.space,n.local)}}function wo(n){var e=ho(n);return(e.local?xo:vo)(e)}function yo(){}function ko(n){return null==n?yo:function(){return this.querySelector(n)}}function _o(){return[]}function Eo(n){return null==n?_o:function(){return this.querySelectorAll(n)}}function So(n){return function(){return null==(e=n.apply(this,arguments))?[]:Array.isArray(e)?e:Array.from(e);var e}}function Oo(n){return function(){return this.matches(n)}}function Co(n){return function(e){return e.matches(n)}}var No=Array.prototype.find;function jo(){return this.firstElementChild}var zo=Array.prototype.filter;function Mo(){return Array.from(this.children)}function Po(n){return new Array(n.length)}function Ro(n,e){this.ownerDocument=n.ownerDocument,this.namespaceURI=n.namespaceURI,this._next=null,this._parent=n,this.__data__=e}function Ao(n,e,t,r,o,a){for(var i,s=0,l=e.length,d=a.length;s<d;++s)(i=e[s])?(i.__data__=a[s],r[s]=i):t[s]=new Ro(n,a[s]);for(;s<l;++s)(i=e[s])&&(o[s]=i)}function Io(n,e,t,r,o,a,i){var s,l,d,c=new Map,p=e.length,u=a.length,b=new Array(p);for(s=0;s<p;++s)(l=e[s])&&(b[s]=d=i.call(l,l.__data__,s,e)+"",c.has(d)?o[s]=l:c.set(d,l));for(s=0;s<u;++s)d=i.call(n,a[s],s,a)+"",(l=c.get(d))?(r[s]=l,l.__data__=a[s],c.delete(d)):t[s]=new Ro(n,a[s]);for(s=0;s<p;++s)(l=e[s])&&c.get(b[s])===l&&(o[s]=l)}function Do(n){return n.__data__}function Lo(n){return"object"==typeof n&&"length"in n?n:Array.from(n)}function To(n,e){return n<e?-1:n>e?1:n>=e?0:NaN}function Bo(n){return function(){this.removeAttribute(n)}}function Vo(n){return function(){this.removeAttributeNS(n.space,n.local)}}function $o(n,e){return function(){this.setAttribute(n,e)}}function Ho(n,e){return function(){this.setAttributeNS(n.space,n.local,e)}}function Fo(n,e){return function(){var t=e.apply(this,arguments);null==t?this.removeAttribute(n):this.setAttribute(n,t)}}function Yo(n,e){return function(){var t=e.apply(this,arguments);null==t?this.removeAttributeNS(n.space,n.local):this.setAttributeNS(n.space,n.local,t)}}function Go(n){return n.ownerDocument&&n.ownerDocument.defaultView||n.document&&n||n.defaultView}function Xo(n){return function(){this.style.removeProperty(n)}}function Wo(n,e,t){return function(){this.style.setProperty(n,e,t)}}function Zo(n,e,t){return function(){var r=e.apply(this,arguments);null==r?this.style.removeProperty(n):this.style.setProperty(n,r,t)}}function Ko(n,e){return n.style.getPropertyValue(e)||Go(n).getComputedStyle(n,null).getPropertyValue(e)}function qo(n){return function(){delete this[n]}}function Uo(n,e){return function(){this[n]=e}}function Qo(n,e){return function(){var t=e.apply(this,arguments);null==t?delete this[n]:this[n]=t}}function Jo(n){return n.trim().split(/^|\s+/)}function na(n){return n.classList||new ea(n)}function ea(n){this._node=n,this._names=Jo(n.getAttribute("class")||"")}function ta(n,e){for(var t=na(n),r=-1,o=e.length;++r<o;)t.add(e[r])}function ra(n,e){for(var t=na(n),r=-1,o=e.length;++r<o;)t.remove(e[r])}function oa(n){return function(){ta(this,n)}}function aa(n){return function(){ra(this,n)}}function ia(n,e){return function(){(e.apply(this,arguments)?ta:ra)(this,n)}}function sa(){this.textContent=""}function la(n){return function(){this.textContent=n}}function da(n){return function(){var e=n.apply(this,arguments);this.textContent=null==e?"":e}}function ca(){this.innerHTML=""}function pa(n){return function(){this.innerHTML=n}}function ua(n){return function(){var e=n.apply(this,arguments);this.innerHTML=null==e?"":e}}function ba(){this.nextSibling&&this.parentNode.appendChild(this)}function ma(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function fa(){return null}function ga(){var n=this.parentNode;n&&n.removeChild(this)}function ha(){var n=this.cloneNode(!1),e=this.parentNode;return e?e.insertBefore(n,this.nextSibling):n}function va(){var n=this.cloneNode(!0),e=this.parentNode;return e?e.insertBefore(n,this.nextSibling):n}function xa(n){return function(){var e=this.__on;if(e){for(var t,r=0,o=-1,a=e.length;r<a;++r)t=e[r],n.type&&t.type!==n.type||t.name!==n.name?e[++o]=t:this.removeEventListener(t.type,t.listener,t.options);++o?e.length=o:delete this.__on}}}function wa(n,e,t){return function(){var r,o=this.__on,a=function(n){return function(e){n.call(this,e,this.__data__)}}(e);if(o)for(var i=0,s=o.length;i<s;++i)if((r=o[i]).type===n.type&&r.name===n.name)return this.removeEventListener(r.type,r.listener,r.options),this.addEventListener(r.type,r.listener=a,r.options=t),void(r.value=e);this.addEventListener(n.type,a,t),r={type:n.type,name:n.name,value:e,listener:a,options:t},o?o.push(r):this.__on=[r]}}function ya(n,e,t){var r=Go(n),o=r.CustomEvent;"function"==typeof o?o=new o(e,t):(o=r.document.createEvent("Event"),t?(o.initEvent(e,t.bubbles,t.cancelable),o.detail=t.detail):o.initEvent(e,!1,!1)),n.dispatchEvent(o)}function ka(n,e){return function(){return ya(this,n,e)}}function _a(n,e){return function(){return ya(this,n,e.apply(this,arguments))}}Ro.prototype={constructor:Ro,appendChild:function(n){return this._parent.insertBefore(n,this._next)},insertBefore:function(n,e){return this._parent.insertBefore(n,e)},querySelector:function(n){return this._parent.querySelector(n)},querySelectorAll:function(n){return this._parent.querySelectorAll(n)}},ea.prototype={add:function(n){this._names.indexOf(n)<0&&(this._names.push(n),this._node.setAttribute("class",this._names.join(" ")))},remove:function(n){var e=this._names.indexOf(n);e>=0&&(this._names.splice(e,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(n){return this._names.indexOf(n)>=0}};var Ea=[null];function Sa(n,e){this._groups=n,this._parents=e}function Oa(){return new Sa([[document.documentElement]],Ea)}function Ca(n){return"string"==typeof n?new Sa([[document.querySelector(n)]],[document.documentElement]):new Sa([[n]],Ea)}function Na(n,e){if(n=function(n){let e;for(;e=n.sourceEvent;)n=e;return n}(n),void 0===e&&(e=n.currentTarget),e){var t=e.ownerSVGElement||e;if(t.createSVGPoint){var r=t.createSVGPoint();return r.x=n.clientX,r.y=n.clientY,[(r=r.matrixTransform(e.getScreenCTM().inverse())).x,r.y]}if(e.getBoundingClientRect){var o=e.getBoundingClientRect();return[n.clientX-o.left-e.clientLeft,n.clientY-o.top-e.clientTop]}}return[n.pageX,n.pageY]}Sa.prototype=Oa.prototype={constructor:Sa,select:function(n){"function"!=typeof n&&(n=ko(n));for(var e=this._groups,t=e.length,r=new Array(t),o=0;o<t;++o)for(var a,i,s=e[o],l=s.length,d=r[o]=new Array(l),c=0;c<l;++c)(a=s[c])&&(i=n.call(a,a.__data__,c,s))&&("__data__"in a&&(i.__data__=a.__data__),d[c]=i);return new Sa(r,this._parents)},selectAll:function(n){n="function"==typeof n?So(n):Eo(n);for(var e=this._groups,t=e.length,r=[],o=[],a=0;a<t;++a)for(var i,s=e[a],l=s.length,d=0;d<l;++d)(i=s[d])&&(r.push(n.call(i,i.__data__,d,s)),o.push(i));return new Sa(r,o)},selectChild:function(n){return this.select(null==n?jo:function(n){return function(){return No.call(this.children,n)}}("function"==typeof n?n:Co(n)))},selectChildren:function(n){return this.selectAll(null==n?Mo:function(n){return function(){return zo.call(this.children,n)}}("function"==typeof n?n:Co(n)))},filter:function(n){"function"!=typeof n&&(n=Oo(n));for(var e=this._groups,t=e.length,r=new Array(t),o=0;o<t;++o)for(var a,i=e[o],s=i.length,l=r[o]=[],d=0;d<s;++d)(a=i[d])&&n.call(a,a.__data__,d,i)&&l.push(a);return new Sa(r,this._parents)},data:function(n,e){if(!arguments.length)return Array.from(this,Do);var t,r=e?Io:Ao,o=this._parents,a=this._groups;"function"!=typeof n&&(t=n,n=function(){return t});for(var i=a.length,s=new Array(i),l=new Array(i),d=new Array(i),c=0;c<i;++c){var p=o[c],u=a[c],b=u.length,m=Lo(n.call(p,p&&p.__data__,c,o)),f=m.length,g=l[c]=new Array(f),h=s[c]=new Array(f);r(p,u,g,h,d[c]=new Array(b),m,e);for(var v,x,w=0,y=0;w<f;++w)if(v=g[w]){for(w>=y&&(y=w+1);!(x=h[y])&&++y<f;);v._next=x||null}}return(s=new Sa(s,o))._enter=l,s._exit=d,s},enter:function(){return new Sa(this._enter||this._groups.map(Po),this._parents)},exit:function(){return new Sa(this._exit||this._groups.map(Po),this._parents)},join:function(n,e,t){var r=this.enter(),o=this,a=this.exit();return"function"==typeof n?(r=n(r))&&(r=r.selection()):r=r.append(n+""),null!=e&&(o=e(o))&&(o=o.selection()),null==t?a.remove():t(a),r&&o?r.merge(o).order():o},merge:function(n){for(var e=n.selection?n.selection():n,t=this._groups,r=e._groups,o=t.length,a=r.length,i=Math.min(o,a),s=new Array(o),l=0;l<i;++l)for(var d,c=t[l],p=r[l],u=c.length,b=s[l]=new Array(u),m=0;m<u;++m)(d=c[m]||p[m])&&(b[m]=d);for(;l<o;++l)s[l]=t[l];return new Sa(s,this._parents)},selection:function(){return this},order:function(){for(var n=this._groups,e=-1,t=n.length;++e<t;)for(var r,o=n[e],a=o.length-1,i=o[a];--a>=0;)(r=o[a])&&(i&&4^r.compareDocumentPosition(i)&&i.parentNode.insertBefore(r,i),i=r);return this},sort:function(n){function e(e,t){return e&&t?n(e.__data__,t.__data__):!e-!t}n||(n=To);for(var t=this._groups,r=t.length,o=new Array(r),a=0;a<r;++a){for(var i,s=t[a],l=s.length,d=o[a]=new Array(l),c=0;c<l;++c)(i=s[c])&&(d[c]=i);d.sort(e)}return new Sa(o,this._parents).order()},call:function(){var n=arguments[0];return arguments[0]=this,n.apply(null,arguments),this},nodes:function(){return Array.from(this)},node:function(){for(var n=this._groups,e=0,t=n.length;e<t;++e)for(var r=n[e],o=0,a=r.length;o<a;++o){var i=r[o];if(i)return i}return null},size:function(){let n=0;for(const e of this)++n;return n},empty:function(){return!this.node()},each:function(n){for(var e=this._groups,t=0,r=e.length;t<r;++t)for(var o,a=e[t],i=0,s=a.length;i<s;++i)(o=a[i])&&n.call(o,o.__data__,i,a);return this},attr:function(n,e){var t=ho(n);if(arguments.length<2){var r=this.node();return t.local?r.getAttributeNS(t.space,t.local):r.getAttribute(t)}return this.each((null==e?t.local?Vo:Bo:"function"==typeof e?t.local?Yo:Fo:t.local?Ho:$o)(t,e))},style:function(n,e,t){return arguments.length>1?this.each((null==e?Xo:"function"==typeof e?Zo:Wo)(n,e,null==t?"":t)):Ko(this.node(),n)},property:function(n,e){return arguments.length>1?this.each((null==e?qo:"function"==typeof e?Qo:Uo)(n,e)):this.node()[n]},classed:function(n,e){var t=Jo(n+"");if(arguments.length<2){for(var r=na(this.node()),o=-1,a=t.length;++o<a;)if(!r.contains(t[o]))return!1;return!0}return this.each(("function"==typeof e?ia:e?oa:aa)(t,e))},text:function(n){return arguments.length?this.each(null==n?sa:("function"==typeof n?da:la)(n)):this.node().textContent},html:function(n){return arguments.length?this.each(null==n?ca:("function"==typeof n?ua:pa)(n)):this.node().innerHTML},raise:function(){return this.each(ba)},lower:function(){return this.each(ma)},append:function(n){var e="function"==typeof n?n:wo(n);return this.select(function(){return this.appendChild(e.apply(this,arguments))})},insert:function(n,e){var t="function"==typeof n?n:wo(n),r=null==e?fa:"function"==typeof e?e:ko(e);return this.select(function(){return this.insertBefore(t.apply(this,arguments),r.apply(this,arguments)||null)})},remove:function(){return this.each(ga)},clone:function(n){return this.select(n?va:ha)},datum:function(n){return arguments.length?this.property("__data__",n):this.node().__data__},on:function(n,e,t){var r,o,a=function(n){return n.trim().split(/^|\s+/).map(function(n){var e="",t=n.indexOf(".");return t>=0&&(e=n.slice(t+1),n=n.slice(0,t)),{type:n,name:e}})}(n+""),i=a.length;if(!(arguments.length<2)){for(s=e?wa:xa,r=0;r<i;++r)this.each(s(a[r],e,t));return this}var s=this.node().__on;if(s)for(var l,d=0,c=s.length;d<c;++d)for(r=0,l=s[d];r<i;++r)if((o=a[r]).type===l.type&&o.name===l.name)return l.value},dispatch:function(n,e){return this.each(("function"==typeof e?_a:ka)(n,e))},[Symbol.iterator]:function*(){for(var n=this._groups,e=0,t=n.length;e<t;++e)for(var r,o=n[e],a=0,i=o.length;a<i;++a)(r=o[a])&&(yield r)}};const ja={passive:!1},za={capture:!0,passive:!1};function Ma(n){n.stopImmediatePropagation()}function Pa(n){n.preventDefault(),n.stopImmediatePropagation()}function Ra(n){var e=n.document.documentElement,t=Ca(n).on("dragstart.drag",Pa,za);"onselectstart"in e?t.on("selectstart.drag",Pa,za):(e.__noselect=e.style.MozUserSelect,e.style.MozUserSelect="none")}function Aa(n,e){var t=n.document.documentElement,r=Ca(n).on("dragstart.drag",null);e&&(r.on("click.drag",Pa,za),setTimeout(function(){r.on("click.drag",null)},0)),"onselectstart"in t?r.on("selectstart.drag",null):(t.style.MozUserSelect=t.__noselect,delete t.__noselect)}var Ia=n=>()=>n;function Da(n,{sourceEvent:e,subject:t,target:r,identifier:o,active:a,x:i,y:s,dx:l,dy:d,dispatch:c}){Object.defineProperties(this,{type:{value:n,enumerable:!0,configurable:!0},sourceEvent:{value:e,enumerable:!0,configurable:!0},subject:{value:t,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},identifier:{value:o,enumerable:!0,configurable:!0},active:{value:a,enumerable:!0,configurable:!0},x:{value:i,enumerable:!0,configurable:!0},y:{value:s,enumerable:!0,configurable:!0},dx:{value:l,enumerable:!0,configurable:!0},dy:{value:d,enumerable:!0,configurable:!0},_:{value:c}})}function La(n){return!n.ctrlKey&&!n.button}function Ta(){return this.parentNode}function Ba(n,e){return null==e?{x:n.x,y:n.y}:e}function Va(){return navigator.maxTouchPoints||"ontouchstart"in this}function $a(){var n,e,t,r,o=La,a=Ta,i=Ba,s=Va,l={},d=po("start","drag","end"),c=0,p=0;function u(n){n.on("mousedown.drag",b).filter(s).on("touchstart.drag",g).on("touchmove.drag",h,ja).on("touchend.drag touchcancel.drag",v).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function b(i,s){if(!r&&o.call(this,i,s)){var l=x(this,a.call(this,i,s),i,s,"mouse");l&&(Ca(i.view).on("mousemove.drag",m,za).on("mouseup.drag",f,za),Ra(i.view),Ma(i),t=!1,n=i.clientX,e=i.clientY,l("start",i))}}function m(r){if(Pa(r),!t){var o=r.clientX-n,a=r.clientY-e;t=o*o+a*a>p}l.mouse("drag",r)}function f(n){Ca(n.view).on("mousemove.drag mouseup.drag",null),Aa(n.view,t),Pa(n),l.mouse("end",n)}function g(n,e){if(o.call(this,n,e)){var t,r,i=n.changedTouches,s=a.call(this,n,e),l=i.length;for(t=0;t<l;++t)(r=x(this,s,n,e,i[t].identifier,i[t]))&&(Ma(n),r("start",n,i[t]))}}function h(n){var e,t,r=n.changedTouches,o=r.length;for(e=0;e<o;++e)(t=l[r[e].identifier])&&(Pa(n),t("drag",n,r[e]))}function v(n){var e,t,o=n.changedTouches,a=o.length;for(r&&clearTimeout(r),r=setTimeout(function(){r=null},500),e=0;e<a;++e)(t=l[o[e].identifier])&&(Ma(n),t("end",n,o[e]))}function x(n,e,t,r,o,a){var s,p,b,m=d.copy(),f=Na(a||t,e);if(null!=(b=i.call(n,new Da("beforestart",{sourceEvent:t,target:u,identifier:o,active:c,x:f[0],y:f[1],dx:0,dy:0,dispatch:m}),r)))return s=b.x-f[0]||0,p=b.y-f[1]||0,function t(a,i,d){var g,h=f;switch(a){case"start":l[o]=t,g=c++;break;case"end":delete l[o],--c;case"drag":f=Na(d||i,e),g=c}m.call(a,n,new Da(a,{sourceEvent:i,subject:b,target:u,identifier:o,active:g,x:f[0]+s,y:f[1]+p,dx:f[0]-h[0],dy:f[1]-h[1],dispatch:m}),r)}}return u.filter=function(n){return arguments.length?(o="function"==typeof n?n:Ia(!!n),u):o},u.container=function(n){return arguments.length?(a="function"==typeof n?n:Ia(n),u):a},u.subject=function(n){return arguments.length?(i="function"==typeof n?n:Ia(n),u):i},u.touchable=function(n){return arguments.length?(s="function"==typeof n?n:Ia(!!n),u):s},u.on=function(){var n=d.on.apply(d,arguments);return n===d?u:n},u.clickDistance=function(n){return arguments.length?(p=(n=+n)*n,u):Math.sqrt(p)},u}function Ha(n,e,t){n.prototype=e.prototype=t,t.constructor=n}function Fa(n,e){var t=Object.create(n.prototype);for(var r in e)t[r]=e[r];return t}function Ya(){}Da.prototype.on=function(){var n=this._.on.apply(this._,arguments);return n===this._?this:n};var Ga=.7,Xa=1/Ga,Wa="\\s*([+-]?\\d+)\\s*",Za="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Ka="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",qa=/^#([0-9a-f]{3,8})$/,Ua=new RegExp(`^rgb\\(${Wa},${Wa},${Wa}\\)$`),Qa=new RegExp(`^rgb\\(${Ka},${Ka},${Ka}\\)$`),Ja=new RegExp(`^rgba\\(${Wa},${Wa},${Wa},${Za}\\)$`),ni=new RegExp(`^rgba\\(${Ka},${Ka},${Ka},${Za}\\)$`),ei=new RegExp(`^hsl\\(${Za},${Ka},${Ka}\\)$`),ti=new RegExp(`^hsla\\(${Za},${Ka},${Ka},${Za}\\)$`),ri={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};function oi(){return this.rgb().formatHex()}function ai(){return this.rgb().formatRgb()}function ii(n){var e,t;return n=(n+"").trim().toLowerCase(),(e=qa.exec(n))?(t=e[1].length,e=parseInt(e[1],16),6===t?si(e):3===t?new ci(e>>8&15|e>>4&240,e>>4&15|240&e,(15&e)<<4|15&e,1):8===t?li(e>>24&255,e>>16&255,e>>8&255,(255&e)/255):4===t?li(e>>12&15|e>>8&240,e>>8&15|e>>4&240,e>>4&15|240&e,((15&e)<<4|15&e)/255):null):(e=Ua.exec(n))?new ci(e[1],e[2],e[3],1):(e=Qa.exec(n))?new ci(255*e[1]/100,255*e[2]/100,255*e[3]/100,1):(e=Ja.exec(n))?li(e[1],e[2],e[3],e[4]):(e=ni.exec(n))?li(255*e[1]/100,255*e[2]/100,255*e[3]/100,e[4]):(e=ei.exec(n))?gi(e[1],e[2]/100,e[3]/100,1):(e=ti.exec(n))?gi(e[1],e[2]/100,e[3]/100,e[4]):ri.hasOwnProperty(n)?si(ri[n]):"transparent"===n?new ci(NaN,NaN,NaN,0):null}function si(n){return new ci(n>>16&255,n>>8&255,255&n,1)}function li(n,e,t,r){return r<=0&&(n=e=t=NaN),new ci(n,e,t,r)}function di(n,e,t,r){return 1===arguments.length?((o=n)instanceof Ya||(o=ii(o)),o?new ci((o=o.rgb()).r,o.g,o.b,o.opacity):new ci):new ci(n,e,t,null==r?1:r);var o}function ci(n,e,t,r){this.r=+n,this.g=+e,this.b=+t,this.opacity=+r}function pi(){return`#${fi(this.r)}${fi(this.g)}${fi(this.b)}`}function ui(){const n=bi(this.opacity);return`${1===n?"rgb(":"rgba("}${mi(this.r)}, ${mi(this.g)}, ${mi(this.b)}${1===n?")":`, ${n})`}`}function bi(n){return isNaN(n)?1:Math.max(0,Math.min(1,n))}function mi(n){return Math.max(0,Math.min(255,Math.round(n)||0))}function fi(n){return((n=mi(n))<16?"0":"")+n.toString(16)}function gi(n,e,t,r){return r<=0?n=e=t=NaN:t<=0||t>=1?n=e=NaN:e<=0&&(n=NaN),new vi(n,e,t,r)}function hi(n){if(n instanceof vi)return new vi(n.h,n.s,n.l,n.opacity);if(n instanceof Ya||(n=ii(n)),!n)return new vi;if(n instanceof vi)return n;var e=(n=n.rgb()).r/255,t=n.g/255,r=n.b/255,o=Math.min(e,t,r),a=Math.max(e,t,r),i=NaN,s=a-o,l=(a+o)/2;return s?(i=e===a?(t-r)/s+6*(t<r):t===a?(r-e)/s+2:(e-t)/s+4,s/=l<.5?a+o:2-a-o,i*=60):s=l>0&&l<1?0:i,new vi(i,s,l,n.opacity)}function vi(n,e,t,r){this.h=+n,this.s=+e,this.l=+t,this.opacity=+r}function xi(n){return(n=(n||0)%360)<0?n+360:n}function wi(n){return Math.max(0,Math.min(1,n||0))}function yi(n,e,t){return 255*(n<60?e+(t-e)*n/60:n<180?t:n<240?e+(t-e)*(240-n)/60:e)}Ha(Ya,ii,{copy(n){return Object.assign(new this.constructor,this,n)},displayable(){return this.rgb().displayable()},hex:oi,formatHex:oi,formatHex8:function(){return this.rgb().formatHex8()},formatHsl:function(){return hi(this).formatHsl()},formatRgb:ai,toString:ai}),Ha(ci,di,Fa(Ya,{brighter(n){return n=null==n?Xa:Math.pow(Xa,n),new ci(this.r*n,this.g*n,this.b*n,this.opacity)},darker(n){return n=null==n?Ga:Math.pow(Ga,n),new ci(this.r*n,this.g*n,this.b*n,this.opacity)},rgb(){return this},clamp(){return new ci(mi(this.r),mi(this.g),mi(this.b),bi(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:pi,formatHex:pi,formatHex8:function(){return`#${fi(this.r)}${fi(this.g)}${fi(this.b)}${fi(255*(isNaN(this.opacity)?1:this.opacity))}`},formatRgb:ui,toString:ui})),Ha(vi,function(n,e,t,r){return 1===arguments.length?hi(n):new vi(n,e,t,null==r?1:r)},Fa(Ya,{brighter(n){return n=null==n?Xa:Math.pow(Xa,n),new vi(this.h,this.s,this.l*n,this.opacity)},darker(n){return n=null==n?Ga:Math.pow(Ga,n),new vi(this.h,this.s,this.l*n,this.opacity)},rgb(){var n=this.h%360+360*(this.h<0),e=isNaN(n)||isNaN(this.s)?0:this.s,t=this.l,r=t+(t<.5?t:1-t)*e,o=2*t-r;return new ci(yi(n>=240?n-240:n+120,o,r),yi(n,o,r),yi(n<120?n+240:n-120,o,r),this.opacity)},clamp(){return new vi(xi(this.h),wi(this.s),wi(this.l),bi(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const n=bi(this.opacity);return`${1===n?"hsl(":"hsla("}${xi(this.h)}, ${100*wi(this.s)}%, ${100*wi(this.l)}%${1===n?")":`, ${n})`}`}}));var ki=n=>()=>n;function _i(n){return 1===(n=+n)?Ei:function(e,t){return t-e?function(n,e,t){return n=Math.pow(n,t),e=Math.pow(e,t)-n,t=1/t,function(r){return Math.pow(n+r*e,t)}}(e,t,n):ki(isNaN(e)?t:e)}}function Ei(n,e){var t=e-n;return t?function(n,e){return function(t){return n+t*e}}(n,t):ki(isNaN(n)?e:n)}var Si=function n(e){var t=_i(e);function r(n,e){var r=t((n=di(n)).r,(e=di(e)).r),o=t(n.g,e.g),a=t(n.b,e.b),i=Ei(n.opacity,e.opacity);return function(e){return n.r=r(e),n.g=o(e),n.b=a(e),n.opacity=i(e),n+""}}return r.gamma=n,r}(1);function Oi(n,e){e||(e=[]);var t,r=n?Math.min(e.length,n.length):0,o=e.slice();return function(a){for(t=0;t<r;++t)o[t]=n[t]*(1-a)+e[t]*a;return o}}function Ci(n,e){var t,r=e?e.length:0,o=n?Math.min(r,n.length):0,a=new Array(o),i=new Array(r);for(t=0;t<o;++t)a[t]=Ai(n[t],e[t]);for(;t<r;++t)i[t]=e[t];return function(n){for(t=0;t<o;++t)i[t]=a[t](n);return i}}function Ni(n,e){var t=new Date;return n=+n,e=+e,function(r){return t.setTime(n*(1-r)+e*r),t}}function ji(n,e){return n=+n,e=+e,function(t){return n*(1-t)+e*t}}function zi(n,e){var t,r={},o={};for(t in null!==n&&"object"==typeof n||(n={}),null!==e&&"object"==typeof e||(e={}),e)t in n?r[t]=Ai(n[t],e[t]):o[t]=e[t];return function(n){for(t in r)o[t]=r[t](n);return o}}var Mi=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,Pi=new RegExp(Mi.source,"g");function Ri(n,e){var t,r,o,a=Mi.lastIndex=Pi.lastIndex=0,i=-1,s=[],l=[];for(n+="",e+="";(t=Mi.exec(n))&&(r=Pi.exec(e));)(o=r.index)>a&&(o=e.slice(a,o),s[i]?s[i]+=o:s[++i]=o),(t=t[0])===(r=r[0])?s[i]?s[i]+=r:s[++i]=r:(s[++i]=null,l.push({i:i,x:ji(t,r)})),a=Pi.lastIndex;return a<e.length&&(o=e.slice(a),s[i]?s[i]+=o:s[++i]=o),s.length<2?l[0]?function(n){return function(e){return n(e)+""}}(l[0].x):function(n){return function(){return n}}(e):(e=l.length,function(n){for(var t,r=0;r<e;++r)s[(t=l[r]).i]=t.x(n);return s.join("")})}function Ai(n,e){var t,r,o=typeof e;return null==e||"boolean"===o?ki(e):("number"===o?ji:"string"===o?(t=ii(e))?(e=t,Si):Ri:e instanceof ii?Si:e instanceof Date?Ni:(r=e,!ArrayBuffer.isView(r)||r instanceof DataView?Array.isArray(e)?Ci:"function"!=typeof e.valueOf&&"function"!=typeof e.toString||isNaN(e)?zi:ji:Oi))(n,e)}var Ii,Di=180/Math.PI,Li={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function Ti(n,e,t,r,o,a){var i,s,l;return(i=Math.sqrt(n*n+e*e))&&(n/=i,e/=i),(l=n*t+e*r)&&(t-=n*l,r-=e*l),(s=Math.sqrt(t*t+r*r))&&(t/=s,r/=s,l/=s),n*r<e*t&&(n=-n,e=-e,l=-l,i=-i),{translateX:o,translateY:a,rotate:Math.atan2(e,n)*Di,skewX:Math.atan(l)*Di,scaleX:i,scaleY:s}}function Bi(n,e,t,r){function o(n){return n.length?n.pop()+" ":""}return function(a,i){var s=[],l=[];return a=n(a),i=n(i),function(n,r,o,a,i,s){if(n!==o||r!==a){var l=i.push("translate(",null,e,null,t);s.push({i:l-4,x:ji(n,o)},{i:l-2,x:ji(r,a)})}else(o||a)&&i.push("translate("+o+e+a+t)}(a.translateX,a.translateY,i.translateX,i.translateY,s,l),function(n,e,t,a){n!==e?(n-e>180?e+=360:e-n>180&&(n+=360),a.push({i:t.push(o(t)+"rotate(",null,r)-2,x:ji(n,e)})):e&&t.push(o(t)+"rotate("+e+r)}(a.rotate,i.rotate,s,l),function(n,e,t,a){n!==e?a.push({i:t.push(o(t)+"skewX(",null,r)-2,x:ji(n,e)}):e&&t.push(o(t)+"skewX("+e+r)}(a.skewX,i.skewX,s,l),function(n,e,t,r,a,i){if(n!==t||e!==r){var s=a.push(o(a)+"scale(",null,",",null,")");i.push({i:s-4,x:ji(n,t)},{i:s-2,x:ji(e,r)})}else 1===t&&1===r||a.push(o(a)+"scale("+t+","+r+")")}(a.scaleX,a.scaleY,i.scaleX,i.scaleY,s,l),a=i=null,function(n){for(var e,t=-1,r=l.length;++t<r;)s[(e=l[t]).i]=e.x(n);return s.join("")}}}var Vi=Bi(function(n){const e=new("function"==typeof DOMMatrix?DOMMatrix:WebKitCSSMatrix)(n+"");return e.isIdentity?Li:Ti(e.a,e.b,e.c,e.d,e.e,e.f)},"px, ","px)","deg)"),$i=Bi(function(n){return null==n?Li:(Ii||(Ii=document.createElementNS("http://www.w3.org/2000/svg","g")),Ii.setAttribute("transform",n),(n=Ii.transform.baseVal.consolidate())?Ti((n=n.matrix).a,n.b,n.c,n.d,n.e,n.f):Li)},", ",")",")");function Hi(n){return((n=Math.exp(n))+1/n)/2}var Fi,Yi,Gi=function n(e,t,r){function o(n,o){var a,i,s=n[0],l=n[1],d=n[2],c=o[0],p=o[1],u=o[2],b=c-s,m=p-l,f=b*b+m*m;if(f<1e-12)i=Math.log(u/d)/e,a=function(n){return[s+n*b,l+n*m,d*Math.exp(e*n*i)]};else{var g=Math.sqrt(f),h=(u*u-d*d+r*f)/(2*d*t*g),v=(u*u-d*d-r*f)/(2*u*t*g),x=Math.log(Math.sqrt(h*h+1)-h),w=Math.log(Math.sqrt(v*v+1)-v);i=(w-x)/e,a=function(n){var r,o=n*i,a=Hi(x),c=d/(t*g)*(a*(r=e*o+x,((r=Math.exp(2*r))-1)/(r+1))-function(n){return((n=Math.exp(n))-1/n)/2}(x));return[s+c*b,l+c*m,d*a/Hi(e*o+x)]}}return a.duration=1e3*i*e/Math.SQRT2,a}return o.rho=function(e){var t=Math.max(.001,+e),r=t*t;return n(t,r,r*r)},o}(Math.SQRT2,2,4),Xi=0,Wi=0,Zi=0,Ki=0,qi=0,Ui=0,Qi="object"==typeof performance&&performance.now?performance:Date,Ji="object"==typeof window&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(n){setTimeout(n,17)};function ns(){return qi||(Ji(es),qi=Qi.now()+Ui)}function es(){qi=0}function ts(){this._call=this._time=this._next=null}function rs(n,e,t){var r=new ts;return r.restart(n,e,t),r}function os(){qi=(Ki=Qi.now())+Ui,Xi=Wi=0;try{!function(){ns(),++Xi;for(var n,e=Fi;e;)(n=qi-e._time)>=0&&e._call.call(void 0,n),e=e._next;--Xi}()}finally{Xi=0,function(){var n,e,t=Fi,r=1/0;for(;t;)t._call?(r>t._time&&(r=t._time),n=t,t=t._next):(e=t._next,t._next=null,t=n?n._next=e:Fi=e);Yi=n,is(r)}(),qi=0}}function as(){var n=Qi.now(),e=n-Ki;e>1e3&&(Ui-=e,Ki=n)}function is(n){Xi||(Wi&&(Wi=clearTimeout(Wi)),n-qi>24?(n<1/0&&(Wi=setTimeout(os,n-Qi.now()-Ui)),Zi&&(Zi=clearInterval(Zi))):(Zi||(Ki=Qi.now(),Zi=setInterval(as,1e3)),Xi=1,Ji(os)))}function ss(n,e,t){var r=new ts;return e=null==e?0:+e,r.restart(t=>{r.stop(),n(t+e)},e,t),r}ts.prototype=rs.prototype={constructor:ts,restart:function(n,e,t){if("function"!=typeof n)throw new TypeError("callback is not a function");t=(null==t?ns():+t)+(null==e?0:+e),this._next||Yi===this||(Yi?Yi._next=this:Fi=this,Yi=this),this._call=n,this._time=t,is()},stop:function(){this._call&&(this._call=null,this._time=1/0,is())}};var ls=po("start","end","cancel","interrupt"),ds=[];function cs(n,e,t,r,o,a){var i=n.__transition;if(i){if(t in i)return}else n.__transition={};!function(n,e,t){var r,o=n.__transition;function a(n){t.state=1,t.timer.restart(i,t.delay,t.time),t.delay<=n&&i(n-t.delay)}function i(a){var d,c,p,u;if(1!==t.state)return l();for(d in o)if((u=o[d]).name===t.name){if(3===u.state)return ss(i);4===u.state?(u.state=6,u.timer.stop(),u.on.call("interrupt",n,n.__data__,u.index,u.group),delete o[d]):+d<e&&(u.state=6,u.timer.stop(),u.on.call("cancel",n,n.__data__,u.index,u.group),delete o[d])}if(ss(function(){3===t.state&&(t.state=4,t.timer.restart(s,t.delay,t.time),s(a))}),t.state=2,t.on.call("start",n,n.__data__,t.index,t.group),2===t.state){for(t.state=3,r=new Array(p=t.tween.length),d=0,c=-1;d<p;++d)(u=t.tween[d].value.call(n,n.__data__,t.index,t.group))&&(r[++c]=u);r.length=c+1}}function s(e){for(var o=e<t.duration?t.ease.call(null,e/t.duration):(t.timer.restart(l),t.state=5,1),a=-1,i=r.length;++a<i;)r[a].call(n,o);5===t.state&&(t.on.call("end",n,n.__data__,t.index,t.group),l())}function l(){for(var r in t.state=6,t.timer.stop(),delete o[e],o)return;delete n.__transition}o[e]=t,t.timer=rs(a,0,t.time)}(n,t,{name:e,index:r,group:o,on:ls,tween:ds,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:0})}function ps(n,e){var t=bs(n,e);if(t.state>0)throw new Error("too late; already scheduled");return t}function us(n,e){var t=bs(n,e);if(t.state>3)throw new Error("too late; already running");return t}function bs(n,e){var t=n.__transition;if(!t||!(t=t[e]))throw new Error("transition not found");return t}function ms(n,e){var t,r,o,a=n.__transition,i=!0;if(a){for(o in e=null==e?null:e+"",a)(t=a[o]).name===e?(r=t.state>2&&t.state<5,t.state=6,t.timer.stop(),t.on.call(r?"interrupt":"cancel",n,n.__data__,t.index,t.group),delete a[o]):i=!1;i&&delete n.__transition}}function fs(n,e){var t,r;return function(){var o=us(this,n),a=o.tween;if(a!==t)for(var i=0,s=(r=t=a).length;i<s;++i)if(r[i].name===e){(r=r.slice()).splice(i,1);break}o.tween=r}}function gs(n,e,t){var r,o;if("function"!=typeof t)throw new Error;return function(){var a=us(this,n),i=a.tween;if(i!==r){o=(r=i).slice();for(var s={name:e,value:t},l=0,d=o.length;l<d;++l)if(o[l].name===e){o[l]=s;break}l===d&&o.push(s)}a.tween=o}}function hs(n,e,t){var r=n._id;return n.each(function(){var n=us(this,r);(n.value||(n.value={}))[e]=t.apply(this,arguments)}),function(n){return bs(n,r).value[e]}}function vs(n,e){var t;return("number"==typeof e?ji:e instanceof ii?Si:(t=ii(e))?(e=t,Si):Ri)(n,e)}function xs(n){return function(){this.removeAttribute(n)}}function ws(n){return function(){this.removeAttributeNS(n.space,n.local)}}function ys(n,e,t){var r,o,a=t+"";return function(){var i=this.getAttribute(n);return i===a?null:i===r?o:o=e(r=i,t)}}function ks(n,e,t){var r,o,a=t+"";return function(){var i=this.getAttributeNS(n.space,n.local);return i===a?null:i===r?o:o=e(r=i,t)}}function _s(n,e,t){var r,o,a;return function(){var i,s,l=t(this);if(null!=l)return(i=this.getAttribute(n))===(s=l+"")?null:i===r&&s===o?a:(o=s,a=e(r=i,l));this.removeAttribute(n)}}function Es(n,e,t){var r,o,a;return function(){var i,s,l=t(this);if(null!=l)return(i=this.getAttributeNS(n.space,n.local))===(s=l+"")?null:i===r&&s===o?a:(o=s,a=e(r=i,l));this.removeAttributeNS(n.space,n.local)}}function Ss(n,e){var t,r;function o(){var o=e.apply(this,arguments);return o!==r&&(t=(r=o)&&function(n,e){return function(t){this.setAttributeNS(n.space,n.local,e.call(this,t))}}(n,o)),t}return o._value=e,o}function Os(n,e){var t,r;function o(){var o=e.apply(this,arguments);return o!==r&&(t=(r=o)&&function(n,e){return function(t){this.setAttribute(n,e.call(this,t))}}(n,o)),t}return o._value=e,o}function Cs(n,e){return function(){ps(this,n).delay=+e.apply(this,arguments)}}function Ns(n,e){return e=+e,function(){ps(this,n).delay=e}}function js(n,e){return function(){us(this,n).duration=+e.apply(this,arguments)}}function zs(n,e){return e=+e,function(){us(this,n).duration=e}}var Ms=Oa.prototype.constructor;function Ps(n){return function(){this.style.removeProperty(n)}}var Rs=0;function As(n,e,t,r){this._groups=n,this._parents=e,this._name=t,this._id=r}function Is(){return++Rs}var Ds=Oa.prototype;As.prototype={constructor:As,select:function(n){var e=this._name,t=this._id;"function"!=typeof n&&(n=ko(n));for(var r=this._groups,o=r.length,a=new Array(o),i=0;i<o;++i)for(var s,l,d=r[i],c=d.length,p=a[i]=new Array(c),u=0;u<c;++u)(s=d[u])&&(l=n.call(s,s.__data__,u,d))&&("__data__"in s&&(l.__data__=s.__data__),p[u]=l,cs(p[u],e,t,u,p,bs(s,t)));return new As(a,this._parents,e,t)},selectAll:function(n){var e=this._name,t=this._id;"function"!=typeof n&&(n=Eo(n));for(var r=this._groups,o=r.length,a=[],i=[],s=0;s<o;++s)for(var l,d=r[s],c=d.length,p=0;p<c;++p)if(l=d[p]){for(var u,b=n.call(l,l.__data__,p,d),m=bs(l,t),f=0,g=b.length;f<g;++f)(u=b[f])&&cs(u,e,t,f,b,m);a.push(b),i.push(l)}return new As(a,i,e,t)},selectChild:Ds.selectChild,selectChildren:Ds.selectChildren,filter:function(n){"function"!=typeof n&&(n=Oo(n));for(var e=this._groups,t=e.length,r=new Array(t),o=0;o<t;++o)for(var a,i=e[o],s=i.length,l=r[o]=[],d=0;d<s;++d)(a=i[d])&&n.call(a,a.__data__,d,i)&&l.push(a);return new As(r,this._parents,this._name,this._id)},merge:function(n){if(n._id!==this._id)throw new Error;for(var e=this._groups,t=n._groups,r=e.length,o=t.length,a=Math.min(r,o),i=new Array(r),s=0;s<a;++s)for(var l,d=e[s],c=t[s],p=d.length,u=i[s]=new Array(p),b=0;b<p;++b)(l=d[b]||c[b])&&(u[b]=l);for(;s<r;++s)i[s]=e[s];return new As(i,this._parents,this._name,this._id)},selection:function(){return new Ms(this._groups,this._parents)},transition:function(){for(var n=this._name,e=this._id,t=Is(),r=this._groups,o=r.length,a=0;a<o;++a)for(var i,s=r[a],l=s.length,d=0;d<l;++d)if(i=s[d]){var c=bs(i,e);cs(i,n,t,d,s,{time:c.time+c.delay+c.duration,delay:0,duration:c.duration,ease:c.ease})}return new As(r,this._parents,n,t)},call:Ds.call,nodes:Ds.nodes,node:Ds.node,size:Ds.size,empty:Ds.empty,each:Ds.each,on:function(n,e){var t=this._id;return arguments.length<2?bs(this.node(),t).on.on(n):this.each(function(n,e,t){var r,o,a=function(n){return(n+"").trim().split(/^|\s+/).every(function(n){var e=n.indexOf(".");return e>=0&&(n=n.slice(0,e)),!n||"start"===n})}(e)?ps:us;return function(){var i=a(this,n),s=i.on;s!==r&&(o=(r=s).copy()).on(e,t),i.on=o}}(t,n,e))},attr:function(n,e){var t=ho(n),r="transform"===t?$i:vs;return this.attrTween(n,"function"==typeof e?(t.local?Es:_s)(t,r,hs(this,"attr."+n,e)):null==e?(t.local?ws:xs)(t):(t.local?ks:ys)(t,r,e))},attrTween:function(n,e){var t="attr."+n;if(arguments.length<2)return(t=this.tween(t))&&t._value;if(null==e)return this.tween(t,null);if("function"!=typeof e)throw new Error;var r=ho(n);return this.tween(t,(r.local?Ss:Os)(r,e))},style:function(n,e,t){var r="transform"==(n+="")?Vi:vs;return null==e?this.styleTween(n,function(n,e){var t,r,o;return function(){var a=Ko(this,n),i=(this.style.removeProperty(n),Ko(this,n));return a===i?null:a===t&&i===r?o:o=e(t=a,r=i)}}(n,r)).on("end.style."+n,Ps(n)):"function"==typeof e?this.styleTween(n,function(n,e,t){var r,o,a;return function(){var i=Ko(this,n),s=t(this),l=s+"";return null==s&&(this.style.removeProperty(n),l=s=Ko(this,n)),i===l?null:i===r&&l===o?a:(o=l,a=e(r=i,s))}}(n,r,hs(this,"style."+n,e))).each(function(n,e){var t,r,o,a,i="style."+e,s="end."+i;return function(){var l=us(this,n),d=l.on,c=null==l.value[i]?a||(a=Ps(e)):void 0;d===t&&o===c||(r=(t=d).copy()).on(s,o=c),l.on=r}}(this._id,n)):this.styleTween(n,function(n,e,t){var r,o,a=t+"";return function(){var i=Ko(this,n);return i===a?null:i===r?o:o=e(r=i,t)}}(n,r,e),t).on("end.style."+n,null)},styleTween:function(n,e,t){var r="style."+(n+="");if(arguments.length<2)return(r=this.tween(r))&&r._value;if(null==e)return this.tween(r,null);if("function"!=typeof e)throw new Error;return this.tween(r,function(n,e,t){var r,o;function a(){var a=e.apply(this,arguments);return a!==o&&(r=(o=a)&&function(n,e,t){return function(r){this.style.setProperty(n,e.call(this,r),t)}}(n,a,t)),r}return a._value=e,a}(n,e,null==t?"":t))},text:function(n){return this.tween("text","function"==typeof n?function(n){return function(){var e=n(this);this.textContent=null==e?"":e}}(hs(this,"text",n)):function(n){return function(){this.textContent=n}}(null==n?"":n+""))},textTween:function(n){var e="text";if(arguments.length<1)return(e=this.tween(e))&&e._value;if(null==n)return this.tween(e,null);if("function"!=typeof n)throw new Error;return this.tween(e,function(n){var e,t;function r(){var r=n.apply(this,arguments);return r!==t&&(e=(t=r)&&function(n){return function(e){this.textContent=n.call(this,e)}}(r)),e}return r._value=n,r}(n))},remove:function(){return this.on("end.remove",function(n){return function(){var e=this.parentNode;for(var t in this.__transition)if(+t!==n)return;e&&e.removeChild(this)}}(this._id))},tween:function(n,e){var t=this._id;if(n+="",arguments.length<2){for(var r,o=bs(this.node(),t).tween,a=0,i=o.length;a<i;++a)if((r=o[a]).name===n)return r.value;return null}return this.each((null==e?fs:gs)(t,n,e))},delay:function(n){var e=this._id;return arguments.length?this.each(("function"==typeof n?Cs:Ns)(e,n)):bs(this.node(),e).delay},duration:function(n){var e=this._id;return arguments.length?this.each(("function"==typeof n?js:zs)(e,n)):bs(this.node(),e).duration},ease:function(n){var e=this._id;return arguments.length?this.each(function(n,e){if("function"!=typeof e)throw new Error;return function(){us(this,n).ease=e}}(e,n)):bs(this.node(),e).ease},easeVarying:function(n){if("function"!=typeof n)throw new Error;return this.each(function(n,e){return function(){var t=e.apply(this,arguments);if("function"!=typeof t)throw new Error;us(this,n).ease=t}}(this._id,n))},end:function(){var n,e,t=this,r=t._id,o=t.size();return new Promise(function(a,i){var s={value:i},l={value:function(){0===--o&&a()}};t.each(function(){var t=us(this,r),o=t.on;o!==n&&((e=(n=o).copy())._.cancel.push(s),e._.interrupt.push(s),e._.end.push(l)),t.on=e}),0===o&&a()})},[Symbol.iterator]:Ds[Symbol.iterator]};var Ls={time:null,delay:0,duration:250,ease:function(n){return((n*=2)<=1?n*n*n:(n-=2)*n*n+2)/2}};function Ts(n,e){for(var t;!(t=n.__transition)||!(t=t[e]);)if(!(n=n.parentNode))throw new Error(`transition ${e} not found`);return t}Oa.prototype.interrupt=function(n){return this.each(function(){ms(this,n)})},Oa.prototype.transition=function(n){var e,t;n instanceof As?(e=n._id,n=n._name):(e=Is(),(t=Ls).time=ns(),n=null==n?null:n+"");for(var r=this._groups,o=r.length,a=0;a<o;++a)for(var i,s=r[a],l=s.length,d=0;d<l;++d)(i=s[d])&&cs(i,n,e,d,s,t||Ts(i,e));return new As(r,this._parents,n,e)};var Bs=n=>()=>n;function Vs(n,{sourceEvent:e,target:t,transform:r,dispatch:o}){Object.defineProperties(this,{type:{value:n,enumerable:!0,configurable:!0},sourceEvent:{value:e,enumerable:!0,configurable:!0},target:{value:t,enumerable:!0,configurable:!0},transform:{value:r,enumerable:!0,configurable:!0},_:{value:o}})}function $s(n,e,t){this.k=n,this.x=e,this.y=t}$s.prototype={constructor:$s,scale:function(n){return 1===n?this:new $s(this.k*n,this.x,this.y)},translate:function(n,e){return 0===n&0===e?this:new $s(this.k,this.x+this.k*n,this.y+this.k*e)},apply:function(n){return[n[0]*this.k+this.x,n[1]*this.k+this.y]},applyX:function(n){return n*this.k+this.x},applyY:function(n){return n*this.k+this.y},invert:function(n){return[(n[0]-this.x)/this.k,(n[1]-this.y)/this.k]},invertX:function(n){return(n-this.x)/this.k},invertY:function(n){return(n-this.y)/this.k},rescaleX:function(n){return n.copy().domain(n.range().map(this.invertX,this).map(n.invert,n))},rescaleY:function(n){return n.copy().domain(n.range().map(this.invertY,this).map(n.invert,n))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var Hs=new $s(1,0,0);function Fs(n){for(;!n.__zoom;)if(!(n=n.parentNode))return Hs;return n.__zoom}function Ys(n){n.stopImmediatePropagation()}function Gs(n){n.preventDefault(),n.stopImmediatePropagation()}function Xs(n){return!(n.ctrlKey&&"wheel"!==n.type||n.button)}function Ws(){var n=this;return n instanceof SVGElement?(n=n.ownerSVGElement||n).hasAttribute("viewBox")?[[(n=n.viewBox.baseVal).x,n.y],[n.x+n.width,n.y+n.height]]:[[0,0],[n.width.baseVal.value,n.height.baseVal.value]]:[[0,0],[n.clientWidth,n.clientHeight]]}function Zs(){return this.__zoom||Hs}function Ks(n){return-n.deltaY*(1===n.deltaMode?.05:n.deltaMode?1:.002)*(n.ctrlKey?10:1)}function qs(){return navigator.maxTouchPoints||"ontouchstart"in this}function Us(n,e,t){var r=n.invertX(e[0][0])-t[0][0],o=n.invertX(e[1][0])-t[1][0],a=n.invertY(e[0][1])-t[0][1],i=n.invertY(e[1][1])-t[1][1];return n.translate(o>r?(r+o)/2:Math.min(0,r)||Math.max(0,o),i>a?(a+i)/2:Math.min(0,a)||Math.max(0,i))}function Qs(){var n,e,t,r=Xs,o=Ws,a=Us,i=Ks,s=qs,l=[0,1/0],d=[[-1/0,-1/0],[1/0,1/0]],c=250,p=Gi,u=po("start","zoom","end"),b=0,m=10;function f(n){n.property("__zoom",Zs).on("wheel.zoom",k,{passive:!1}).on("mousedown.zoom",_).on("dblclick.zoom",E).filter(s).on("touchstart.zoom",S).on("touchmove.zoom",O).on("touchend.zoom touchcancel.zoom",C).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function g(n,e){return(e=Math.max(l[0],Math.min(l[1],e)))===n.k?n:new $s(e,n.x,n.y)}function h(n,e,t){var r=e[0]-t[0]*n.k,o=e[1]-t[1]*n.k;return r===n.x&&o===n.y?n:new $s(n.k,r,o)}function v(n){return[(+n[0][0]+ +n[1][0])/2,(+n[0][1]+ +n[1][1])/2]}function x(n,e,t,r){n.on("start.zoom",function(){w(this,arguments).event(r).start()}).on("interrupt.zoom end.zoom",function(){w(this,arguments).event(r).end()}).tween("zoom",function(){var n=this,a=arguments,i=w(n,a).event(r),s=o.apply(n,a),l=null==t?v(s):"function"==typeof t?t.apply(n,a):t,d=Math.max(s[1][0]-s[0][0],s[1][1]-s[0][1]),c=n.__zoom,u="function"==typeof e?e.apply(n,a):e,b=p(c.invert(l).concat(d/c.k),u.invert(l).concat(d/u.k));return function(n){if(1===n)n=u;else{var e=b(n),t=d/e[2];n=new $s(t,l[0]-e[0]*t,l[1]-e[1]*t)}i.zoom(null,n)}})}function w(n,e,t){return!t&&n.__zooming||new y(n,e)}function y(n,e){this.that=n,this.args=e,this.active=0,this.sourceEvent=null,this.extent=o.apply(n,e),this.taps=0}function k(n,...e){if(r.apply(this,arguments)){var t=w(this,e).event(n),o=this.__zoom,s=Math.max(l[0],Math.min(l[1],o.k*Math.pow(2,i.apply(this,arguments)))),c=Na(n);if(t.wheel)t.mouse[0][0]===c[0]&&t.mouse[0][1]===c[1]||(t.mouse[1]=o.invert(t.mouse[0]=c)),clearTimeout(t.wheel);else{if(o.k===s)return;t.mouse=[c,o.invert(c)],ms(this),t.start()}Gs(n),t.wheel=setTimeout(function(){t.wheel=null,t.end()},150),t.zoom("mouse",a(h(g(o,s),t.mouse[0],t.mouse[1]),t.extent,d))}}function _(n,...e){if(!t&&r.apply(this,arguments)){var o=n.currentTarget,i=w(this,e,!0).event(n),s=Ca(n.view).on("mousemove.zoom",function(n){if(Gs(n),!i.moved){var e=n.clientX-c,t=n.clientY-p;i.moved=e*e+t*t>b}i.event(n).zoom("mouse",a(h(i.that.__zoom,i.mouse[0]=Na(n,o),i.mouse[1]),i.extent,d))},!0).on("mouseup.zoom",function(n){s.on("mousemove.zoom mouseup.zoom",null),Aa(n.view,i.moved),Gs(n),i.event(n).end()},!0),l=Na(n,o),c=n.clientX,p=n.clientY;Ra(n.view),Ys(n),i.mouse=[l,this.__zoom.invert(l)],ms(this),i.start()}}function E(n,...e){if(r.apply(this,arguments)){var t=this.__zoom,i=Na(n.changedTouches?n.changedTouches[0]:n,this),s=t.invert(i),l=t.k*(n.shiftKey?.5:2),p=a(h(g(t,l),i,s),o.apply(this,e),d);Gs(n),c>0?Ca(this).transition().duration(c).call(x,p,i,n):Ca(this).call(f.transform,p,i,n)}}function S(t,...o){if(r.apply(this,arguments)){var a,i,s,l,d=t.touches,c=d.length,p=w(this,o,t.changedTouches.length===c).event(t);for(Ys(t),i=0;i<c;++i)l=[l=Na(s=d[i],this),this.__zoom.invert(l),s.identifier],p.touch0?p.touch1||p.touch0[2]===l[2]||(p.touch1=l,p.taps=0):(p.touch0=l,a=!0,p.taps=1+!!n);n&&(n=clearTimeout(n)),a&&(p.taps<2&&(e=l[0],n=setTimeout(function(){n=null},500)),ms(this),p.start())}}function O(n,...e){if(this.__zooming){var t,r,o,i,s=w(this,e).event(n),l=n.changedTouches,c=l.length;for(Gs(n),t=0;t<c;++t)o=Na(r=l[t],this),s.touch0&&s.touch0[2]===r.identifier?s.touch0[0]=o:s.touch1&&s.touch1[2]===r.identifier&&(s.touch1[0]=o);if(r=s.that.__zoom,s.touch1){var p=s.touch0[0],u=s.touch0[1],b=s.touch1[0],m=s.touch1[1],f=(f=b[0]-p[0])*f+(f=b[1]-p[1])*f,v=(v=m[0]-u[0])*v+(v=m[1]-u[1])*v;r=g(r,Math.sqrt(f/v)),o=[(p[0]+b[0])/2,(p[1]+b[1])/2],i=[(u[0]+m[0])/2,(u[1]+m[1])/2]}else{if(!s.touch0)return;o=s.touch0[0],i=s.touch0[1]}s.zoom("touch",a(h(r,o,i),s.extent,d))}}function C(n,...r){if(this.__zooming){var o,a,i=w(this,r).event(n),s=n.changedTouches,l=s.length;for(Ys(n),t&&clearTimeout(t),t=setTimeout(function(){t=null},500),o=0;o<l;++o)a=s[o],i.touch0&&i.touch0[2]===a.identifier?delete i.touch0:i.touch1&&i.touch1[2]===a.identifier&&delete i.touch1;if(i.touch1&&!i.touch0&&(i.touch0=i.touch1,delete i.touch1),i.touch0)i.touch0[1]=this.__zoom.invert(i.touch0[0]);else if(i.end(),2===i.taps&&(a=Na(a,this),Math.hypot(e[0]-a[0],e[1]-a[1])<m)){var d=Ca(this).on("dblclick.zoom");d&&d.apply(this,arguments)}}}return f.transform=function(n,e,t,r){var o=n.selection?n.selection():n;o.property("__zoom",Zs),n!==o?x(n,e,t,r):o.interrupt().each(function(){w(this,arguments).event(r).start().zoom(null,"function"==typeof e?e.apply(this,arguments):e).end()})},f.scaleBy=function(n,e,t,r){f.scaleTo(n,function(){return this.__zoom.k*("function"==typeof e?e.apply(this,arguments):e)},t,r)},f.scaleTo=function(n,e,t,r){f.transform(n,function(){var n=o.apply(this,arguments),r=this.__zoom,i=null==t?v(n):"function"==typeof t?t.apply(this,arguments):t,s=r.invert(i),l="function"==typeof e?e.apply(this,arguments):e;return a(h(g(r,l),i,s),n,d)},t,r)},f.translateBy=function(n,e,t,r){f.transform(n,function(){return a(this.__zoom.translate("function"==typeof e?e.apply(this,arguments):e,"function"==typeof t?t.apply(this,arguments):t),o.apply(this,arguments),d)},null,r)},f.translateTo=function(n,e,t,r,i){f.transform(n,function(){var n=o.apply(this,arguments),i=this.__zoom,s=null==r?v(n):"function"==typeof r?r.apply(this,arguments):r;return a(Hs.translate(s[0],s[1]).scale(i.k).translate("function"==typeof e?-e.apply(this,arguments):-e,"function"==typeof t?-t.apply(this,arguments):-t),n,d)},r,i)},y.prototype={event:function(n){return n&&(this.sourceEvent=n),this},start:function(){return 1===++this.active&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(n,e){return this.mouse&&"mouse"!==n&&(this.mouse[1]=e.invert(this.mouse[0])),this.touch0&&"touch"!==n&&(this.touch0[1]=e.invert(this.touch0[0])),this.touch1&&"touch"!==n&&(this.touch1[1]=e.invert(this.touch1[0])),this.that.__zoom=e,this.emit("zoom"),this},end:function(){return 0===--this.active&&(delete this.that.__zooming,this.emit("end")),this},emit:function(n){var e=Ca(this.that).datum();u.call(n,this.that,new Vs(n,{sourceEvent:this.sourceEvent,target:f,transform:this.that.__zoom,dispatch:u}),e)}},f.wheelDelta=function(n){return arguments.length?(i="function"==typeof n?n:Bs(+n),f):i},f.filter=function(n){return arguments.length?(r="function"==typeof n?n:Bs(!!n),f):r},f.touchable=function(n){return arguments.length?(s="function"==typeof n?n:Bs(!!n),f):s},f.extent=function(n){return arguments.length?(o="function"==typeof n?n:Bs([[+n[0][0],+n[0][1]],[+n[1][0],+n[1][1]]]),f):o},f.scaleExtent=function(n){return arguments.length?(l[0]=+n[0],l[1]=+n[1],f):[l[0],l[1]]},f.translateExtent=function(n){return arguments.length?(d[0][0]=+n[0][0],d[1][0]=+n[1][0],d[0][1]=+n[0][1],d[1][1]=+n[1][1],f):[[d[0][0],d[0][1]],[d[1][0],d[1][1]]]},f.constrain=function(n){return arguments.length?(a=n,f):a},f.duration=function(n){return arguments.length?(c=+n,f):c},f.interpolate=function(n){return arguments.length?(p=n,f):p},f.on=function(){var n=u.on.apply(u,arguments);return n===u?f:n},f.clickDistance=function(n){return arguments.length?(b=(n=+n)*n,f):Math.sqrt(b)},f.tapDistance=function(n){return arguments.length?(m=+n,f):m},f}Fs.prototype=$s.prototype;const Js=()=>"[React Flow]: Seems like you have not used zustand provider as an ancestor. Help: https://reactflow.dev/error#001",nl=()=>"It looks like you've created a new nodeTypes or edgeTypes object. If this wasn't on purpose please define the nodeTypes/edgeTypes outside of the component or memoize them.",el=n=>`Node type "${n}" not found. Using fallback type "default".`,tl=()=>"The React Flow parent container needs a width and a height to render the graph.",rl=()=>"Only child nodes can use a parent extent.",ol=()=>"Can't create edge. An edge needs a source and a target.",al=n=>`Marker type "${n}" doesn't exist.`,il=(n,{id:e,sourceHandle:t,targetHandle:r})=>`Couldn't create edge for ${n} handle id: "${"source"===n?t:r}", edge id: ${e}.`,sl=()=>"Handle: No node id found. Make sure to only use a Handle inside a custom Node.",ll=n=>`Edge type "${n}" not found. Using fallback type "default".`,dl=n=>`Node with id "${n}" does not exist, it may have been removed. This can happen when a node is deleted before the "onNodeClick" handler is called.`,cl=(n="react")=>`It seems that you haven't loaded the styles. Please import '@xyflow/${n}/dist/style.css' or base.css to make sure everything is working properly.`,pl=()=>"It seems that you are trying to drag a node that is not initialized. Please use onNodesChange as explained in the docs.",ul=[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],bl=["Enter"," ","Escape"],ml={"node.a11yDescription.default":"Press enter or space to select a node. Press delete to remove it and escape to cancel.","node.a11yDescription.keyboardDisabled":"Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.","node.a11yDescription.ariaLiveMessage":({direction:n,x:e,y:t})=>`Moved selected node ${n}. New position, x: ${e}, y: ${t}`,"edge.a11yDescription.default":"Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.","controls.ariaLabel":"Control Panel","controls.zoomIn.ariaLabel":"Zoom In","controls.zoomOut.ariaLabel":"Zoom Out","controls.fitView.ariaLabel":"Fit View","controls.interactive.ariaLabel":"Toggle Interactivity","minimap.ariaLabel":"Mini Map","handle.ariaLabel":"Handle"};var fl,gl,hl;!function(n){n.Strict="strict",n.Loose="loose"}(fl||(fl={})),function(n){n.Free="free",n.Vertical="vertical",n.Horizontal="horizontal"}(gl||(gl={})),function(n){n.Partial="partial",n.Full="full"}(hl||(hl={}));const vl={inProgress:!1,isValid:null,from:null,fromHandle:null,fromPosition:null,fromNode:null,to:null,toHandle:null,toPosition:null,toNode:null};var xl,wl,yl;!function(n){n.Bezier="default",n.Straight="straight",n.Step="step",n.SmoothStep="smoothstep",n.SimpleBezier="simplebezier"}(xl||(xl={})),function(n){n.Arrow="arrow",n.ArrowClosed="arrowclosed"}(wl||(wl={})),function(n){n.Left="left",n.Top="top",n.Right="right",n.Bottom="bottom"}(yl||(yl={}));const kl={[yl.Left]:yl.Right,[yl.Right]:yl.Left,[yl.Top]:yl.Bottom,[yl.Bottom]:yl.Top};function _l(n){return null===n?null:n?"valid":"invalid"}const El=n=>"id"in n&&"source"in n&&"target"in n,Sl=n=>"id"in n&&"internals"in n&&!("source"in n)&&!("target"in n),Ol=(n,e=[0,0])=>{const{width:t,height:r}=nd(n),o=n.origin??e,a=t*o[0],i=r*o[1];return{x:n.position.x-a,y:n.position.y-i}},Cl=(n,e={})=>{if(0===n.size)return{x:0,y:0,width:0,height:0};let t={x:1/0,y:1/0,x2:-1/0,y2:-1/0};return n.forEach(n=>{if(void 0===e.filter||e.filter(n)){const e=$l(n);t=Ll(t,e)}}),Bl(t)},Nl=(n,e,[t,r,o]=[0,0,1],a=!1,i=!1)=>{const s={...Zl(e,[t,r,o]),width:e.width/o,height:e.height/o},l=[];for(const e of n.values()){const{measured:n,selectable:t=!0,hidden:r=!1}=e;if(i&&!t||r)continue;const o=n.width??e.width??e.initialWidth??null,d=n.height??e.height??e.initialHeight??null,c=Fl(s,Vl(e)),p=(o??0)*(d??0),u=a&&c>0;(!e.internals.handleBounds||u||c>=p||e.dragging)&&l.push(e)}return l};async function jl({nodes:n,width:e,height:t,panZoom:r,minZoom:o,maxZoom:a},i){if(0===n.size)return Promise.resolve(!0);const s=function(n,e){const t=new Map,r=e?.nodes?new Set(e.nodes.map(n=>n.id)):null;return n.forEach(n=>{!n.measured.width||!n.measured.height||!e?.includeHiddenNodes&&n.hidden||r&&!r.has(n.id)||t.set(n.id,n)}),t}(n,i),l=Cl(s),d=Ul(l,e,t,i?.minZoom??o,i?.maxZoom??a,i?.padding??.1);return await r.setViewport(d,{duration:i?.duration,ease:i?.ease,interpolate:i?.interpolate}),Promise.resolve(!0)}function zl({nodeId:n,nextPosition:e,nodeLookup:t,nodeOrigin:r=[0,0],nodeExtent:o,onError:a}){const i=t.get(n),s=i.parentId?t.get(i.parentId):void 0,{x:l,y:d}=s?s.internals.positionAbsolute:{x:0,y:0},c=i.origin??r;let p=i.extent||o;if("parent"!==i.extent||i.expandParent)s&&Jl(i.extent)&&(p=[[i.extent[0][0]+l,i.extent[0][1]+d],[i.extent[1][0]+l,i.extent[1][1]+d]]);else if(s){const n=s.measured.width,e=s.measured.height;n&&e&&(p=[[l,d],[l+n,d+e]])}else a?.("005",rl());const u=Jl(p)?Rl(e,p,i.measured):e;return void 0!==i.measured.width&&void 0!==i.measured.height||a?.("015",pl()),{position:{x:u.x-l+(i.measured.width??0)*c[0],y:u.y-d+(i.measured.height??0)*c[1]},positionAbsolute:u}}async function Ml({nodesToRemove:n=[],edgesToRemove:e=[],nodes:t,edges:r,onBeforeDelete:o}){const a=new Set(n.map(n=>n.id)),i=[];for(const n of t){if(!1===n.deletable)continue;const e=a.has(n.id),t=!e&&n.parentId&&i.find(e=>e.id===n.parentId);(e||t)&&i.push(n)}const s=new Set(e.map(n=>n.id)),l=r.filter(n=>!1!==n.deletable),d=((n,e)=>{const t=new Set;return n.forEach(n=>{t.add(n.id)}),e.filter(n=>t.has(n.source)||t.has(n.target))})(i,l),c=d;for(const n of l){s.has(n.id)&&!c.find(e=>e.id===n.id)&&c.push(n)}if(!o)return{edges:c,nodes:i};const p=await o({nodes:i,edges:c});return"boolean"==typeof p?p?{edges:c,nodes:i}:{edges:[],nodes:[]}:p}const Pl=(n,e=0,t=1)=>Math.min(Math.max(n,e),t),Rl=(n={x:0,y:0},e,t)=>({x:Pl(n.x,e[0][0],e[1][0]-(t?.width??0)),y:Pl(n.y,e[0][1],e[1][1]-(t?.height??0))});function Al(n,e,t){const{width:r,height:o}=nd(t),{x:a,y:i}=t.internals.positionAbsolute;return Rl(n,[[a,i],[a+r,i+o]],e)}const Il=(n,e,t)=>n<e?Pl(Math.abs(n-e),1,e)/e:n>t?-Pl(Math.abs(n-t),1,e)/e:0,Dl=(n,e,t=15,r=40)=>[Il(n.x,r,e.width-r)*t,Il(n.y,r,e.height-r)*t],Ll=(n,e)=>({x:Math.min(n.x,e.x),y:Math.min(n.y,e.y),x2:Math.max(n.x2,e.x2),y2:Math.max(n.y2,e.y2)}),Tl=({x:n,y:e,width:t,height:r})=>({x:n,y:e,x2:n+t,y2:e+r}),Bl=({x:n,y:e,x2:t,y2:r})=>({x:n,y:e,width:t-n,height:r-e}),Vl=(n,e=[0,0])=>{const{x:t,y:r}=Sl(n)?n.internals.positionAbsolute:Ol(n,e);return{x:t,y:r,width:n.measured?.width??n.width??n.initialWidth??0,height:n.measured?.height??n.height??n.initialHeight??0}},$l=(n,e=[0,0])=>{const{x:t,y:r}=Sl(n)?n.internals.positionAbsolute:Ol(n,e);return{x:t,y:r,x2:t+(n.measured?.width??n.width??n.initialWidth??0),y2:r+(n.measured?.height??n.height??n.initialHeight??0)}},Hl=(n,e)=>Bl(Ll(Tl(n),Tl(e))),Fl=(n,e)=>{const t=Math.max(0,Math.min(n.x+n.width,e.x+e.width)-Math.max(n.x,e.x)),r=Math.max(0,Math.min(n.y+n.height,e.y+e.height)-Math.max(n.y,e.y));return Math.ceil(t*r)},Yl=n=>Gl(n.width)&&Gl(n.height)&&Gl(n.x)&&Gl(n.y),Gl=n=>!isNaN(n)&&isFinite(n),Xl=(n,e)=>{"development"===process.env.NODE_ENV&&console.warn(`[React Flow]: ${e} Help: https://reactflow.dev/error#${n}`)},Wl=(n,e=[1,1])=>({x:e[0]*Math.round(n.x/e[0]),y:e[1]*Math.round(n.y/e[1])}),Zl=({x:n,y:e},[t,r,o],a=!1,i=[1,1])=>{const s={x:(n-t)/o,y:(e-r)/o};return a?Wl(s,i):s},Kl=({x:n,y:e},[t,r,o])=>({x:n*o+t,y:e*o+r});function ql(n,e){if("number"==typeof n)return Math.floor(.5*(e-e/(1+n)));if("string"==typeof n&&n.endsWith("px")){const e=parseFloat(n);if(!Number.isNaN(e))return Math.floor(e)}if("string"==typeof n&&n.endsWith("%")){const t=parseFloat(n);if(!Number.isNaN(t))return Math.floor(e*t*.01)}return console.error(`[React Flow] The padding value "${n}" is invalid. Please provide a number or a string with a valid unit (px or %).`),0}const Ul=(n,e,t,r,o,a)=>{const i=function(n,e,t){if("string"==typeof n||"number"==typeof n){const r=ql(n,t),o=ql(n,e);return{top:r,right:o,bottom:r,left:o,x:2*o,y:2*r}}if("object"==typeof n){const r=ql(n.top??n.y??0,t),o=ql(n.bottom??n.y??0,t),a=ql(n.left??n.x??0,e),i=ql(n.right??n.x??0,e);return{top:r,right:i,bottom:o,left:a,x:a+i,y:r+o}}return{top:0,right:0,bottom:0,left:0,x:0,y:0}}(a,e,t),s=(e-i.x)/n.width,l=(t-i.y)/n.height,d=Math.min(s,l),c=Pl(d,r,o),p=e/2-(n.x+n.width/2)*c,u=t/2-(n.y+n.height/2)*c,b=function(n,e,t,r,o,a){const{x:i,y:s}=Kl(n,[e,t,r]),{x:l,y:d}=Kl({x:n.x+n.width,y:n.y+n.height},[e,t,r]),c=o-l,p=a-d;return{left:Math.floor(i),top:Math.floor(s),right:Math.floor(c),bottom:Math.floor(p)}}(n,p,u,c,e,t),m=Math.min(b.left-i.left,0),f=Math.min(b.top-i.top,0);return{x:p-m+Math.min(b.right-i.right,0),y:u-f+Math.min(b.bottom-i.bottom,0),zoom:c}},Ql=()=>"undefined"!=typeof navigator&&navigator?.userAgent?.indexOf("Mac")>=0;function Jl(n){return void 0!==n&&"parent"!==n}function nd(n){return{width:n.measured?.width??n.width??n.initialWidth??0,height:n.measured?.height??n.height??n.initialHeight??0}}function ed(n){return void 0!==(n.measured?.width??n.width??n.initialWidth)&&void 0!==(n.measured?.height??n.height??n.initialHeight)}function td(n,e={width:0,height:0},t,r,o){const a={...n},i=r.get(t);if(i){const n=i.origin||o;a.x+=i.internals.positionAbsolute.x-(e.width??0)*n[0],a.y+=i.internals.positionAbsolute.y-(e.height??0)*n[1]}return a}function rd(n,e){if(n.size!==e.size)return!1;for(const t of n)if(!e.has(t))return!1;return!0}function od(n){return{...ml,...n||{}}}function ad(n,{snapGrid:e=[0,0],snapToGrid:t=!1,transform:r,containerBounds:o}){const{x:a,y:i}=pd(n),s=Zl({x:a-(o?.left??0),y:i-(o?.top??0)},r),{x:l,y:d}=t?Wl(s,e):s;return{xSnapped:l,ySnapped:d,...s}}const id=n=>({width:n.offsetWidth,height:n.offsetHeight}),sd=n=>n?.getRootNode?.()||window?.document,ld=["INPUT","SELECT","TEXTAREA"];function dd(n){const e=n.composedPath?.()?.[0]||n.target;if(1!==e?.nodeType)return!1;return ld.includes(e.nodeName)||e.hasAttribute("contenteditable")||!!e.closest(".nokey")}const cd=n=>"clientX"in n,pd=(n,e)=>{const t=cd(n),r=t?n.clientX:n.touches?.[0].clientX,o=t?n.clientY:n.touches?.[0].clientY;return{x:r-(e?.left??0),y:o-(e?.top??0)}},ud=(n,e,t,r,o)=>{const a=e.querySelectorAll(`.${n}`);return a&&a.length?Array.from(a).map(e=>{const a=e.getBoundingClientRect();return{id:e.getAttribute("data-handleid"),type:n,nodeId:o,position:e.getAttribute("data-handlepos"),x:(a.left-t.left)/r,y:(a.top-t.top)/r,...id(e)}}):null};function bd({sourceX:n,sourceY:e,targetX:t,targetY:r,sourceControlX:o,sourceControlY:a,targetControlX:i,targetControlY:s}){const l=.125*n+.375*o+.375*i+.125*t,d=.125*e+.375*a+.375*s+.125*r;return[l,d,Math.abs(l-n),Math.abs(d-e)]}function md(n,e){return n>=0?.5*n:25*e*Math.sqrt(-n)}function fd({pos:n,x1:e,y1:t,x2:r,y2:o,c:a}){switch(n){case yl.Left:return[e-md(e-r,a),t];case yl.Right:return[e+md(r-e,a),t];case yl.Top:return[e,t-md(t-o,a)];case yl.Bottom:return[e,t+md(o-t,a)]}}function gd({sourceX:n,sourceY:e,sourcePosition:t=yl.Bottom,targetX:r,targetY:o,targetPosition:a=yl.Top,curvature:i=.25}){const[s,l]=fd({pos:t,x1:n,y1:e,x2:r,y2:o,c:i}),[d,c]=fd({pos:a,x1:r,y1:o,x2:n,y2:e,c:i}),[p,u,b,m]=bd({sourceX:n,sourceY:e,targetX:r,targetY:o,sourceControlX:s,sourceControlY:l,targetControlX:d,targetControlY:c});return[`M${n},${e} C${s},${l} ${d},${c} ${r},${o}`,p,u,b,m]}function hd({sourceX:n,sourceY:e,targetX:t,targetY:r}){const o=Math.abs(t-n)/2,a=t<n?t+o:t-o,i=Math.abs(r-e)/2;return[a,r<e?r+i:r-i,o,i]}function vd({sourceNode:n,targetNode:e,width:t,height:r,transform:o}){const a=Ll($l(n),$l(e));a.x===a.x2&&(a.x2+=1),a.y===a.y2&&(a.y2+=1);const i={x:-o[0]/o[2],y:-o[1]/o[2],width:t/o[2],height:r/o[2]};return Fl(i,Bl(a))>0}const xd=({source:n,sourceHandle:e,target:t,targetHandle:r})=>`xy-edge__${n}${e||""}-${t}${r||""}`;function wd({sourceX:n,sourceY:e,targetX:t,targetY:r}){const[o,a,i,s]=hd({sourceX:n,sourceY:e,targetX:t,targetY:r});return[`M ${n},${e}L ${t},${r}`,o,a,i,s]}const yd={[yl.Left]:{x:-1,y:0},[yl.Right]:{x:1,y:0},[yl.Top]:{x:0,y:-1},[yl.Bottom]:{x:0,y:1}},kd=(n,e)=>Math.sqrt(Math.pow(e.x-n.x,2)+Math.pow(e.y-n.y,2));function _d({source:n,sourcePosition:e=yl.Bottom,target:t,targetPosition:r=yl.Top,center:o,offset:a,stepPosition:i}){const s=yd[e],l=yd[r],d={x:n.x+s.x*a,y:n.y+s.y*a},c={x:t.x+l.x*a,y:t.y+l.y*a},p=(({source:n,sourcePosition:e=yl.Bottom,target:t})=>e===yl.Left||e===yl.Right?n.x<t.x?{x:1,y:0}:{x:-1,y:0}:n.y<t.y?{x:0,y:1}:{x:0,y:-1})({source:d,sourcePosition:e,target:c}),u=0!==p.x?"x":"y",b=p[u];let m,f,g=[];const h={x:0,y:0},v={x:0,y:0},[,,x,w]=hd({sourceX:n.x,sourceY:n.y,targetX:t.x,targetY:t.y});if(s[u]*l[u]===-1){"x"===u?(m=o.x??d.x+(c.x-d.x)*i,f=o.y??(d.y+c.y)/2):(m=o.x??(d.x+c.x)/2,f=o.y??d.y+(c.y-d.y)*i);const n=[{x:m,y:d.y},{x:m,y:c.y}],e=[{x:d.x,y:f},{x:c.x,y:f}];g=s[u]===b?"x"===u?n:e:"x"===u?e:n}else{const o=[{x:d.x,y:c.y}],i=[{x:c.x,y:d.y}];if(g="x"===u?s.x===b?i:o:s.y===b?o:i,e===r){const e=Math.abs(n[u]-t[u]);if(e<=a){const r=Math.min(a-1,a-e);s[u]===b?h[u]=(d[u]>n[u]?-1:1)*r:v[u]=(c[u]>t[u]?-1:1)*r}}if(e!==r){const n="x"===u?"y":"x",e=s[u]===l[n],t=d[n]>c[n],r=d[n]<c[n];(1===s[u]&&(!e&&t||e&&r)||1!==s[u]&&(!e&&r||e&&t))&&(g="x"===u?o:i)}const p={x:d.x+h.x,y:d.y+h.y},x={x:c.x+v.x,y:c.y+v.y};Math.max(Math.abs(p.x-g[0].x),Math.abs(x.x-g[0].x))>=Math.max(Math.abs(p.y-g[0].y),Math.abs(x.y-g[0].y))?(m=(p.x+x.x)/2,f=g[0].y):(m=g[0].x,f=(p.y+x.y)/2)}return[[n,{x:d.x+h.x,y:d.y+h.y},...g,{x:c.x+v.x,y:c.y+v.y},t],m,f,x,w]}function Ed({sourceX:n,sourceY:e,sourcePosition:t=yl.Bottom,targetX:r,targetY:o,targetPosition:a=yl.Top,borderRadius:i=5,centerX:s,centerY:l,offset:d=20,stepPosition:c=.5}){const[p,u,b,m,f]=_d({source:{x:n,y:e},sourcePosition:t,target:{x:r,y:o},targetPosition:a,center:{x:s,y:l},offset:d,stepPosition:c}),g=p.reduce((n,e,t)=>{let r="";return r=t>0&&t<p.length-1?function(n,e,t,r){const o=Math.min(kd(n,e)/2,kd(e,t)/2,r),{x:a,y:i}=e;if(n.x===a&&a===t.x||n.y===i&&i===t.y)return`L${a} ${i}`;if(n.y===i)return`L ${a+o*(n.x<t.x?-1:1)},${i}Q ${a},${i} ${a},${i+o*(n.y<t.y?1:-1)}`;const s=n.x<t.x?1:-1;return`L ${a},${i+o*(n.y<t.y?-1:1)}Q ${a},${i} ${a+o*s},${i}`}(p[t-1],e,p[t+1],i):`${0===t?"M":"L"}${e.x} ${e.y}`,n+=r},"");return[g,u,b,m,f]}function Sd(n){return n&&!(!n.internals.handleBounds&&!n.handles?.length)&&!!(n.measured.width||n.width||n.initialWidth)}function Od(n){if(!n)return null;const e=[],t=[];for(const r of n)r.width=r.width??1,r.height=r.height??1,"source"===r.type?e.push(r):"target"===r.type&&t.push(r);return{source:e,target:t}}function Cd(n,e,t=yl.Left,r=!1){const o=(e?.x??0)+n.internals.positionAbsolute.x,a=(e?.y??0)+n.internals.positionAbsolute.y,{width:i,height:s}=e??nd(n);if(r)return{x:o+i/2,y:a+s/2};switch(e?.position??t){case yl.Top:return{x:o+i/2,y:a};case yl.Right:return{x:o+i,y:a+s/2};case yl.Bottom:return{x:o+i/2,y:a+s};case yl.Left:return{x:o,y:a+s/2}}}function Nd(n,e){return n&&(e?n.find(n=>n.id===e):n[0])||null}function jd(n,e){if(!n)return"";if("string"==typeof n)return n;return`${e?`${e}__`:""}${Object.keys(n).sort().map(e=>`${e}=${n[e]}`).join("&")}`}const zd={nodeOrigin:[0,0],nodeExtent:ul,elevateNodesOnSelect:!0,defaults:{}},Md={...zd,checkEquality:!0};function Pd(n,e){const t={...n};for(const n in e)void 0!==e[n]&&(t[n]=e[n]);return t}function Rd(n,e,t,r){const o=Pd(Md,r);let a=n.length>0;const i=new Map(e),s=o?.elevateNodesOnSelect?1e3:0;e.clear(),t.clear();for(const l of n){let n=i.get(l.id);if(o.checkEquality&&l===n?.internals.userNode)e.set(l.id,n);else{const t=Ol(l,o.nodeOrigin),r=Jl(l.extent)?l.extent:o.nodeExtent,a=Rl(t,r,nd(l));n={...o.defaults,...l,measured:{width:l.measured?.width,height:l.measured?.height},internals:{positionAbsolute:a,handleBounds:l.measured?n?.internals.handleBounds:void 0,z:Id(l,s),userNode:l}},e.set(l.id,n)}void 0!==n.measured&&void 0!==n.measured.width&&void 0!==n.measured.height||n.hidden||(a=!1),l.parentId&&Ad(n,e,t,r)}return a}function Ad(n,e,t,r){const{elevateNodesOnSelect:o,nodeOrigin:a,nodeExtent:i}=Pd(zd,r),s=n.parentId,l=e.get(s);if(!l)return void console.warn(`Parent node ${s} not found. Please make sure that parent nodes are in front of their child nodes in the nodes array.`);!function(n,e){if(!n.parentId)return;const t=e.get(n.parentId);t?t.set(n.id,n):e.set(n.parentId,new Map([[n.id,n]]))}(n,t);const d=o?1e3:0,{x:c,y:p,z:u}=function(n,e,t,r,o){const{x:a,y:i}=e.internals.positionAbsolute,s=nd(n),l=Ol(n,t),d=Jl(n.extent)?Rl(l,n.extent,s):l;let c=Rl({x:a+d.x,y:i+d.y},r,s);"parent"===n.extent&&(c=Al(c,s,e));const p=Id(n,o),u=e.internals.z??0;return{x:c.x,y:c.y,z:u>=p?u+1:p}}(n,l,a,i,d),{positionAbsolute:b}=n.internals,m=c!==b.x||p!==b.y;(m||u!==n.internals.z)&&e.set(n.id,{...n,internals:{...n.internals,positionAbsolute:m?{x:c,y:p}:b,z:u}})}function Id(n,e){return(Gl(n.zIndex)?n.zIndex:0)+(n.selected?e:0)}function Dd(n,e,t,r=[0,0]){const o=[],a=new Map;for(const t of n){const n=e.get(t.parentId);if(!n)continue;const r=a.get(t.parentId)?.expandedRect??Vl(n),o=Hl(r,t.rect);a.set(t.parentId,{expandedRect:o,parent:n})}return a.size>0&&a.forEach(({expandedRect:e,parent:a},i)=>{const s=a.internals.positionAbsolute,l=nd(a),d=a.origin??r,c=e.x<s.x?Math.round(Math.abs(s.x-e.x)):0,p=e.y<s.y?Math.round(Math.abs(s.y-e.y)):0,u=Math.max(l.width,Math.round(e.width)),b=Math.max(l.height,Math.round(e.height)),m=(u-l.width)*d[0],f=(b-l.height)*d[1];(c>0||p>0||m||f)&&(o.push({id:i,type:"position",position:{x:a.position.x-c+m,y:a.position.y-p+f}}),t.get(i)?.forEach(e=>{n.some(n=>n.id===e.id)||o.push({id:e.id,type:"position",position:{x:e.position.x+c,y:e.position.y+p}})})),(l.width<e.width||l.height<e.height||c||p)&&o.push({id:i,type:"dimensions",setAttributes:!0,dimensions:{width:u+(c?d[0]*c-m:0),height:b+(p?d[1]*p-f:0)}})}),o}function Ld(n,e,t,r,o,a){let i=o;const s=r.get(i)||new Map;r.set(i,s.set(t,e)),i=`${o}-${n}`;const l=r.get(i)||new Map;if(r.set(i,l.set(t,e)),a){i=`${o}-${n}-${a}`;const s=r.get(i)||new Map;r.set(i,s.set(t,e))}}function Td(n,e,t){n.clear(),e.clear();for(const r of t){const{source:t,target:o,sourceHandle:a=null,targetHandle:i=null}=r,s={edgeId:r.id,source:t,target:o,sourceHandle:a,targetHandle:i},l=`${t}-${a}--${o}-${i}`;Ld("source",s,`${o}-${i}--${t}-${a}`,n,t,a),Ld("target",s,l,n,o,i),e.set(r.id,r)}}function Bd(n,e){if(!n.parentId)return!1;const t=e.get(n.parentId);return!!t&&(!!t.selected||Bd(t,e))}function Vd(n,e,t){let r=n;do{if(r?.matches?.(e))return!0;if(r===t)return!1;r=r?.parentElement}while(r);return!1}function $d({nodeId:n,dragItems:e,nodeLookup:t,dragging:r=!0}){const o=[];for(const[n,a]of e){const e=t.get(n)?.internals.userNode;e&&o.push({...e,position:a.position,dragging:r})}if(!n)return[o[0],o];const a=t.get(n)?.internals.userNode;return[a?{...a,position:e.get(n)?.position||a.position,dragging:r}:o[0],o]}function Hd({onNodeMouseDown:n,getStoreItems:e,onDragStart:t,onDrag:r,onDragStop:o}){let a={x:null,y:null},i=0,s=new Map,l=!1,d={x:0,y:0},c=null,p=!1,u=null,b=!1,m=!1;return{update:function({noDragClassName:f,handleSelector:g,domNode:h,isSelectable:v,nodeId:x,nodeClickDistance:w=0}){function y({x:n,y:t},o){const{nodeLookup:i,nodeExtent:l,snapGrid:d,snapToGrid:c,nodeOrigin:p,onNodeDrag:u,onSelectionDrag:b,onError:f,updateNodePositions:g}=e();a={x:n,y:t};let h=!1,v={x:0,y:0,x2:0,y2:0};if(s.size>1&&l){const n=Cl(s);v=Tl(n)}for(const[e,r]of s){if(!i.has(e))continue;let o={x:n-r.distance.x,y:t-r.distance.y};c&&(o=Wl(o,d));let a=[[l[0][0],l[0][1]],[l[1][0],l[1][1]]];if(s.size>1&&l&&!r.extent){const{positionAbsolute:n}=r.internals,e=n.x-v.x+l[0][0],t=n.x+r.measured.width-v.x2+l[1][0];a=[[e,n.y-v.y+l[0][1]],[t,n.y+r.measured.height-v.y2+l[1][1]]]}const{position:u,positionAbsolute:b}=zl({nodeId:e,nextPosition:o,nodeLookup:i,nodeExtent:a,nodeOrigin:p,onError:f});h=h||r.position.x!==u.x||r.position.y!==u.y,r.position=u,r.internals.positionAbsolute=b}if(m=m||h,h&&(g(s,!0),o&&(r||u||!x&&b))){const[n,e]=$d({nodeId:x,dragItems:s,nodeLookup:i});r?.(o,s,n,e),u?.(o,n,e),x||b?.(o,e)}}async function k(){if(!c)return;const{transform:n,panBy:t,autoPanSpeed:r,autoPanOnNodeDrag:o}=e();if(!o)return l=!1,void cancelAnimationFrame(i);const[s,p]=Dl(d,c,r);0===s&&0===p||(a.x=(a.x??0)-s/n[2],a.y=(a.y??0)-p/n[2],await t({x:s,y:p})&&y(a,null)),i=requestAnimationFrame(k)}function _(r){const{nodeLookup:o,multiSelectionActive:i,nodesDraggable:l,transform:d,snapGrid:u,snapToGrid:b,selectNodesOnDrag:m,onNodeDragStart:f,onSelectionDragStart:g,unselectNodesAndEdges:h}=e();p=!0,m&&v||i||!x||o.get(x)?.selected||h(),v&&m&&x&&n?.(x);const w=ad(r.sourceEvent,{transform:d,snapGrid:u,snapToGrid:b,containerBounds:c});if(a=w,s=function(n,e,t,r){const o=new Map;for(const[a,i]of n)if((i.selected||i.id===r)&&(!i.parentId||!Bd(i,n))&&(i.draggable||e&&void 0===i.draggable)){const e=n.get(a);e&&o.set(a,{id:a,position:e.position||{x:0,y:0},distance:{x:t.x-e.internals.positionAbsolute.x,y:t.y-e.internals.positionAbsolute.y},extent:e.extent,parentId:e.parentId,origin:e.origin,expandParent:e.expandParent,internals:{positionAbsolute:e.internals.positionAbsolute||{x:0,y:0}},measured:{width:e.measured.width??0,height:e.measured.height??0}})}return o}(o,l,w,x),s.size>0&&(t||f||!x&&g)){const[n,e]=$d({nodeId:x,dragItems:s,nodeLookup:o});t?.(r.sourceEvent,s,n,e),f?.(r.sourceEvent,n,e),x||g?.(r.sourceEvent,e)}}u=Ca(h);const E=$a().clickDistance(w).on("start",n=>{const{domNode:t,nodeDragThreshold:r,transform:o,snapGrid:i,snapToGrid:s}=e();c=t?.getBoundingClientRect()||null,b=!1,m=!1,0===r&&_(n);const l=ad(n.sourceEvent,{transform:o,snapGrid:i,snapToGrid:s,containerBounds:c});a=l,d=pd(n.sourceEvent,c)}).on("drag",n=>{const{autoPanOnNodeDrag:t,transform:r,snapGrid:o,snapToGrid:i,nodeDragThreshold:u,nodeLookup:m}=e(),f=ad(n.sourceEvent,{transform:r,snapGrid:o,snapToGrid:i,containerBounds:c});if(("touchmove"===n.sourceEvent.type&&n.sourceEvent.touches.length>1||x&&!m.has(x))&&(b=!0),!b){if(!l&&t&&p&&(l=!0,k()),!p){const e=f.xSnapped-(a.x??0),t=f.ySnapped-(a.y??0);Math.sqrt(e*e+t*t)>u&&_(n)}(a.x!==f.xSnapped||a.y!==f.ySnapped)&&s&&p&&(d=pd(n.sourceEvent,c),y(f,n.sourceEvent))}}).on("end",n=>{if(p&&!b&&(l=!1,p=!1,cancelAnimationFrame(i),s.size>0)){const{nodeLookup:t,updateNodePositions:r,onNodeDragStop:a,onSelectionDragStop:i}=e();if(m&&(r(s,!1),m=!1),o||a||!x&&i){const[e,r]=$d({nodeId:x,dragItems:s,nodeLookup:t,dragging:!1});o?.(n.sourceEvent,s,e,r),a?.(n.sourceEvent,e,r),x||i?.(n.sourceEvent,r)}}}).filter(n=>{const e=n.target;return!n.button&&(!f||!Vd(e,`.${f}`,h))&&(!g||Vd(e,g,h))});u.call(E)},destroy:function(){u?.on(".drag",null)}}}function Fd(n,e,t,r){let o=[],a=1/0;const i=function(n,e,t){const r=[],o={x:n.x-t,y:n.y-t,width:2*t,height:2*t};for(const n of e.values())Fl(o,Vl(n))>0&&r.push(n);return r}(n,t,e+250);for(const t of i){const i=[...t.internals.handleBounds?.source??[],...t.internals.handleBounds?.target??[]];for(const s of i){if(r.nodeId===s.nodeId&&r.type===s.type&&r.id===s.id)continue;const{x:i,y:l}=Cd(t,s,s.position,!0),d=Math.sqrt(Math.pow(i-n.x,2)+Math.pow(l-n.y,2));d>e||(d<a?(o=[{...s,x:i,y:l}],a=d):d===a&&o.push({...s,x:i,y:l}))}}if(!o.length)return null;if(o.length>1){const n="source"===r.type?"target":"source";return o.find(e=>e.type===n)??o[0]}return o[0]}function Yd(n,e,t,r,o,a=!1){const i=r.get(n);if(!i)return null;const s="strict"===o?i.internals.handleBounds?.[e]:[...i.internals.handleBounds?.source??[],...i.internals.handleBounds?.target??[]],l=(t?s?.find(n=>n.id===t):s?.[0])??null;return l&&a?{...l,...Cd(i,l,l.position,!0)}:l}function Gd(n,e){return n||(e?.classList.contains("target")?"target":e?.classList.contains("source")?"source":null)}const Xd=()=>!0;function Wd(n,{handle:e,connectionMode:t,fromNodeId:r,fromHandleId:o,fromType:a,doc:i,lib:s,flowId:l,isValidConnection:d=Xd,nodeLookup:c}){const p="target"===a,u=e?i.querySelector(`.${s}-flow__handle[data-id="${l}-${e?.nodeId}-${e?.id}-${e?.type}"]`):null,{x:b,y:m}=pd(n),f=i.elementFromPoint(b,m),g=f?.classList.contains(`${s}-flow__handle`)?f:u,h={handleDomNode:g,isValid:!1,connection:null,toHandle:null};if(g){const n=Gd(void 0,g),e=g.getAttribute("data-nodeid"),a=g.getAttribute("data-handleid"),i=g.classList.contains("connectable"),s=g.classList.contains("connectableend");if(!e||!n)return h;const l={source:p?e:r,sourceHandle:p?a:o,target:p?r:e,targetHandle:p?o:a};h.connection=l;const u=i&&s&&(t===fl.Strict?p&&"source"===n||!p&&"target"===n:e!==r||a!==o);h.isValid=u&&d(l),h.toHandle=Yd(e,n,a,c,t,!0)}return h}const Zd={onPointerDown:function(n,{connectionMode:e,connectionRadius:t,handleId:r,nodeId:o,edgeUpdaterType:a,isTarget:i,domNode:s,nodeLookup:l,lib:d,autoPanOnConnect:c,flowId:p,panBy:u,cancelConnection:b,onConnectStart:m,onConnect:f,onConnectEnd:g,isValidConnection:h=Xd,onReconnectEnd:v,updateConnection:x,getTransform:w,getFromHandle:y,autoPanSpeed:k,dragThreshold:_=1}){const E=sd(n.target);let S,O=0;const{x:C,y:N}=pd(n),j=E?.elementFromPoint(C,N),z=Gd(a,j),M=s?.getBoundingClientRect();let P=!1;if(!M||!z)return;const R=Yd(o,z,r,l,e);if(!R)return;let A=pd(n,M),I=!1,D=null,L=!1,T=null;function B(){if(!c||!M)return;const[n,e]=Dl(A,M,k);u({x:n,y:e}),O=requestAnimationFrame(B)}const V={...R,nodeId:o,type:z,position:R.position},$=l.get(o);let H={inProgress:!0,isValid:null,from:Cd($,V,yl.Left,!0),fromHandle:V,fromPosition:V.position,fromNode:$,to:A,toHandle:null,toPosition:kl[V.position],toNode:null};function F(){P=!0,x(H),m?.(n,{nodeId:o,handleId:r,handleType:z})}function Y(n){if(!P){const{x:e,y:t}=pd(n),r=e-C,o=t-N;if(!(r*r+o*o>_*_))return;F()}if(!y()||!V)return void G(n);const a=w();A=pd(n,M),S=Fd(Zl(A,a,!1,[1,1]),t,l,V),I||(B(),I=!0);const s=Wd(n,{handle:S,connectionMode:e,fromNodeId:o,fromHandleId:r,fromType:i?"target":"source",isValidConnection:h,doc:E,lib:d,flowId:p,nodeLookup:l});T=s.handleDomNode,D=s.connection,L=function(n,e){let t=null;return e?t=!0:n&&!e&&(t=!1),t}(!!S,s.isValid);const c={...H,isValid:L,to:s.toHandle&&L?Kl({x:s.toHandle.x,y:s.toHandle.y},a):A,toHandle:s.toHandle,toPosition:L&&s.toHandle?s.toHandle.position:kl[V.position],toNode:s.toHandle?l.get(s.toHandle.nodeId):null};L&&S&&H.toHandle&&c.toHandle&&H.toHandle.type===c.toHandle.type&&H.toHandle.nodeId===c.toHandle.nodeId&&H.toHandle.id===c.toHandle.id&&H.to.x===c.to.x&&H.to.y===c.to.y||(x(c),H=c)}function G(n){if(P){(S||T)&&D&&L&&f?.(D);const{inProgress:e,...t}=H,r={...t,toPosition:H.toHandle?H.toPosition:null};g?.(n,r),a&&v?.(n,r)}b(),cancelAnimationFrame(O),I=!1,L=!1,D=null,T=null,E.removeEventListener("mousemove",Y),E.removeEventListener("mouseup",G),E.removeEventListener("touchmove",Y),E.removeEventListener("touchend",G)}0===_&&F(),E.addEventListener("mousemove",Y),E.addEventListener("mouseup",G),E.addEventListener("touchmove",Y),E.addEventListener("touchend",G)},isValid:Wd};const Kd=n=>({x:n.x,y:n.y,zoom:n.k}),qd=({x:n,y:e,zoom:t})=>Hs.translate(n,e).scale(t),Ud=(n,e)=>n.target.closest(`.${e}`),Qd=(n,e)=>2===e&&Array.isArray(n)&&n.includes(2),Jd=n=>((n*=2)<=1?n*n*n:(n-=2)*n*n+2)/2,nc=(n,e=0,t=Jd,r=()=>{})=>{const o="number"==typeof e&&e>0;return o||r(),o?n.transition().duration(e).ease(t).on("end",r):n},ec=n=>{const e=n.ctrlKey&&Ql()?10:1;return-n.deltaY*(1===n.deltaMode?.05:n.deltaMode?1:.002)*e};function tc({domNode:n,minZoom:e,maxZoom:t,paneClickDistance:r,translateExtent:o,viewport:a,onPanZoom:i,onPanZoomStart:s,onPanZoomEnd:l,onDraggingChange:d}){const c={isZoomingOrPanning:!1,usedRightMouseButton:!1,prevViewport:{x:0,y:0,zoom:0},mouseButton:0,timerId:void 0,panScrollTimeout:void 0,isPanScrolling:!1},p=n.getBoundingClientRect(),u=Qs().clickDistance(!Gl(r)||r<0?0:r).scaleExtent([e,t]).translateExtent(o),b=Ca(n).call(u);v({x:a.x,y:a.y,zoom:Pl(a.zoom,e,t)},[[0,0],[p.width,p.height]],o);const m=b.on("wheel.zoom"),f=b.on("dblclick.zoom");function g(n,e){return b?new Promise(t=>{u?.interpolate("linear"===e?.interpolate?Ai:Gi).transform(nc(b,e?.duration,e?.ease,()=>t(!0)),n)}):Promise.resolve(!1)}function h(){u.on("zoom",null)}async function v(n,e,t){const r=qd(n),o=u?.constrain()(r,e,t);return o&&await g(o),new Promise(n=>n(o))}return u.wheelDelta(ec),{update:function({noWheelClassName:n,noPanClassName:e,onPaneContextMenu:t,userSelectionActive:r,panOnScroll:o,panOnDrag:a,panOnScrollMode:p,panOnScrollSpeed:g,preventScrolling:v,zoomOnPinch:x,zoomOnScroll:w,zoomOnDoubleClick:y,zoomActivationKeyPressed:k,lib:_,onTransformChange:E}){r&&!c.isZoomingOrPanning&&h();const S=o&&!k&&!r?function({zoomPanValues:n,noWheelClassName:e,d3Selection:t,d3Zoom:r,panOnScrollMode:o,panOnScrollSpeed:a,zoomOnPinch:i,onPanZoomStart:s,onPanZoom:l,onPanZoomEnd:d}){return c=>{if(Ud(c,e))return!1;c.preventDefault(),c.stopImmediatePropagation();const p=t.property("__zoom").k||1;if(c.ctrlKey&&i){const n=Na(c),e=ec(c),o=p*Math.pow(2,e);return void r.scaleTo(t,o,n,c)}const u=1===c.deltaMode?20:1;let b=o===gl.Vertical?0:c.deltaX*u,m=o===gl.Horizontal?0:c.deltaY*u;!Ql()&&c.shiftKey&&o!==gl.Vertical&&(b=c.deltaY*u,m=0),r.translateBy(t,-b/p*a,-m/p*a,{internal:!0});const f=Kd(t.property("__zoom"));clearTimeout(n.panScrollTimeout),n.isPanScrolling||(n.isPanScrolling=!0,s?.(c,f)),n.isPanScrolling&&(l?.(c,f),n.panScrollTimeout=setTimeout(()=>{d?.(c,f),n.isPanScrolling=!1},150))}}({zoomPanValues:c,noWheelClassName:n,d3Selection:b,d3Zoom:u,panOnScrollMode:p,panOnScrollSpeed:g,zoomOnPinch:x,onPanZoomStart:s,onPanZoom:i,onPanZoomEnd:l}):function({noWheelClassName:n,preventScrolling:e,d3ZoomHandler:t}){return function(r,o){const a="wheel"===r.type,i=!e&&a&&!r.ctrlKey,s=Ud(r,n);if(r.ctrlKey&&a&&s&&r.preventDefault(),i||s)return null;r.preventDefault(),t.call(this,r,o)}}({noWheelClassName:n,preventScrolling:v,d3ZoomHandler:m});if(b.on("wheel.zoom",S,{passive:!1}),!r){const n=function({zoomPanValues:n,onDraggingChange:e,onPanZoomStart:t}){return r=>{if(r.sourceEvent?.internal)return;const o=Kd(r.transform);n.mouseButton=r.sourceEvent?.button||0,n.isZoomingOrPanning=!0,n.prevViewport=o,"mousedown"===r.sourceEvent?.type&&e(!0),t&&t?.(r.sourceEvent,o)}}({zoomPanValues:c,onDraggingChange:d,onPanZoomStart:s});u.on("start",n);const e=function({zoomPanValues:n,panOnDrag:e,onPaneContextMenu:t,onTransformChange:r,onPanZoom:o}){return a=>{n.usedRightMouseButton=!(!t||!Qd(e,n.mouseButton??0)),a.sourceEvent?.sync||r([a.transform.x,a.transform.y,a.transform.k]),o&&!a.sourceEvent?.internal&&o?.(a.sourceEvent,Kd(a.transform))}}({zoomPanValues:c,panOnDrag:a,onPaneContextMenu:!!t,onPanZoom:i,onTransformChange:E});u.on("zoom",e);const r=function({zoomPanValues:n,panOnDrag:e,panOnScroll:t,onDraggingChange:r,onPanZoomEnd:o,onPaneContextMenu:a}){return i=>{var s,l;if(!i.sourceEvent?.internal&&(n.isZoomingOrPanning=!1,a&&Qd(e,n.mouseButton??0)&&!n.usedRightMouseButton&&i.sourceEvent&&a(i.sourceEvent),n.usedRightMouseButton=!1,r(!1),o&&(s=n.prevViewport,l=i.transform,s.x!==l.x||s.y!==l.y||s.zoom!==l.k))){const e=Kd(i.transform);n.prevViewport=e,clearTimeout(n.timerId),n.timerId=setTimeout(()=>{o?.(i.sourceEvent,e)},t?150:0)}}}({zoomPanValues:c,panOnDrag:a,panOnScroll:o,onPaneContextMenu:t,onPanZoomEnd:l,onDraggingChange:d});u.on("end",r)}const O=function({zoomActivationKeyPressed:n,zoomOnScroll:e,zoomOnPinch:t,panOnDrag:r,panOnScroll:o,zoomOnDoubleClick:a,userSelectionActive:i,noWheelClassName:s,noPanClassName:l,lib:d}){return c=>{const p=n||e,u=t&&c.ctrlKey;if(1===c.button&&"mousedown"===c.type&&(Ud(c,`${d}-flow__node`)||Ud(c,`${d}-flow__edge`)))return!0;if(!(r||p||o||a||t))return!1;if(i)return!1;if(Ud(c,s)&&"wheel"===c.type)return!1;if(Ud(c,l)&&("wheel"!==c.type||o&&"wheel"===c.type&&!n))return!1;if(!t&&c.ctrlKey&&"wheel"===c.type)return!1;if(!t&&"touchstart"===c.type&&c.touches?.length>1)return c.preventDefault(),!1;if(!p&&!o&&!u&&"wheel"===c.type)return!1;if(!r&&("mousedown"===c.type||"touchstart"===c.type))return!1;if(Array.isArray(r)&&!r.includes(c.button)&&"mousedown"===c.type)return!1;const b=Array.isArray(r)&&r.includes(c.button)||!c.button||c.button<=1;return(!c.ctrlKey||"wheel"===c.type)&&b}}({zoomActivationKeyPressed:k,panOnDrag:a,zoomOnScroll:w,panOnScroll:o,zoomOnDoubleClick:y,zoomOnPinch:x,userSelectionActive:r,noPanClassName:e,noWheelClassName:n,lib:_});u.filter(O),y?b.on("dblclick.zoom",f):b.on("dblclick.zoom",null)},destroy:h,setViewport:async function(n,e){const t=qd(n);return await g(t,e),new Promise(n=>n(t))},setViewportConstrained:v,getViewport:function(){const n=b?Fs(b.node()):{x:0,y:0,k:1};return{x:n.x,y:n.y,zoom:n.k}},scaleTo:function(n,e){return b?new Promise(t=>{u?.interpolate("linear"===e?.interpolate?Ai:Gi).scaleTo(nc(b,e?.duration,e?.ease,()=>t(!0)),n)}):Promise.resolve(!1)},scaleBy:function(n,e){return b?new Promise(t=>{u?.interpolate("linear"===e?.interpolate?Ai:Gi).scaleBy(nc(b,e?.duration,e?.ease,()=>t(!0)),n)}):Promise.resolve(!1)},setScaleExtent:function(n){u?.scaleExtent(n)},setTranslateExtent:function(n){u?.translateExtent(n)},syncViewport:function(n){if(b){const e=qd(n),t=b.property("__zoom");t.k===n.zoom&&t.x===n.x&&t.y===n.y||u?.transform(b,e,null,{sync:!0})}},setClickDistance:function(n){const e=!Gl(n)||n<0?0:n;u?.clickDistance(e)}}}var rc;function oc(n,e){return Math.max(0,e-n)}function ac(n,e){return Math.max(0,n-e)}function ic(n,e,t){return Math.max(0,e-n,n-t)}function sc(n,e){return n?!e:e}!function(n){n.Line="line",n.Handle="handle"}(rc||(rc={}));const lc={width:0,height:0,x:0,y:0},dc={...lc,pointerX:0,pointerY:0,aspectRatio:1};function cc(n,e,t){const r=e.position.x+n.position.x,o=e.position.y+n.position.y,a=n.measured.width??0,i=n.measured.height??0,s=t[0]*a,l=t[1]*i;return[[r-s,o-l],[r+a-s,o+i-l]]}function pc({domNode:n,nodeId:e,getStoreItems:t,onChange:r,onEnd:o}){const a=Ca(n);return{update:function({controlPosition:n,boundaries:i,keepAspectRatio:s,resizeDirection:l,onResizeStart:d,onResize:c,onResizeEnd:p,shouldResize:u}){let b={...lc},m={...dc};const f=function(n){return{isHorizontal:n.includes("right")||n.includes("left"),isVertical:n.includes("bottom")||n.includes("top"),affectsX:n.includes("left"),affectsY:n.includes("top")}}(n);let g,h,v,x,w=null,y=[];const k=$a().on("start",n=>{const{nodeLookup:r,transform:o,snapGrid:a,snapToGrid:i,nodeOrigin:s,paneDomNode:l}=t();if(g=r.get(e),!g)return;w=l?.getBoundingClientRect()??null;const{xSnapped:c,ySnapped:p}=ad(n.sourceEvent,{transform:o,snapGrid:a,snapToGrid:i,containerBounds:w});b={width:g.measured.width??0,height:g.measured.height??0,x:g.position.x??0,y:g.position.y??0},m={...b,pointerX:c,pointerY:p,aspectRatio:b.width/b.height},h=void 0,g.parentId&&("parent"===g.extent||g.expandParent)&&(h=r.get(g.parentId),v=h&&"parent"===g.extent?function(n){return[[0,0],[n.measured.width,n.measured.height]]}(h):void 0),y=[],x=void 0;for(const[n,t]of r)if(t.parentId===e&&(y.push({id:n,position:{...t.position},extent:t.extent}),"parent"===t.extent||t.expandParent)){const n=cc(t,g,t.origin??s);x=x?[[Math.min(n[0][0],x[0][0]),Math.min(n[0][1],x[0][1])],[Math.max(n[1][0],x[1][0]),Math.max(n[1][1],x[1][1])]]:n}d?.(n,{...b})}).on("drag",n=>{const{transform:e,snapGrid:o,snapToGrid:a,nodeOrigin:d}=t(),p=ad(n.sourceEvent,{transform:e,snapGrid:o,snapToGrid:a,containerBounds:w}),k=[];if(!g)return;const{x:_,y:E,width:S,height:O}=b,C={},N=g.origin??d,{width:j,height:z,x:M,y:P}=function(n,e,t,r,o,a,i,s){let{affectsX:l,affectsY:d}=e;const{isHorizontal:c,isVertical:p}=e,u=c&&p,{xSnapped:b,ySnapped:m}=t,{minWidth:f,maxWidth:g,minHeight:h,maxHeight:v}=r,{x:x,y:w,width:y,height:k,aspectRatio:_}=n;let E=Math.floor(c?b-n.pointerX:0),S=Math.floor(p?m-n.pointerY:0);const O=y+(l?-E:E),C=k+(d?-S:S),N=-a[0]*y,j=-a[1]*k;let z=ic(O,f,g),M=ic(C,h,v);if(i){let n=0,e=0;l&&E<0?n=oc(x+E+N,i[0][0]):!l&&E>0&&(n=ac(x+O+N,i[1][0])),d&&S<0?e=oc(w+S+j,i[0][1]):!d&&S>0&&(e=ac(w+C+j,i[1][1])),z=Math.max(z,n),M=Math.max(M,e)}if(s){let n=0,e=0;l&&E>0?n=ac(x+E,s[0][0]):!l&&E<0&&(n=oc(x+O,s[1][0])),d&&S>0?e=ac(w+S,s[0][1]):!d&&S<0&&(e=oc(w+C,s[1][1])),z=Math.max(z,n),M=Math.max(M,e)}if(o){if(c){const n=ic(O/_,h,v)*_;if(z=Math.max(z,n),i){let n=0;n=!l&&!d||l&&!d&&u?ac(w+j+O/_,i[1][1])*_:oc(w+j+(l?E:-E)/_,i[0][1])*_,z=Math.max(z,n)}if(s){let n=0;n=!l&&!d||l&&!d&&u?oc(w+O/_,s[1][1])*_:ac(w+(l?E:-E)/_,s[0][1])*_,z=Math.max(z,n)}}if(p){const n=ic(C*_,f,g)/_;if(M=Math.max(M,n),i){let n=0;n=!l&&!d||d&&!l&&u?ac(x+C*_+N,i[1][0])/_:oc(x+(d?S:-S)*_+N,i[0][0])/_,M=Math.max(M,n)}if(s){let n=0;n=!l&&!d||d&&!l&&u?oc(x+C*_,s[1][0])/_:ac(x+(d?S:-S)*_,s[0][0])/_,M=Math.max(M,n)}}}S+=S<0?M:-M,E+=E<0?z:-z,o&&(u?O>C*_?S=(sc(l,d)?-E:E)/_:E=(sc(l,d)?-S:S)*_:c?(S=E/_,d=l):(E=S*_,l=d));const P=l?x+E:x,R=d?w+S:w;return{width:y+(l?-E:E),height:k+(d?-S:S),x:a[0]*E*(l?-1:1)+P,y:a[1]*S*(d?-1:1)+R}}(m,f,p,i,s,N,v,x),R=j!==S,A=z!==O,I=M!==_&&R,D=P!==E&&A;if(!(I||D||R||A))return;if((I||D||1===N[0]||1===N[1])&&(C.x=I?M:b.x,C.y=D?P:b.y,b.x=C.x,b.y=C.y,y.length>0)){const n=M-_,e=P-E;for(const t of y)t.position={x:t.position.x-n+N[0]*(j-S),y:t.position.y-e+N[1]*(z-O)},k.push(t)}if((R||A)&&(C.width=!R||l&&"horizontal"!==l?b.width:j,C.height=!A||l&&"vertical"!==l?b.height:z,b.width=C.width,b.height=C.height),h&&g.expandParent){const n=N[0]*(C.width??0);C.x&&C.x<n&&(b.x=n,m.x=m.x-(C.x-n));const e=N[1]*(C.height??0);C.y&&C.y<e&&(b.y=e,m.y=m.y-(C.y-e))}const L=function({width:n,prevWidth:e,height:t,prevHeight:r,affectsX:o,affectsY:a}){const i=n-e,s=t-r,l=[i>0?1:i<0?-1:0,s>0?1:s<0?-1:0];return i&&o&&(l[0]=-1*l[0]),s&&a&&(l[1]=-1*l[1]),l}({width:b.width,prevWidth:S,height:b.height,prevHeight:O,affectsX:f.affectsX,affectsY:f.affectsY}),T={...b,direction:L},B=u?.(n,T);!1!==B&&(c?.(n,T),r(C,k))}).on("end",n=>{p?.(n,{...b}),o?.({...b})});a.call(k)},destroy:function(){a.on(".drag",null)}}}var uc,bc={exports:{}},mc={},fc={exports:{}},gc={};var hc,vc,xc,wc={};
19
+ */var ke,Ee=(we||(we=1,ke=ye,function(){var n={}.hasOwnProperty;function e(){for(var n="",e=0;e<arguments.length;e++){var o=arguments[e];o&&(n=r(n,t(o)))}return n}function t(t){if("string"==typeof t||"number"==typeof t)return t;if("object"!=typeof t)return"";if(Array.isArray(t))return e.apply(null,t);if(t.toString!==Object.prototype.toString&&!t.toString.toString().includes("[native code]"))return t.toString();var o="";for(var a in t)n.call(t,a)&&t[a]&&(o=r(o,a));return o}function r(n,e){return e?n?n+" "+e:n+e:n}ke.exports?(e.default=e,ke.exports=e):window.classNames=e}()),ye.exports),_e=i(Ee),Se=Function.prototype.bind.call(Function.prototype.call,[].slice);function Oe(n,e){return Se(n.querySelectorAll(e))}var Ce=!("undefined"==typeof window||!window.document||!window.document.createElement),Ne=!1,je=!1;try{var ze={get passive(){return Ne=!0},get once(){return je=Ne=!0}};Ce&&(window.addEventListener("test",ze,ze),window.removeEventListener("test",ze,!0))}catch(n){}function Me(n,e,t,r){if(r&&"boolean"!=typeof r&&!je){var o=r.once,a=r.capture,i=t;!je&&o&&(i=t.__once||function n(r){this.removeEventListener(e,n,a),t.call(this,r)},t.__once=i),n.addEventListener(e,i,Ne?r:a)}n.addEventListener(e,t,r)}function Pe(n){const t=function(n){const t=e.useRef(n);return e.useEffect(()=>{t.current=n},[n]),t}(n);return e.useCallback(function(...n){return t.current&&t.current(...n)},[t])}const Re=o.createContext(null);var Ie=Object.prototype.hasOwnProperty;function Ae(n,e,t){for(t of n.keys())if(De(t,e))return t}function De(n,e){var t,r,o;if(n===e)return!0;if(n&&e&&(t=n.constructor)===e.constructor){if(t===Date)return n.getTime()===e.getTime();if(t===RegExp)return n.toString()===e.toString();if(t===Array){if((r=n.length)===e.length)for(;r--&&De(n[r],e[r]););return-1===r}if(t===Set){if(n.size!==e.size)return!1;for(r of n){if((o=r)&&"object"==typeof o&&!(o=Ae(e,o)))return!1;if(!e.has(o))return!1}return!0}if(t===Map){if(n.size!==e.size)return!1;for(r of n){if((o=r[0])&&"object"==typeof o&&!(o=Ae(e,o)))return!1;if(!De(r[1],e.get(o)))return!1}return!0}if(t===ArrayBuffer)n=new Uint8Array(n),e=new Uint8Array(e);else if(t===DataView){if((r=n.byteLength)===e.byteLength)for(;r--&&n.getInt8(r)===e.getInt8(r););return-1===r}if(ArrayBuffer.isView(n)){if((r=n.byteLength)===e.byteLength)for(;r--&&n[r]===e[r];);return-1===r}if(!t||"object"==typeof n){for(t in r=0,n){if(Ie.call(n,t)&&++r&&!Ie.call(e,t))return!1;if(!(t in e)||!De(n[t],e[t]))return!1}return Object.keys(e).length===r}}return n!=n&&e!=e}function Te(n){const t=function(){const n=e.useRef(!0),t=e.useRef(()=>n.current);return e.useEffect(()=>(n.current=!0,()=>{n.current=!1}),[]),t.current}();return[n[0],e.useCallback(e=>{if(t())return n[1](e)},[t,n[1]])]}var Le="top",Be="bottom",Ve="right",$e="left",He="auto",Fe=[Le,Be,Ve,$e],Ye="start",Ge="end",Xe="viewport",qe="popper",We=Fe.reduce(function(n,e){return n.concat([e+"-"+Ye,e+"-"+Ge])},[]),Ze=[].concat(Fe,[He]).reduce(function(n,e){return n.concat([e,e+"-"+Ye,e+"-"+Ge])},[]),Ke=["beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite"];function Ue(n){return n.split("-")[0]}function Qe(n){if(null==n)return window;if("[object Window]"!==n.toString()){var e=n.ownerDocument;return e&&e.defaultView||window}return n}function Je(n){return n instanceof Qe(n).Element||n instanceof Element}function nt(n){return n instanceof Qe(n).HTMLElement||n instanceof HTMLElement}function et(n){return"undefined"!=typeof ShadowRoot&&(n instanceof Qe(n).ShadowRoot||n instanceof ShadowRoot)}var tt=Math.max,rt=Math.min,ot=Math.round;function at(){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 it(){return!/^((?!chrome|android).)*safari/i.test(at())}function st(n,e,t){void 0===e&&(e=!1),void 0===t&&(t=!1);var r=n.getBoundingClientRect(),o=1,a=1;e&&nt(n)&&(o=n.offsetWidth>0&&ot(r.width)/n.offsetWidth||1,a=n.offsetHeight>0&&ot(r.height)/n.offsetHeight||1);var i=(Je(n)?Qe(n):window).visualViewport,s=!it()&&t,l=(r.left+(s&&i?i.offsetLeft:0))/o,d=(r.top+(s&&i?i.offsetTop:0))/a,c=r.width/o,p=r.height/a;return{width:c,height:p,top:d,right:l+c,bottom:d+p,left:l,x:l,y:d}}function lt(n){var e=st(n),t=n.offsetWidth,r=n.offsetHeight;return Math.abs(e.width-t)<=1&&(t=e.width),Math.abs(e.height-r)<=1&&(r=e.height),{x:n.offsetLeft,y:n.offsetTop,width:t,height:r}}function dt(n,e){var t=e.getRootNode&&e.getRootNode();if(n.contains(e))return!0;if(t&&et(t)){var r=e;do{if(r&&n.isSameNode(r))return!0;r=r.parentNode||r.host}while(r)}return!1}function ct(n){return n?(n.nodeName||"").toLowerCase():null}function pt(n){return Qe(n).getComputedStyle(n)}function ut(n){return["table","td","th"].indexOf(ct(n))>=0}function bt(n){return((Je(n)?n.ownerDocument:n.document)||window.document).documentElement}function mt(n){return"html"===ct(n)?n:n.assignedSlot||n.parentNode||(et(n)?n.host:null)||bt(n)}function ft(n){return nt(n)&&"fixed"!==pt(n).position?n.offsetParent:null}function gt(n){for(var e=Qe(n),t=ft(n);t&&ut(t)&&"static"===pt(t).position;)t=ft(t);return t&&("html"===ct(t)||"body"===ct(t)&&"static"===pt(t).position)?e:t||function(n){var e=/firefox/i.test(at());if(/Trident/i.test(at())&&nt(n)&&"fixed"===pt(n).position)return null;var t=mt(n);for(et(t)&&(t=t.host);nt(t)&&["html","body"].indexOf(ct(t))<0;){var r=pt(t);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 t;t=t.parentNode}return null}(n)||e}function ht(n){return["top","bottom"].indexOf(n)>=0?"x":"y"}function vt(n,e,t){return tt(n,rt(e,t))}function xt(n){return Object.assign({},{top:0,right:0,bottom:0,left:0},n)}function wt(n,e){return e.reduce(function(e,t){return e[t]=n,e},{})}var yt={name:"arrow",enabled:!0,phase:"main",fn:function(n){var e,t=n.state,r=n.name,o=n.options,a=t.elements.arrow,i=t.modifiersData.popperOffsets,s=Ue(t.placement),l=ht(s),d=[$e,Ve].indexOf(s)>=0?"height":"width";if(a&&i){var c=function(n,e){return xt("number"!=typeof(n="function"==typeof n?n(Object.assign({},e.rects,{placement:e.placement})):n)?n:wt(n,Fe))}(o.padding,t),p=lt(a),u="y"===l?Le:$e,b="y"===l?Be:Ve,m=t.rects.reference[d]+t.rects.reference[l]-i[l]-t.rects.popper[d],f=i[l]-t.rects.reference[l],g=gt(a),h=g?"y"===l?g.clientHeight||0:g.clientWidth||0:0,v=m/2-f/2,x=c[u],w=h-p[d]-c[b],y=h/2-p[d]/2+v,k=vt(x,y,w),E=l;t.modifiersData[r]=((e={})[E]=k,e.centerOffset=k-y,e)}},effect:function(n){var e=n.state,t=n.options.element,r=void 0===t?"[data-popper-arrow]":t;null!=r&&("string"!=typeof r||(r=e.elements.popper.querySelector(r)))&&dt(e.elements.popper,r)&&(e.elements.arrow=r)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function kt(n){return n.split("-")[1]}var Et={top:"auto",right:"auto",bottom:"auto",left:"auto"};function _t(n){var e,t=n.popper,r=n.popperRect,o=n.placement,a=n.variation,i=n.offsets,s=n.position,l=n.gpuAcceleration,d=n.adaptive,c=n.roundOffsets,p=n.isFixed,u=i.x,b=void 0===u?0:u,m=i.y,f=void 0===m?0:m,g="function"==typeof c?c({x:b,y:f}):{x:b,y:f};b=g.x,f=g.y;var h=i.hasOwnProperty("x"),v=i.hasOwnProperty("y"),x=$e,w=Le,y=window;if(d){var k=gt(t),E="clientHeight",_="clientWidth";if(k===Qe(t)&&"static"!==pt(k=bt(t)).position&&"absolute"===s&&(E="scrollHeight",_="scrollWidth"),o===Le||(o===$e||o===Ve)&&a===Ge)w=Be,f-=(p&&k===y&&y.visualViewport?y.visualViewport.height:k[E])-r.height,f*=l?1:-1;if(o===$e||(o===Le||o===Be)&&a===Ge)x=Ve,b-=(p&&k===y&&y.visualViewport?y.visualViewport.width:k[_])-r.width,b*=l?1:-1}var S,O=Object.assign({position:s},d&&Et),C=!0===c?function(n,e){var t=n.x,r=n.y,o=e.devicePixelRatio||1;return{x:ot(t*o)/o||0,y:ot(r*o)/o||0}}({x:b,y:f},Qe(t)):{x:b,y:f};return b=C.x,f=C.y,l?Object.assign({},O,((S={})[w]=v?"0":"",S[x]=h?"0":"",S.transform=(y.devicePixelRatio||1)<=1?"translate("+b+"px, "+f+"px)":"translate3d("+b+"px, "+f+"px, 0)",S)):Object.assign({},O,((e={})[w]=v?f+"px":"",e[x]=h?b+"px":"",e.transform="",e))}var St={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(n){var e=n.state,t=n.options,r=t.gpuAcceleration,o=void 0===r||r,a=t.adaptive,i=void 0===a||a,s=t.roundOffsets,l=void 0===s||s,d={placement:Ue(e.placement),variation:kt(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,_t(Object.assign({},d,{offsets:e.modifiersData.popperOffsets,position:e.options.strategy,adaptive:i,roundOffsets:l})))),null!=e.modifiersData.arrow&&(e.styles.arrow=Object.assign({},e.styles.arrow,_t(Object.assign({},d,{offsets:e.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-placement":e.placement})},data:{}},Ot={passive:!0};var Ct={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(n){var e=n.state,t=n.instance,r=n.options,o=r.scroll,a=void 0===o||o,i=r.resize,s=void 0===i||i,l=Qe(e.elements.popper),d=[].concat(e.scrollParents.reference,e.scrollParents.popper);return a&&d.forEach(function(n){n.addEventListener("scroll",t.update,Ot)}),s&&l.addEventListener("resize",t.update,Ot),function(){a&&d.forEach(function(n){n.removeEventListener("scroll",t.update,Ot)}),s&&l.removeEventListener("resize",t.update,Ot)}},data:{}},Nt={left:"right",right:"left",bottom:"top",top:"bottom"};function jt(n){return n.replace(/left|right|bottom|top/g,function(n){return Nt[n]})}var zt={start:"end",end:"start"};function Mt(n){return n.replace(/start|end/g,function(n){return zt[n]})}function Pt(n){var e=Qe(n);return{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function Rt(n){return st(bt(n)).left+Pt(n).scrollLeft}function It(n){var e=pt(n),t=e.overflow,r=e.overflowX,o=e.overflowY;return/auto|scroll|overlay|hidden/.test(t+o+r)}function At(n){return["html","body","#document"].indexOf(ct(n))>=0?n.ownerDocument.body:nt(n)&&It(n)?n:At(mt(n))}function Dt(n,e){var t;void 0===e&&(e=[]);var r=At(n),o=r===(null==(t=n.ownerDocument)?void 0:t.body),a=Qe(r),i=o?[a].concat(a.visualViewport||[],It(r)?r:[]):r,s=e.concat(i);return o?s:s.concat(Dt(mt(i)))}function Tt(n){return Object.assign({},n,{left:n.x,top:n.y,right:n.x+n.width,bottom:n.y+n.height})}function Lt(n,e,t){return e===Xe?Tt(function(n,e){var t=Qe(n),r=bt(n),o=t.visualViewport,a=r.clientWidth,i=r.clientHeight,s=0,l=0;if(o){a=o.width,i=o.height;var d=it();(d||!d&&"fixed"===e)&&(s=o.offsetLeft,l=o.offsetTop)}return{width:a,height:i,x:s+Rt(n),y:l}}(n,t)):Je(e)?function(n,e){var t=st(n,!1,"fixed"===e);return t.top=t.top+n.clientTop,t.left=t.left+n.clientLeft,t.bottom=t.top+n.clientHeight,t.right=t.left+n.clientWidth,t.width=n.clientWidth,t.height=n.clientHeight,t.x=t.left,t.y=t.top,t}(e,t):Tt(function(n){var e,t=bt(n),r=Pt(n),o=null==(e=n.ownerDocument)?void 0:e.body,a=tt(t.scrollWidth,t.clientWidth,o?o.scrollWidth:0,o?o.clientWidth:0),i=tt(t.scrollHeight,t.clientHeight,o?o.scrollHeight:0,o?o.clientHeight:0),s=-r.scrollLeft+Rt(n),l=-r.scrollTop;return"rtl"===pt(o||t).direction&&(s+=tt(t.clientWidth,o?o.clientWidth:0)-a),{width:a,height:i,x:s,y:l}}(bt(n)))}function Bt(n,e,t,r){var o="clippingParents"===e?function(n){var e=Dt(mt(n)),t=["absolute","fixed"].indexOf(pt(n).position)>=0&&nt(n)?gt(n):n;return Je(t)?e.filter(function(n){return Je(n)&&dt(n,t)&&"body"!==ct(n)}):[]}(n):[].concat(e),a=[].concat(o,[t]),i=a[0],s=a.reduce(function(e,t){var o=Lt(n,t,r);return e.top=tt(o.top,e.top),e.right=rt(o.right,e.right),e.bottom=rt(o.bottom,e.bottom),e.left=tt(o.left,e.left),e},Lt(n,i,r));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}function Vt(n){var e,t=n.reference,r=n.element,o=n.placement,a=o?Ue(o):null,i=o?kt(o):null,s=t.x+t.width/2-r.width/2,l=t.y+t.height/2-r.height/2;switch(a){case Le:e={x:s,y:t.y-r.height};break;case Be:e={x:s,y:t.y+t.height};break;case Ve:e={x:t.x+t.width,y:l};break;case $e:e={x:t.x-r.width,y:l};break;default:e={x:t.x,y:t.y}}var d=a?ht(a):null;if(null!=d){var c="y"===d?"height":"width";switch(i){case Ye:e[d]=e[d]-(t[c]/2-r[c]/2);break;case Ge:e[d]=e[d]+(t[c]/2-r[c]/2)}}return e}function $t(n,e){void 0===e&&(e={});var t=e,r=t.placement,o=void 0===r?n.placement:r,a=t.strategy,i=void 0===a?n.strategy:a,s=t.boundary,l=void 0===s?"clippingParents":s,d=t.rootBoundary,c=void 0===d?Xe:d,p=t.elementContext,u=void 0===p?qe:p,b=t.altBoundary,m=void 0!==b&&b,f=t.padding,g=void 0===f?0:f,h=xt("number"!=typeof g?g:wt(g,Fe)),v=u===qe?"reference":qe,x=n.rects.popper,w=n.elements[m?v:u],y=Bt(Je(w)?w:w.contextElement||bt(n.elements.popper),l,c,i),k=st(n.elements.reference),E=Vt({reference:k,element:x,placement:o}),_=Tt(Object.assign({},x,E)),S=u===qe?_:k,O={top:y.top-S.top+h.top,bottom:S.bottom-y.bottom+h.bottom,left:y.left-S.left+h.left,right:S.right-y.right+h.right},C=n.modifiersData.offset;if(u===qe&&C){var N=C[o];Object.keys(O).forEach(function(n){var e=[Ve,Be].indexOf(n)>=0?1:-1,t=[Le,Be].indexOf(n)>=0?"y":"x";O[n]+=N[t]*e})}return O}function Ht(n,e){void 0===e&&(e={});var t=e,r=t.placement,o=t.boundary,a=t.rootBoundary,i=t.padding,s=t.flipVariations,l=t.allowedAutoPlacements,d=void 0===l?Ze:l,c=kt(r),p=c?s?We:We.filter(function(n){return kt(n)===c}):Fe,u=p.filter(function(n){return d.indexOf(n)>=0});0===u.length&&(u=p);var b=u.reduce(function(e,t){return e[t]=$t(n,{placement:t,boundary:o,rootBoundary:a,padding:i})[Ue(t)],e},{});return Object.keys(b).sort(function(n,e){return b[n]-b[e]})}var Ft={name:"flip",enabled:!0,phase:"main",fn:function(n){var e=n.state,t=n.options,r=n.name;if(!e.modifiersData[r]._skip){for(var o=t.mainAxis,a=void 0===o||o,i=t.altAxis,s=void 0===i||i,l=t.fallbackPlacements,d=t.padding,c=t.boundary,p=t.rootBoundary,u=t.altBoundary,b=t.flipVariations,m=void 0===b||b,f=t.allowedAutoPlacements,g=e.options.placement,h=Ue(g),v=l||(h===g||!m?[jt(g)]:function(n){if(Ue(n)===He)return[];var e=jt(n);return[Mt(n),e,Mt(e)]}(g)),x=[g].concat(v).reduce(function(n,t){return n.concat(Ue(t)===He?Ht(e,{placement:t,boundary:c,rootBoundary:p,padding:d,flipVariations:m,allowedAutoPlacements:f}):t)},[]),w=e.rects.reference,y=e.rects.popper,k=new Map,E=!0,_=x[0],S=0;S<x.length;S++){var O=x[S],C=Ue(O),N=kt(O)===Ye,j=[Le,Be].indexOf(C)>=0,z=j?"width":"height",M=$t(e,{placement:O,boundary:c,rootBoundary:p,altBoundary:u,padding:d}),P=j?N?Ve:$e:N?Be:Le;w[z]>y[z]&&(P=jt(P));var R=jt(P),I=[];if(a&&I.push(M[C]<=0),s&&I.push(M[P]<=0,M[R]<=0),I.every(function(n){return n})){_=O,E=!1;break}k.set(O,I)}if(E)for(var A=function(n){var e=x.find(function(e){var t=k.get(e);if(t)return t.slice(0,n).every(function(n){return n})});if(e)return _=e,"break"},D=m?3:1;D>0;D--){if("break"===A(D))break}e.placement!==_&&(e.modifiersData[r]._skip=!0,e.placement=_,e.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function Yt(n,e,t){return void 0===t&&(t={x:0,y:0}),{top:n.top-e.height-t.y,right:n.right-e.width+t.x,bottom:n.bottom-e.height+t.y,left:n.left-e.width-t.x}}function Gt(n){return[Le,Ve,Be,$e].some(function(e){return n[e]>=0})}var Xt={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(n){var e=n.state,t=n.options,r=n.name,o=t.offset,a=void 0===o?[0,0]:o,i=Ze.reduce(function(n,t){return n[t]=function(n,e,t){var r=Ue(n),o=[$e,Le].indexOf(r)>=0?-1:1,a="function"==typeof t?t(Object.assign({},e,{placement:n})):t,i=a[0],s=a[1];return i=i||0,s=(s||0)*o,[$e,Ve].indexOf(r)>=0?{x:s,y:i}:{x:i,y:s}}(t,e.rects,a),n},{}),s=i[e.placement],l=s.x,d=s.y;null!=e.modifiersData.popperOffsets&&(e.modifiersData.popperOffsets.x+=l,e.modifiersData.popperOffsets.y+=d),e.modifiersData[r]=i}};var qt={name:"preventOverflow",enabled:!0,phase:"main",fn:function(n){var e=n.state,t=n.options,r=n.name,o=t.mainAxis,a=void 0===o||o,i=t.altAxis,s=void 0!==i&&i,l=t.boundary,d=t.rootBoundary,c=t.altBoundary,p=t.padding,u=t.tether,b=void 0===u||u,m=t.tetherOffset,f=void 0===m?0:m,g=$t(e,{boundary:l,rootBoundary:d,padding:p,altBoundary:c}),h=Ue(e.placement),v=kt(e.placement),x=!v,w=ht(h),y="x"===w?"y":"x",k=e.modifiersData.popperOffsets,E=e.rects.reference,_=e.rects.popper,S="function"==typeof f?f(Object.assign({},e.rects,{placement:e.placement})):f,O="number"==typeof S?{mainAxis:S,altAxis:S}:Object.assign({mainAxis:0,altAxis:0},S),C=e.modifiersData.offset?e.modifiersData.offset[e.placement]:null,N={x:0,y:0};if(k){if(a){var j,z="y"===w?Le:$e,M="y"===w?Be:Ve,P="y"===w?"height":"width",R=k[w],I=R+g[z],A=R-g[M],D=b?-_[P]/2:0,T=v===Ye?E[P]:_[P],L=v===Ye?-_[P]:-E[P],B=e.elements.arrow,V=b&&B?lt(B):{width:0,height:0},$=e.modifiersData["arrow#persistent"]?e.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},H=$[z],F=$[M],Y=vt(0,E[P],V[P]),G=x?E[P]/2-D-Y-H-O.mainAxis:T-Y-H-O.mainAxis,X=x?-E[P]/2+D+Y+F+O.mainAxis:L+Y+F+O.mainAxis,q=e.elements.arrow&&gt(e.elements.arrow),W=q?"y"===w?q.clientTop||0:q.clientLeft||0:0,Z=null!=(j=null==C?void 0:C[w])?j:0,K=R+X-Z,U=vt(b?rt(I,R+G-Z-W):I,R,b?tt(A,K):A);k[w]=U,N[w]=U-R}if(s){var Q,J="x"===w?Le:$e,nn="x"===w?Be:Ve,en=k[y],tn="y"===y?"height":"width",rn=en+g[J],on=en-g[nn],an=-1!==[Le,$e].indexOf(h),sn=null!=(Q=null==C?void 0:C[y])?Q:0,ln=an?rn:en-E[tn]-_[tn]-sn+O.altAxis,dn=an?en+E[tn]+_[tn]-sn-O.altAxis:on,cn=b&&an?function(n,e,t){var r=vt(n,e,t);return r>t?t:r}(ln,en,dn):vt(b?ln:rn,en,b?dn:on);k[y]=cn,N[y]=cn-en}e.modifiersData[r]=N}},requiresIfExists:["offset"]};function Wt(n,e,t){void 0===t&&(t=!1);var r,o,a=nt(e),i=nt(e)&&function(n){var e=n.getBoundingClientRect(),t=ot(e.width)/n.offsetWidth||1,r=ot(e.height)/n.offsetHeight||1;return 1!==t||1!==r}(e),s=bt(e),l=st(n,i,t),d={scrollLeft:0,scrollTop:0},c={x:0,y:0};return(a||!a&&!t)&&(("body"!==ct(e)||It(s))&&(d=(r=e)!==Qe(r)&&nt(r)?{scrollLeft:(o=r).scrollLeft,scrollTop:o.scrollTop}:Pt(r)),nt(e)?((c=st(e,!0)).x+=e.clientLeft,c.y+=e.clientTop):s&&(c.x=Rt(s))),{x:l.left+d.scrollLeft-c.x,y:l.top+d.scrollTop-c.y,width:l.width,height:l.height}}function Zt(n){var e=new Map,t=new Set,r=[];function o(n){t.add(n.name),[].concat(n.requires||[],n.requiresIfExists||[]).forEach(function(n){if(!t.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){t.has(n.name)||o(n)}),r}function Kt(n){var e;return function(){return e||(e=new Promise(function(t){Promise.resolve().then(function(){e=void 0,t(n())})})),e}}var Ut={placement:"bottom",modifiers:[],strategy:"absolute"};function Qt(){for(var n=arguments.length,e=new Array(n),t=0;t<n;t++)e[t]=arguments[t];return!e.some(function(n){return!(n&&"function"==typeof n.getBoundingClientRect)})}const Jt=function(n){void 0===n&&(n={});var e=n,t=e.defaultModifiers,r=void 0===t?[]:t,o=e.defaultOptions,a=void 0===o?Ut:o;return function(n,e,t){void 0===t&&(t=a);var o={placement:"bottom",orderedModifiers:[],options:Object.assign({},Ut,a),modifiersData:{},elements:{reference:n,popper:e},attributes:{},styles:{}},i=[],s=!1,l={state:o,setOptions:function(t){var s="function"==typeof t?t(o.options):t;d(),o.options=Object.assign({},a,o.options,s),o.scrollParents={reference:Je(n)?Dt(n):n.contextElement?Dt(n.contextElement):[],popper:Dt(e)};var c,p,u=function(n){var e=Zt(n);return Ke.reduce(function(n,t){return n.concat(e.filter(function(n){return n.phase===t}))},[])}((c=[].concat(r,o.options.modifiers),p=c.reduce(function(n,e){var t=n[e.name];return n[e.name]=t?Object.assign({},t,e,{options:Object.assign({},t.options,e.options),data:Object.assign({},t.data,e.data)}):e,n},{}),Object.keys(p).map(function(n){return p[n]})));return o.orderedModifiers=u.filter(function(n){return n.enabled}),o.orderedModifiers.forEach(function(n){var e=n.name,t=n.options,r=void 0===t?{}:t,a=n.effect;if("function"==typeof a){var s=a({state:o,name:e,instance:l,options:r}),d=function(){};i.push(s||d)}}),l.update()},forceUpdate:function(){if(!s){var n=o.elements,e=n.reference,t=n.popper;if(Qt(e,t)){o.rects={reference:Wt(e,gt(t),"fixed"===o.options.strategy),popper:lt(t)},o.reset=!1,o.placement=o.options.placement,o.orderedModifiers.forEach(function(n){return o.modifiersData[n.name]=Object.assign({},n.data)});for(var r=0;r<o.orderedModifiers.length;r++)if(!0!==o.reset){var a=o.orderedModifiers[r],i=a.fn,d=a.options,c=void 0===d?{}:d,p=a.name;"function"==typeof i&&(o=i({state:o,options:c,name:p,instance:l})||o)}else o.reset=!1,r=-1}}},update:Kt(function(){return new Promise(function(n){l.forceUpdate(),n(o)})}),destroy:function(){d(),s=!0}};if(!Qt(n,e))return l;function d(){i.forEach(function(n){return n()}),i=[]}return l.setOptions(t).then(function(n){!s&&t.onFirstUpdate&&t.onFirstUpdate(n)}),l}}({defaultModifiers:[{name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(n){var e=n.state,t=n.name,r=e.rects.reference,o=e.rects.popper,a=e.modifiersData.preventOverflow,i=$t(e,{elementContext:"reference"}),s=$t(e,{altBoundary:!0}),l=Yt(i,r),d=Yt(s,o,a),c=Gt(l),p=Gt(d);e.modifiersData[t]={referenceClippingOffsets:l,popperEscapeOffsets:d,isReferenceHidden:c,hasPopperEscaped:p},e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-reference-hidden":c,"data-popper-escaped":p})}},{name:"popperOffsets",enabled:!0,phase:"read",fn:function(n){var e=n.state,t=n.name;e.modifiersData[t]=Vt({reference:e.rects.reference,element:e.rects.popper,placement:e.placement})},data:{}},St,Ct,Xt,Ft,qt,yt]}),nr=["enabled","placement","strategy","modifiers"];const er={name:"applyStyles",enabled:!1,phase:"afterWrite",fn:()=>{}},tr={name:"ariaDescribedBy",enabled:!0,phase:"afterWrite",effect:({state:n})=>()=>{const{reference:e,popper:t}=n.elements;if("removeAttribute"in e){const n=(e.getAttribute("aria-describedby")||"").split(",").filter(n=>n.trim()!==t.id);n.length?e.setAttribute("aria-describedby",n.join(",")):e.removeAttribute("aria-describedby")}},fn:({state:n})=>{var e;const{popper:t,reference:r}=n.elements,o=null==(e=t.getAttribute("role"))?void 0:e.toLowerCase();if(t.id&&"tooltip"===o&&"setAttribute"in r){const n=r.getAttribute("aria-describedby");if(n&&-1!==n.split(",").indexOf(t.id))return;r.setAttribute("aria-describedby",n?`${n},${t.id}`:t.id)}}},rr=[];function or(n,e){return n.contains?n.contains(e):n.compareDocumentPosition?n===e||!!(16&n.compareDocumentPosition(e)):void 0}function ar(n,e,t,r){return Me(n,e,t,r),function(){!function(n,e,t,r){var o=r&&"boolean"!=typeof r?r.capture:r;n.removeEventListener(e,t,o),t.__once&&n.removeEventListener(e,t.__once,o)}(n,e,t,r)}}var ir,sr;var lr=function(){if(sr)return ir;sr=1;var n=function(){};if("production"!==process.env.NODE_ENV){var e=function(n,e){var t=arguments.length;e=new Array(t>1?t-1:0);for(var r=1;r<t;r++)e[r-1]=arguments[r];var o=0,a="Warning: "+n.replace(/%s/g,function(){return e[o++]});"undefined"!=typeof console&&console.error(a);try{throw new Error(a)}catch(n){}};n=function(n,t,r){var o=arguments.length;r=new Array(o>2?o-2:0);for(var a=2;a<o;a++)r[a-2]=arguments[a];if(void 0===t)throw new Error("`warning(condition, format, ...args)` requires a warning message argument");n||e.apply(null,[t].concat(r))}}return ir=n}(),dr=i(lr);const cr=()=>{};const pr=n=>n&&("current"in n?n.current:n),ur={click:"mousedown",mouseup:"mousedown",pointerup:"pointerdown"};function br(n,t=cr,{disabled:r,clickTrigger:o="click"}={}){const a=e.useRef(!1),i=e.useRef(!1),s=e.useCallback(e=>{const t=pr(n);var r;dr(!!t,"ClickOutside captured a close event but does not have a ref to compare it to. useClickOutside(), should be passed a ref that resolves to a DOM node"),a.current=!t||!!((r=e).metaKey||r.altKey||r.ctrlKey||r.shiftKey)||!function(n){return 0===n.button}(e)||!!or(t,e.target)||i.current,i.current=!1},[n]),l=Pe(e=>{const t=pr(n);t&&or(t,e.target)?i.current=!0:i.current=!1}),d=Pe(n=>{a.current||t(n)});e.useEffect(()=>{var e,t;if(r||null==n)return;const a=(i=pr(n))&&i.ownerDocument||document;var i;const c=a.defaultView||window;let p=null!=(e=c.event)?e:null==(t=c.parent)?void 0:t.event,u=null;ur[o]&&(u=ar(a,ur[o],l,!0));const b=ar(a,o,s,!0),m=ar(a,o,n=>{n!==p?d(n):p=void 0});let f=[];return"ontouchstart"in a.documentElement&&(f=[].slice.call(a.body.children).map(n=>ar(n,"mousemove",cr))),()=>{null==u||u(),b(),m(),f.forEach(n=>n())}},[n,r,o,s,l,d])}function mr(n={}){return Array.isArray(n)?n:Object.keys(n).map(e=>(n[e].name=e,n[e]))}function fr({enabled:n,enableEvents:e,placement:t,flip:r,offset:o,fixed:a,containerPadding:i,arrowElement:s,popperConfig:l={}}){var d,c,p,u,b;const m=function(n){const e={};return Array.isArray(n)?(null==n||n.forEach(n=>{e[n.name]=n}),e):n||e}(l.modifiers);return Object.assign({},l,{placement:t,enabled:n,strategy:a?"fixed":l.strategy,modifiers:mr(Object.assign({},m,{eventListeners:{enabled:e,options:null==(d=m.eventListeners)?void 0:d.options},preventOverflow:Object.assign({},m.preventOverflow,{options:i?Object.assign({padding:i},null==(c=m.preventOverflow)?void 0:c.options):null==(p=m.preventOverflow)?void 0:p.options}),offset:{options:Object.assign({offset:o},null==(u=m.offset)?void 0:u.options)},arrow:Object.assign({},m.arrow,{enabled:!!s,options:Object.assign({},null==(b=m.arrow)?void 0:b.options,{element:s})}),flip:Object.assign({enabled:!!r},m.flip)}))})}const gr=["children","usePopper"];const hr=()=>{};function vr(n={}){const t=e.useContext(Re),[r,o]=e.useState(null),a=e.useRef(!1),{flip:i,offset:s,rootCloseEvent:l,fixed:d=!1,placement:c,popperConfig:p={},enableEventListeners:u=!0,usePopper:b=!!t}=n,m=null==(null==t?void 0:t.show)?!!n.show:t.show;m&&!a.current&&(a.current=!0);const{placement:f,setMenu:g,menuElement:h,toggleElement:v}=t||{},x=function(n,t,r={}){let{enabled:o=!0,placement:a="bottom",strategy:i="absolute",modifiers:s=rr}=r,l=function(n,e){if(null==n)return{};var t={};for(var r in n)if({}.hasOwnProperty.call(n,r)){if(e.indexOf(r)>=0)continue;t[r]=n[r]}return t}(r,nr);const d=e.useRef(s),c=e.useRef(),p=e.useCallback(()=>{var n;null==(n=c.current)||n.update()},[]),u=e.useCallback(()=>{var n;null==(n=c.current)||n.forceUpdate()},[]),[b,m]=Te(e.useState({placement:a,update:p,forceUpdate:u,attributes:{},styles:{popper:{},arrow:{}}})),f=e.useMemo(()=>({name:"updateStateModifier",enabled:!0,phase:"write",requires:["computeStyles"],fn:({state:n})=>{const e={},t={};Object.keys(n.elements).forEach(r=>{e[r]=n.styles[r],t[r]=n.attributes[r]}),m({state:n,styles:e,attributes:t,update:p,forceUpdate:u,placement:n.placement})}}),[p,u,m]),g=e.useMemo(()=>(De(d.current,s)||(d.current=s),d.current),[s]);return e.useEffect(()=>{c.current&&o&&c.current.setOptions({placement:a,strategy:i,modifiers:[...g,f,er]})},[i,a,f,o,g]),e.useEffect(()=>{if(o&&null!=n&&null!=t)return c.current=Jt(n,t,Object.assign({},l,{placement:a,strategy:i,modifiers:[...g,tr,f]})),()=>{null!=c.current&&(c.current.destroy(),c.current=void 0,m(n=>Object.assign({},n,{attributes:{},styles:{popper:{}}})))}},[o,n,t]),b}(v,h,fr({placement:c||f||"bottom-start",enabled:b,enableEvents:null==u?m:u,offset:s,flip:i,fixed:d,arrowElement:r,popperConfig:p})),w=Object.assign({ref:g||hr,"aria-labelledby":null==v?void 0:v.id},x.attributes.popper,{style:x.styles.popper}),y={show:m,placement:f,hasShown:a.current,toggle:null==t?void 0:t.toggle,popper:b?x:null,arrowProps:b?Object.assign({ref:o},x.attributes.arrow,{style:x.styles.arrow}):{}};return br(h,n=>{null==t||t.toggle(!1,n)},{clickTrigger:l,disabled:!m}),[w,y]}function xr(e){let{children:t,usePopper:r=!0}=e,o=function(n,e){if(null==n)return{};var t={};for(var r in n)if({}.hasOwnProperty.call(n,r)){if(e.indexOf(r)>=0)continue;t[r]=n[r]}return t}(e,gr);const[a,i]=vr(Object.assign({},o,{usePopper:r}));return n.jsx(n.Fragment,{children:t(a,i)})}xr.displayName="DropdownMenu";const wr={prefix:String(Math.round(1e10*Math.random())),current:0},yr=e.createContext(wr),kr=e.createContext(!1);let Er=Boolean("undefined"!=typeof window&&window.document&&window.document.createElement),_r=new WeakMap;const Sr="function"==typeof e.useId?function(n){let t=e.useId(),[r]=e.useState("function"==typeof e.useSyncExternalStore?e.useSyncExternalStore(Nr,Or,Cr):e.useContext(kr)),o=r||"test"===process.env.NODE_ENV?"react-aria":`react-aria${wr.prefix}`;return n||`${o}-${t}`}:function(n){let t=e.useContext(yr);t!==wr||Er||"production"===process.env.NODE_ENV||console.warn("When server rendering, you must wrap your application in an <SSRProvider> to ensure consistent ids are generated between the client and server.");let r=function(n=!1){let t=e.useContext(yr),r=e.useRef(null);if(null===r.current&&!n){var o,a;let n=null===(a=e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED)||void 0===a||null===(o=a.ReactCurrentOwner)||void 0===o?void 0:o.current;if(n){let e=_r.get(n);null==e?_r.set(n,{id:t.current,state:n.memoizedState}):n.memoizedState!==e.state&&(t.current=e.id,_r.delete(n))}r.current=++t.current}return r.current}(!!n),o=t===wr&&"test"===process.env.NODE_ENV?"react-aria":`react-aria${t.prefix}`;return n||`${o}-${r}`};function Or(){return!1}function Cr(){return!0}function Nr(n){return()=>{}}const jr=n=>{var e;return"menu"===(null==(e=n.getAttribute("role"))?void 0:e.toLowerCase())},zr=()=>{};function Mr(){const n=Sr(),{show:t=!1,toggle:r=zr,setToggle:o,menuElement:a}=e.useContext(Re)||{},i=e.useCallback(n=>{r(!t,n)},[t,r]),s={id:n,ref:o||zr,onClick:i,"aria-expanded":!!t};return a&&jr(a)&&(s["aria-haspopup"]=!0),[s,{show:t,toggle:r}]}function Pr({children:e}){const[t,r]=Mr();return n.jsx(n.Fragment,{children:e(t,r)})}Pr.displayName="DropdownToggle";const Rr=o.createContext(null),Ir=(n,e=null)=>null!=n?String(n):e||null,Ar=o.createContext(null);Ar.displayName="NavContext";const Dr=["as","disabled"];function Tr({tagName:n,disabled:e,href:t,target:r,rel:o,role:a,onClick:i,tabIndex:s=0,type:l}){n||(n=null!=t||null!=r||null!=o?"a":"button");const d={tagName:n};if("button"===n)return[{type:l||"button",disabled:e},d];const c=r=>{(e||"a"===n&&function(n){return!n||"#"===n.trim()}(t))&&r.preventDefault(),e?r.stopPropagation():null==i||i(r)};return"a"===n&&(t||(t="#"),e&&(t=void 0)),[{role:null!=a?a:"button",disabled:void 0,tabIndex:e?void 0:s,href:t,target:"a"===n?r:void 0,"aria-disabled":e||void 0,rel:"a"===n?o:void 0,onClick:c,onKeyDown:n=>{" "===n.key&&(n.preventDefault(),c(n))}},d]}const Lr=o.forwardRef((e,t)=>{let{as:r,disabled:o}=e,a=function(n,e){if(null==n)return{};var t={};for(var r in n)if({}.hasOwnProperty.call(n,r)){if(e.indexOf(r)>=0)continue;t[r]=n[r]}return t}(e,Dr);const[i,{tagName:s}]=Tr(Object.assign({tagName:r,disabled:o},a));return n.jsx(s,Object.assign({},a,i,{ref:t}))});Lr.displayName="Button";function Br(n){return`data-rr-ui-${n}`}const Vr=["eventKey","disabled","onClick","active","as"];function $r({key:n,href:t,active:r,disabled:o,onClick:a}){const i=e.useContext(Rr),s=e.useContext(Ar),{activeKey:l}=s||{},d=Ir(n,t),c=null==r&&null!=n?Ir(l)===d:r;return[{onClick:Pe(n=>{o||(null==a||a(n),i&&!n.isPropagationStopped()&&i(d,n))}),"aria-disabled":o||void 0,"aria-selected":c,[Br("dropdown-item")]:""},{isActive:c}]}const Hr=o.forwardRef((e,t)=>{let{eventKey:r,disabled:o,onClick:a,active:i,as:s=Lr}=e,l=function(n,e){if(null==n)return{};var t={};for(var r in n)if({}.hasOwnProperty.call(n,r)){if(e.indexOf(r)>=0)continue;t[r]=n[r]}return t}(e,Vr);const[d]=$r({key:r,href:l.href,disabled:o,onClick:a,active:i});return n.jsx(s,Object.assign({},l,{ref:t},d))});Hr.displayName="DropdownItem";const Fr=e.createContext(Ce?window:void 0);function Yr(){const n=function(){const[,n]=e.useReducer(n=>n+1,0);return n}(),t=e.useRef(null),r=e.useCallback(e=>{t.current=e,n()},[n]);return[t,r]}function Gr({defaultShow:t,show:r,onSelect:o,onToggle:a,itemSelector:i=`* [${Br("dropdown-item")}]`,focusFirstItemOnShow:s,placement:l="bottom-start",children:d}){const c=e.useContext(Fr),[p,u]=function(n,t,r){const o=e.useRef(void 0!==n),[a,i]=e.useState(t),s=void 0!==n,l=o.current;return o.current=s,!s&&l&&a!==t&&i(t),[s?n:a,e.useCallback((...n)=>{const[e,...t]=n;let o=null==r?void 0:r(e,...t);return i(e),o},[r])]}(r,t,a),[b,m]=Yr(),f=b.current,[g,h]=Yr(),v=g.current,x=function(n){const t=e.useRef(null);return e.useEffect(()=>{t.current=n}),t.current}(p),w=e.useRef(null),y=e.useRef(!1),k=e.useContext(Rr),E=e.useCallback((n,e,t=(null==e?void 0:e.type))=>{u(n,{originalEvent:e,source:t})},[u]),_=Pe((n,e)=>{null==o||o(n,e),E(!1,e,"select"),e.isPropagationStopped()||null==k||k(n,e)}),S=e.useMemo(()=>({toggle:E,placement:l,show:p,menuElement:f,toggleElement:v,setMenu:m,setToggle:h}),[E,l,p,f,v,m,h]);f&&x&&!p&&(y.current=f.contains(f.ownerDocument.activeElement));const O=Pe(()=>{v&&v.focus&&v.focus()}),C=Pe(()=>{const n=w.current;let e=s;if(null==e&&(e=!(!b.current||!jr(b.current))&&"keyboard"),!1===e||"keyboard"===e&&!/^key.+$/.test(n))return;const t=Oe(b.current,i)[0];t&&t.focus&&t.focus()});e.useEffect(()=>{p?C():y.current&&(y.current=!1,O())},[p,y,O,C]),e.useEffect(()=>{w.current=null});const N=(n,e)=>{if(!b.current)return null;const t=Oe(b.current,i);let r=t.indexOf(n)+e;return r=Math.max(0,Math.min(r,t.length)),t[r]};return function(n,t,r,o=!1){const a=Pe(r);e.useEffect(()=>{const e="function"==typeof n?n():n;return e.addEventListener(t,a,o),()=>e.removeEventListener(t,a,o)},[n])}(e.useCallback(()=>c.document,[c]),"keydown",n=>{var e,t;const{key:r}=n,o=n.target,a=null==(e=b.current)?void 0:e.contains(o),i=null==(t=g.current)?void 0:t.contains(o);if(/input|textarea/i.test(o.tagName)&&(" "===r||"Escape"!==r&&a||"Escape"===r&&"search"===o.type))return;if(!a&&!i)return;if(!("Tab"!==r||b.current&&p))return;w.current=n.type;const s={originalEvent:n,source:n.type};switch(r){case"ArrowUp":{const e=N(o,-1);return e&&e.focus&&e.focus(),void n.preventDefault()}case"ArrowDown":if(n.preventDefault(),p){const n=N(o,1);n&&n.focus&&n.focus()}else u(!0,s);return;case"Tab":Me(o.ownerDocument,"keyup",n=>{var e;("Tab"!==n.key||n.target)&&null!=(e=b.current)&&e.contains(n.target)||u(!1,s)},{once:!0});break;case"Escape":"Escape"===r&&(n.preventDefault(),n.stopPropagation()),u(!1,s)}}),n.jsx(Rr.Provider,{value:_,children:n.jsx(Re.Provider,{value:S,children:d})})}function Xr(){return Xr=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)({}).hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},Xr.apply(null,arguments)}var qr,Wr;Fr.Provider,Gr.displayName="Dropdown",Gr.Menu=xr,Gr.Toggle=Pr,Gr.Item=Hr;var Zr=i(function(){if(Wr)return qr;Wr=1;var n=process.env.NODE_ENV;return qr=function(e,t,r,o,a,i,s,l){if("production"!==n&&void 0===t)throw new Error("invariant requires an error message argument");if(!e){var d;if(void 0===t)d=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var c=[r,o,a,i,s,l],p=0;(d=new Error(t.replace(/%s/g,function(){return c[p++]}))).name="Invariant Violation"}throw d.framesToPop=1,d}}}());function Kr(n){return"default"+n.charAt(0).toUpperCase()+n.substr(1)}function Ur(n){var e=function(n,e){if("object"!=typeof n||null===n)return n;var t=n[Symbol.toPrimitive];if(void 0!==t){var r=t.call(n,e);if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n,"string");return"symbol"==typeof e?e:String(e)}function Qr(n,t){return Object.keys(t).reduce(function(r,o){var a,i=r,s=i[Kr(o)],l=i[o],d=function(n,e){if(null==n)return{};var t={};for(var r in n)if({}.hasOwnProperty.call(n,r)){if(-1!==e.indexOf(r))continue;t[r]=n[r]}return t}(i,[Kr(o),o].map(Ur)),c=t[o],p=function(n,t,r){var o=e.useRef(void 0!==n),a=e.useState(t),i=a[0],s=a[1],l=void 0!==n,d=o.current;return o.current=l,!l&&d&&i!==t&&s(t),[l?n:i,e.useCallback(function(n){for(var e=arguments.length,t=new Array(e>1?e-1:0),o=1;o<e;o++)t[o-1]=arguments[o];r&&r.apply(void 0,[n].concat(t)),s(n)},[r])]}(l,s,n[c]),u=p[0],b=p[1];return Xr({},d,((a={})[o]=u,a[c]=b,a))},n)}function Jr(n){const t=function(n){const t=e.useRef(n);return e.useEffect(()=>{t.current=n},[n]),t}(n);return e.useCallback(function(...n){return t.current&&t.current(...n)},[t])}const no=o.createContext({});no.displayName="DropdownContext";const eo=o.createContext({prefixes:{},breakpoints:["xxl","xl","lg","md","sm","xs"],minBreakpoint:"xs"}),{Consumer:to,Provider:ro}=eo;function oo(n,t){const{prefixes:r}=e.useContext(eo);return n||r[t]||t}const ao=o.forwardRef(({className:e,bsPrefix:t,as:r="hr",role:o="separator",...a},i)=>(t=oo(t,"dropdown-divider"),n.jsx(r,{ref:i,className:_e(e,t),role:o,...a})));ao.displayName="DropdownDivider";const io=o.forwardRef(({className:e,bsPrefix:t,as:r="div",role:o="heading",...a},i)=>(t=oo(t,"dropdown-header"),n.jsx(r,{ref:i,className:_e(e,t),role:o,...a})));io.displayName="DropdownHeader";const so=["onKeyDown"];const lo=o.forwardRef((e,t)=>{let{onKeyDown:r}=e,o=function(n,e){if(null==n)return{};var t={};for(var r in n)if({}.hasOwnProperty.call(n,r)){if(e.indexOf(r)>=0)continue;t[r]=n[r]}return t}(e,so);const[a]=Tr(Object.assign({tagName:"a"},o)),i=Pe(n=>{a.onKeyDown(n),null==r||r(n)});return(s=o.href)&&"#"!==s.trim()&&"button"!==o.role?n.jsx("a",Object.assign({ref:t},o,{onKeyDown:r})):n.jsx("a",Object.assign({ref:t},o,a,{onKeyDown:i}));var s});lo.displayName="Anchor";const co=o.forwardRef(({bsPrefix:e,className:t,eventKey:r,disabled:o=!1,onClick:a,active:i,as:s=lo,...l},d)=>{const c=oo(e,"dropdown-item"),[p,u]=$r({key:r,href:l.href,disabled:o,onClick:a,active:i});return n.jsx(s,{...l,...p,ref:d,className:_e(t,c,u.isActive&&"active",o&&"disabled")})});co.displayName="DropdownItem";const po=o.forwardRef(({className:e,bsPrefix:t,as:r="span",...o},a)=>(t=oo(t,"dropdown-item-text"),n.jsx(r,{ref:a,className:_e(e,t),...o})));po.displayName="DropdownItemText";const uo="undefined"!=typeof global&&global.navigator&&"ReactNative"===global.navigator.product;var bo="undefined"!=typeof document||uo?e.useLayoutEffect:e.useEffect;const mo=n=>n&&"function"!=typeof n?e=>{n.current=e}:n;function fo(n,t){return e.useMemo(()=>function(n,e){const t=mo(n),r=mo(e);return n=>{t&&t(n),r&&r(n)}}(n,t),[n,t])}const go=o.createContext(null);go.displayName="InputGroupContext";const ho=o.createContext(null);function vo(n,t){if("production"===process.env.NODE_ENV)return n;return fo(e.useCallback(n=>{null!=n&&n.isReactComponent&&("production"!==process.env.NODE_ENV?Zr(!1,`${t} injected a ref to a provided \`as\` component that resolved to a component instance instead of a DOM element. Use \`React.forwardRef\` to provide the injected ref to the class component as a prop in order to pass it directly to a DOM element`):Zr(!1))},[t]),n)}function xo(n,e,t){let r=n?t?"bottom-start":"bottom-end":t?"bottom-end":"bottom-start";return"up"===e?r=n?t?"top-start":"top-end":t?"top-end":"top-start":"end"===e?r=n?t?"left-end":"right-end":t?"left-start":"right-start":"start"===e?r=n?t?"right-end":"left-end":t?"right-start":"left-start":"down-centered"===e?r="bottom":"up-centered"===e&&(r="top"),r}ho.displayName="NavbarContext";const wo=o.forwardRef(({bsPrefix:t,className:r,align:o,rootCloseEvent:a,flip:i=!0,show:s,renderOnMount:l,as:d="div",popperConfig:c,variant:p,...u},b)=>{let m=!1;const f=e.useContext(ho),g=oo(t,"dropdown-menu"),{align:h,drop:v,isRTL:x}=e.useContext(no);o=o||h;const w=e.useContext(go),y=[];if(o)if("object"==typeof o){const n=Object.keys(o);if("production"!==process.env.NODE_ENV&&dr(1===n.length,"There should only be 1 breakpoint when passing an object to `align`"),n.length){const e=n[0],t=o[e];m="start"===t,y.push(`${g}-${e}-${t}`)}}else"end"===o&&(m=!0);const k=xo(m,v,x),[E,{hasShown:_,popper:S,show:O,toggle:C}]=vr({flip:i,rootCloseEvent:a,show:s,usePopper:!f&&0===y.length,offset:[0,2],popperConfig:c,placement:k});if(E.ref=fo(vo(b,"DropdownMenu"),E.ref),bo(()=>{O&&(null==S||S.update())},[O]),!_&&!l&&!w)return null;"string"!=typeof d&&(E.show=O,E.close=()=>null==C?void 0:C(!1),E.align=o);let N=u.style;return null!=S&&S.placement&&(N={...u.style,...E.style},u["x-placement"]=S.placement),n.jsx(d,{...u,...E,style:N,...(y.length||f)&&{"data-bs-popper":"static"},className:_e(r,g,O&&"show",m&&`${g}-end`,p&&`${g}-${p}`,...y)})});wo.displayName="DropdownMenu";const yo=o.forwardRef(({as:e,bsPrefix:t,variant:r="primary",size:o,active:a=!1,disabled:i=!1,className:s,...l},d)=>{const c=oo(t,"btn"),[p,{tagName:u}]=Tr({tagName:e,disabled:i,...l}),b=u;return n.jsx(b,{...p,...l,ref:d,disabled:i,className:_e(s,c,a&&"active",r&&`${c}-${r}`,o&&`${c}-${o}`,l.href&&i&&"disabled")})});yo.displayName="Button";const ko=o.forwardRef(({bsPrefix:t,split:r,className:o,childBsPrefix:a,as:i=yo,...s},l)=>{const d=oo(t,"dropdown-toggle"),c=e.useContext(Re);void 0!==a&&(s.bsPrefix=a);const[p]=Mr();return p.ref=fo(p.ref,vo(l,"DropdownToggle")),n.jsx(i,{className:_e(o,d,r&&`${d}-split`,(null==c?void 0:c.show)&&"show"),...p,...s})});ko.displayName="DropdownToggle";const Eo=o.forwardRef((t,r)=>{const{bsPrefix:o,drop:a="down",show:i,className:s,align:l="start",onSelect:d,onToggle:c,focusFirstItemOnShow:p,as:u="div",navbar:b,autoClose:m=!0,...f}=Qr(t,{show:"onToggle"}),g=e.useContext(go),h=oo(o,"dropdown"),v=function(){const{dir:n}=e.useContext(eo);return"rtl"===n}(),x=Jr((n,e)=>{var t;var r;(null==(t=e.originalEvent)||null==(t=t.target)?void 0:t.classList.contains("dropdown-toggle"))&&"mousedown"===e.source||(e.originalEvent.currentTarget!==document||"keydown"===e.source&&"Escape"!==e.originalEvent.key||(e.source="rootClose"),r=e.source,(!1===m?"click"===r:"inside"===m?"rootClose"!==r:"outside"!==m||"select"!==r)&&(null==c||c(n,e)))}),w=xo("end"===l,a,v),y=e.useMemo(()=>({align:l,drop:a,isRTL:v}),[l,a,v]),k={down:h,"down-centered":`${h}-center`,up:"dropup","up-centered":"dropup-center dropup",end:"dropend",start:"dropstart"};return n.jsx(no.Provider,{value:y,children:n.jsx(Gr,{placement:w,show:i,onSelect:d,onToggle:x,focusFirstItemOnShow:p,itemSelector:`.${h}-item:not(.disabled):not(:disabled)`,children:g?f.children:n.jsx(u,{...f,ref:r,className:_e(s,i&&"show",k[a])})})})});Eo.displayName="Dropdown";var _o=Object.assign(Eo,{Toggle:ko,Menu:wo,Item:co,ItemText:po,Divider:ao,Header:io});a("@charset \"UTF-8\";\n/*!\n * Bootstrap v5.3.7 (https://getbootstrap.com/)\n * Copyright 2011-2025 The Bootstrap Authors\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n */\n:root,\n[data-bs-theme=light] {\n --bs-blue: #0d6efd;\n --bs-indigo: #6610f2;\n --bs-purple: #6f42c1;\n --bs-pink: #d63384;\n --bs-red: #dc3545;\n --bs-orange: #fd7e14;\n --bs-yellow: #ffc107;\n --bs-green: #198754;\n --bs-teal: #20c997;\n --bs-cyan: #0dcaf0;\n --bs-black: #000;\n --bs-white: #fff;\n --bs-gray: #6c757d;\n --bs-gray-dark: #343a40;\n --bs-gray-100: #f8f9fa;\n --bs-gray-200: #e9ecef;\n --bs-gray-300: #dee2e6;\n --bs-gray-400: #ced4da;\n --bs-gray-500: #adb5bd;\n --bs-gray-600: #6c757d;\n --bs-gray-700: #495057;\n --bs-gray-800: #343a40;\n --bs-gray-900: #212529;\n --bs-primary: #0d6efd;\n --bs-secondary: #6c757d;\n --bs-success: #198754;\n --bs-info: #0dcaf0;\n --bs-warning: #ffc107;\n --bs-danger: #dc3545;\n --bs-light: #f8f9fa;\n --bs-dark: #212529;\n --bs-primary-rgb: 13, 110, 253;\n --bs-secondary-rgb: 108, 117, 125;\n --bs-success-rgb: 25, 135, 84;\n --bs-info-rgb: 13, 202, 240;\n --bs-warning-rgb: 255, 193, 7;\n --bs-danger-rgb: 220, 53, 69;\n --bs-light-rgb: 248, 249, 250;\n --bs-dark-rgb: 33, 37, 41;\n --bs-primary-text-emphasis: #052c65;\n --bs-secondary-text-emphasis: #2b2f32;\n --bs-success-text-emphasis: #0a3622;\n --bs-info-text-emphasis: #055160;\n --bs-warning-text-emphasis: #664d03;\n --bs-danger-text-emphasis: #58151c;\n --bs-light-text-emphasis: #495057;\n --bs-dark-text-emphasis: #495057;\n --bs-primary-bg-subtle: #cfe2ff;\n --bs-secondary-bg-subtle: #e2e3e5;\n --bs-success-bg-subtle: #d1e7dd;\n --bs-info-bg-subtle: #cff4fc;\n --bs-warning-bg-subtle: #fff3cd;\n --bs-danger-bg-subtle: #f8d7da;\n --bs-light-bg-subtle: #fcfcfd;\n --bs-dark-bg-subtle: #ced4da;\n --bs-primary-border-subtle: #9ec5fe;\n --bs-secondary-border-subtle: #c4c8cb;\n --bs-success-border-subtle: #a3cfbb;\n --bs-info-border-subtle: #9eeaf9;\n --bs-warning-border-subtle: #ffe69c;\n --bs-danger-border-subtle: #f1aeb5;\n --bs-light-border-subtle: #e9ecef;\n --bs-dark-border-subtle: #adb5bd;\n --bs-white-rgb: 255, 255, 255;\n --bs-black-rgb: 0, 0, 0;\n --bs-font-sans-serif: system-ui, -apple-system, \"Segoe UI\", Roboto, \"Helvetica Neue\", \"Noto Sans\", \"Liberation Sans\", Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\n --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));\n --bs-body-font-family: var(--bs-font-sans-serif);\n --bs-body-font-size: 1rem;\n --bs-body-font-weight: 400;\n --bs-body-line-height: 1.5;\n --bs-body-color: #212529;\n --bs-body-color-rgb: 33, 37, 41;\n --bs-body-bg: #fff;\n --bs-body-bg-rgb: 255, 255, 255;\n --bs-emphasis-color: #000;\n --bs-emphasis-color-rgb: 0, 0, 0;\n --bs-secondary-color: rgba(33, 37, 41, 0.75);\n --bs-secondary-color-rgb: 33, 37, 41;\n --bs-secondary-bg: #e9ecef;\n --bs-secondary-bg-rgb: 233, 236, 239;\n --bs-tertiary-color: rgba(33, 37, 41, 0.5);\n --bs-tertiary-color-rgb: 33, 37, 41;\n --bs-tertiary-bg: #f8f9fa;\n --bs-tertiary-bg-rgb: 248, 249, 250;\n --bs-heading-color: inherit;\n --bs-link-color: #0d6efd;\n --bs-link-color-rgb: 13, 110, 253;\n --bs-link-decoration: underline;\n --bs-link-hover-color: #0a58ca;\n --bs-link-hover-color-rgb: 10, 88, 202;\n --bs-code-color: #d63384;\n --bs-highlight-color: #212529;\n --bs-highlight-bg: #fff3cd;\n --bs-border-width: 1px;\n --bs-border-style: solid;\n --bs-border-color: #dee2e6;\n --bs-border-color-translucent: rgba(0, 0, 0, 0.175);\n --bs-border-radius: 0.375rem;\n --bs-border-radius-sm: 0.25rem;\n --bs-border-radius-lg: 0.5rem;\n --bs-border-radius-xl: 1rem;\n --bs-border-radius-xxl: 2rem;\n --bs-border-radius-2xl: var(--bs-border-radius-xxl);\n --bs-border-radius-pill: 50rem;\n --bs-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);\n --bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);\n --bs-box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.175);\n --bs-box-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, 0.075);\n --bs-focus-ring-width: 0.25rem;\n --bs-focus-ring-opacity: 0.25;\n --bs-focus-ring-color: rgba(13, 110, 253, 0.25);\n --bs-form-valid-color: #198754;\n --bs-form-valid-border-color: #198754;\n --bs-form-invalid-color: #dc3545;\n --bs-form-invalid-border-color: #dc3545;\n}\n\n[data-bs-theme=dark] {\n color-scheme: dark;\n --bs-body-color: #dee2e6;\n --bs-body-color-rgb: 222, 226, 230;\n --bs-body-bg: #212529;\n --bs-body-bg-rgb: 33, 37, 41;\n --bs-emphasis-color: #fff;\n --bs-emphasis-color-rgb: 255, 255, 255;\n --bs-secondary-color: rgba(222, 226, 230, 0.75);\n --bs-secondary-color-rgb: 222, 226, 230;\n --bs-secondary-bg: #343a40;\n --bs-secondary-bg-rgb: 52, 58, 64;\n --bs-tertiary-color: rgba(222, 226, 230, 0.5);\n --bs-tertiary-color-rgb: 222, 226, 230;\n --bs-tertiary-bg: #2b3035;\n --bs-tertiary-bg-rgb: 43, 48, 53;\n --bs-primary-text-emphasis: #6ea8fe;\n --bs-secondary-text-emphasis: #a7acb1;\n --bs-success-text-emphasis: #75b798;\n --bs-info-text-emphasis: #6edff6;\n --bs-warning-text-emphasis: #ffda6a;\n --bs-danger-text-emphasis: #ea868f;\n --bs-light-text-emphasis: #f8f9fa;\n --bs-dark-text-emphasis: #dee2e6;\n --bs-primary-bg-subtle: #031633;\n --bs-secondary-bg-subtle: #161719;\n --bs-success-bg-subtle: #051b11;\n --bs-info-bg-subtle: #032830;\n --bs-warning-bg-subtle: #332701;\n --bs-danger-bg-subtle: #2c0b0e;\n --bs-light-bg-subtle: #343a40;\n --bs-dark-bg-subtle: #1a1d20;\n --bs-primary-border-subtle: #084298;\n --bs-secondary-border-subtle: #41464b;\n --bs-success-border-subtle: #0f5132;\n --bs-info-border-subtle: #087990;\n --bs-warning-border-subtle: #997404;\n --bs-danger-border-subtle: #842029;\n --bs-light-border-subtle: #495057;\n --bs-dark-border-subtle: #343a40;\n --bs-heading-color: inherit;\n --bs-link-color: #6ea8fe;\n --bs-link-hover-color: #8bb9fe;\n --bs-link-color-rgb: 110, 168, 254;\n --bs-link-hover-color-rgb: 139, 185, 254;\n --bs-code-color: #e685b5;\n --bs-highlight-color: #dee2e6;\n --bs-highlight-bg: #664d03;\n --bs-border-color: #495057;\n --bs-border-color-translucent: rgba(255, 255, 255, 0.15);\n --bs-form-valid-color: #75b798;\n --bs-form-valid-border-color: #75b798;\n --bs-form-invalid-color: #ea868f;\n --bs-form-invalid-border-color: #ea868f;\n}\n\n*,\n*::before,\n*::after {\n box-sizing: border-box;\n}\n\n@media (prefers-reduced-motion: no-preference) {\n :root {\n scroll-behavior: smooth;\n }\n}\n\nbody {\n margin: 0;\n font-family: var(--bs-body-font-family);\n font-size: var(--bs-body-font-size);\n font-weight: var(--bs-body-font-weight);\n line-height: var(--bs-body-line-height);\n color: var(--bs-body-color);\n text-align: var(--bs-body-text-align);\n background-color: var(--bs-body-bg);\n -webkit-text-size-adjust: 100%;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\n\nhr {\n margin: 1rem 0;\n color: inherit;\n border: 0;\n border-top: var(--bs-border-width) solid;\n opacity: 0.25;\n}\n\nh6, .h6, h5, .h5, h4, .h4, h3, .h3, h2, .h2, h1, .h1 {\n margin-top: 0;\n margin-bottom: 0.5rem;\n font-weight: 500;\n line-height: 1.2;\n color: var(--bs-heading-color);\n}\n\nh1, .h1 {\n font-size: calc(1.375rem + 1.5vw);\n}\n@media (min-width: 1200px) {\n h1, .h1 {\n font-size: 2.5rem;\n }\n}\n\nh2, .h2 {\n font-size: calc(1.325rem + 0.9vw);\n}\n@media (min-width: 1200px) {\n h2, .h2 {\n font-size: 2rem;\n }\n}\n\nh3, .h3 {\n font-size: calc(1.3rem + 0.6vw);\n}\n@media (min-width: 1200px) {\n h3, .h3 {\n font-size: 1.75rem;\n }\n}\n\nh4, .h4 {\n font-size: calc(1.275rem + 0.3vw);\n}\n@media (min-width: 1200px) {\n h4, .h4 {\n font-size: 1.5rem;\n }\n}\n\nh5, .h5 {\n font-size: 1.25rem;\n}\n\nh6, .h6 {\n font-size: 1rem;\n}\n\np {\n margin-top: 0;\n margin-bottom: 1rem;\n}\n\nabbr[title] {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n cursor: help;\n -webkit-text-decoration-skip-ink: none;\n text-decoration-skip-ink: none;\n}\n\naddress {\n margin-bottom: 1rem;\n font-style: normal;\n line-height: inherit;\n}\n\nol,\nul {\n padding-left: 2rem;\n}\n\nol,\nul,\ndl {\n margin-top: 0;\n margin-bottom: 1rem;\n}\n\nol ol,\nul ul,\nol ul,\nul ol {\n margin-bottom: 0;\n}\n\ndt {\n font-weight: 700;\n}\n\ndd {\n margin-bottom: 0.5rem;\n margin-left: 0;\n}\n\nblockquote {\n margin: 0 0 1rem;\n}\n\nb,\nstrong {\n font-weight: bolder;\n}\n\nsmall, .small {\n font-size: 0.875em;\n}\n\nmark, .mark {\n padding: 0.1875em;\n color: var(--bs-highlight-color);\n background-color: var(--bs-highlight-bg);\n}\n\nsub,\nsup {\n position: relative;\n font-size: 0.75em;\n line-height: 0;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\na {\n color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 1));\n text-decoration: underline;\n}\na:hover {\n --bs-link-color-rgb: var(--bs-link-hover-color-rgb);\n}\n\na:not([href]):not([class]), a:not([href]):not([class]):hover {\n color: inherit;\n text-decoration: none;\n}\n\npre,\ncode,\nkbd,\nsamp {\n font-family: var(--bs-font-monospace);\n font-size: 1em;\n}\n\npre {\n display: block;\n margin-top: 0;\n margin-bottom: 1rem;\n overflow: auto;\n font-size: 0.875em;\n}\npre code {\n font-size: inherit;\n color: inherit;\n word-break: normal;\n}\n\ncode {\n font-size: 0.875em;\n color: var(--bs-code-color);\n word-wrap: break-word;\n}\na > code {\n color: inherit;\n}\n\nkbd {\n padding: 0.1875rem 0.375rem;\n font-size: 0.875em;\n color: var(--bs-body-bg);\n background-color: var(--bs-body-color);\n border-radius: 0.25rem;\n}\nkbd kbd {\n padding: 0;\n font-size: 1em;\n}\n\nfigure {\n margin: 0 0 1rem;\n}\n\nimg,\nsvg {\n vertical-align: middle;\n}\n\ntable {\n caption-side: bottom;\n border-collapse: collapse;\n}\n\ncaption {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n color: var(--bs-secondary-color);\n text-align: left;\n}\n\nth {\n text-align: inherit;\n text-align: -webkit-match-parent;\n}\n\nthead,\ntbody,\ntfoot,\ntr,\ntd,\nth {\n border-color: inherit;\n border-style: solid;\n border-width: 0;\n}\n\nlabel {\n display: inline-block;\n}\n\nbutton {\n border-radius: 0;\n}\n\nbutton:focus:not(:focus-visible) {\n outline: 0;\n}\n\ninput,\nbutton,\nselect,\noptgroup,\ntextarea {\n margin: 0;\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\n\nbutton,\nselect {\n text-transform: none;\n}\n\n[role=button] {\n cursor: pointer;\n}\n\nselect {\n word-wrap: normal;\n}\nselect:disabled {\n opacity: 1;\n}\n\n[list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator {\n display: none !important;\n}\n\nbutton,\n[type=button],\n[type=reset],\n[type=submit] {\n -webkit-appearance: button;\n}\nbutton:not(:disabled),\n[type=button]:not(:disabled),\n[type=reset]:not(:disabled),\n[type=submit]:not(:disabled) {\n cursor: pointer;\n}\n\n::-moz-focus-inner {\n padding: 0;\n border-style: none;\n}\n\ntextarea {\n resize: vertical;\n}\n\nfieldset {\n min-width: 0;\n padding: 0;\n margin: 0;\n border: 0;\n}\n\nlegend {\n float: left;\n width: 100%;\n padding: 0;\n margin-bottom: 0.5rem;\n line-height: inherit;\n font-size: calc(1.275rem + 0.3vw);\n}\n@media (min-width: 1200px) {\n legend {\n font-size: 1.5rem;\n }\n}\nlegend + * {\n clear: left;\n}\n\n::-webkit-datetime-edit-fields-wrapper,\n::-webkit-datetime-edit-text,\n::-webkit-datetime-edit-minute,\n::-webkit-datetime-edit-hour-field,\n::-webkit-datetime-edit-day-field,\n::-webkit-datetime-edit-month-field,\n::-webkit-datetime-edit-year-field {\n padding: 0;\n}\n\n::-webkit-inner-spin-button {\n height: auto;\n}\n\n[type=search] {\n -webkit-appearance: textfield;\n outline-offset: -2px;\n}\n\n/* rtl:raw:\n[type=\"tel\"],\n[type=\"url\"],\n[type=\"email\"],\n[type=\"number\"] {\n direction: ltr;\n}\n*/\n::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n::-webkit-color-swatch-wrapper {\n padding: 0;\n}\n\n::-webkit-file-upload-button {\n font: inherit;\n -webkit-appearance: button;\n}\n\n::file-selector-button {\n font: inherit;\n -webkit-appearance: button;\n}\n\noutput {\n display: inline-block;\n}\n\niframe {\n border: 0;\n}\n\nsummary {\n display: list-item;\n cursor: pointer;\n}\n\nprogress {\n vertical-align: baseline;\n}\n\n[hidden] {\n display: none !important;\n}\n\n.lead {\n font-size: 1.25rem;\n font-weight: 300;\n}\n\n.display-1 {\n font-weight: 300;\n line-height: 1.2;\n font-size: calc(1.625rem + 4.5vw);\n}\n@media (min-width: 1200px) {\n .display-1 {\n font-size: 5rem;\n }\n}\n\n.display-2 {\n font-weight: 300;\n line-height: 1.2;\n font-size: calc(1.575rem + 3.9vw);\n}\n@media (min-width: 1200px) {\n .display-2 {\n font-size: 4.5rem;\n }\n}\n\n.display-3 {\n font-weight: 300;\n line-height: 1.2;\n font-size: calc(1.525rem + 3.3vw);\n}\n@media (min-width: 1200px) {\n .display-3 {\n font-size: 4rem;\n }\n}\n\n.display-4 {\n font-weight: 300;\n line-height: 1.2;\n font-size: calc(1.475rem + 2.7vw);\n}\n@media (min-width: 1200px) {\n .display-4 {\n font-size: 3.5rem;\n }\n}\n\n.display-5 {\n font-weight: 300;\n line-height: 1.2;\n font-size: calc(1.425rem + 2.1vw);\n}\n@media (min-width: 1200px) {\n .display-5 {\n font-size: 3rem;\n }\n}\n\n.display-6 {\n font-weight: 300;\n line-height: 1.2;\n font-size: calc(1.375rem + 1.5vw);\n}\n@media (min-width: 1200px) {\n .display-6 {\n font-size: 2.5rem;\n }\n}\n\n.list-unstyled {\n padding-left: 0;\n list-style: none;\n}\n\n.list-inline {\n padding-left: 0;\n list-style: none;\n}\n\n.list-inline-item {\n display: inline-block;\n}\n.list-inline-item:not(:last-child) {\n margin-right: 0.5rem;\n}\n\n.initialism {\n font-size: 0.875em;\n text-transform: uppercase;\n}\n\n.blockquote {\n margin-bottom: 1rem;\n font-size: 1.25rem;\n}\n.blockquote > :last-child {\n margin-bottom: 0;\n}\n\n.blockquote-footer {\n margin-top: -1rem;\n margin-bottom: 1rem;\n font-size: 0.875em;\n color: #6c757d;\n}\n.blockquote-footer::before {\n content: \"— \";\n}\n\n.img-fluid {\n max-width: 100%;\n height: auto;\n}\n\n.img-thumbnail {\n padding: 0.25rem;\n background-color: var(--bs-body-bg);\n border: var(--bs-border-width) solid var(--bs-border-color);\n border-radius: var(--bs-border-radius);\n max-width: 100%;\n height: auto;\n}\n\n.figure {\n display: inline-block;\n}\n\n.figure-img {\n margin-bottom: 0.5rem;\n line-height: 1;\n}\n\n.figure-caption {\n font-size: 0.875em;\n color: var(--bs-secondary-color);\n}\n\n.container,\n.container-fluid,\n.container-xxl,\n.container-xl,\n.container-lg,\n.container-md,\n.container-sm {\n --bs-gutter-x: 1.5rem;\n --bs-gutter-y: 0;\n width: 100%;\n padding-right: calc(var(--bs-gutter-x) * 0.5);\n padding-left: calc(var(--bs-gutter-x) * 0.5);\n margin-right: auto;\n margin-left: auto;\n}\n\n@media (min-width: 576px) {\n .container-sm, .container {\n max-width: 540px;\n }\n}\n@media (min-width: 768px) {\n .container-md, .container-sm, .container {\n max-width: 720px;\n }\n}\n@media (min-width: 992px) {\n .container-lg, .container-md, .container-sm, .container {\n max-width: 960px;\n }\n}\n@media (min-width: 1200px) {\n .container-xl, .container-lg, .container-md, .container-sm, .container {\n max-width: 1140px;\n }\n}\n@media (min-width: 1400px) {\n .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container {\n max-width: 1320px;\n }\n}\n:root {\n --bs-breakpoint-xs: 0;\n --bs-breakpoint-sm: 576px;\n --bs-breakpoint-md: 768px;\n --bs-breakpoint-lg: 992px;\n --bs-breakpoint-xl: 1200px;\n --bs-breakpoint-xxl: 1400px;\n}\n\n.row {\n --bs-gutter-x: 1.5rem;\n --bs-gutter-y: 0;\n display: flex;\n flex-wrap: wrap;\n margin-top: calc(-1 * var(--bs-gutter-y));\n margin-right: calc(-0.5 * var(--bs-gutter-x));\n margin-left: calc(-0.5 * var(--bs-gutter-x));\n}\n.row > * {\n flex-shrink: 0;\n width: 100%;\n max-width: 100%;\n padding-right: calc(var(--bs-gutter-x) * 0.5);\n padding-left: calc(var(--bs-gutter-x) * 0.5);\n margin-top: var(--bs-gutter-y);\n}\n\n.col {\n flex: 1 0 0;\n}\n\n.row-cols-auto > * {\n flex: 0 0 auto;\n width: auto;\n}\n\n.row-cols-1 > * {\n flex: 0 0 auto;\n width: 100%;\n}\n\n.row-cols-2 > * {\n flex: 0 0 auto;\n width: 50%;\n}\n\n.row-cols-3 > * {\n flex: 0 0 auto;\n width: 33.33333333%;\n}\n\n.row-cols-4 > * {\n flex: 0 0 auto;\n width: 25%;\n}\n\n.row-cols-5 > * {\n flex: 0 0 auto;\n width: 20%;\n}\n\n.row-cols-6 > * {\n flex: 0 0 auto;\n width: 16.66666667%;\n}\n\n.col-auto {\n flex: 0 0 auto;\n width: auto;\n}\n\n.col-1 {\n flex: 0 0 auto;\n width: 8.33333333%;\n}\n\n.col-2 {\n flex: 0 0 auto;\n width: 16.66666667%;\n}\n\n.col-3 {\n flex: 0 0 auto;\n width: 25%;\n}\n\n.col-4 {\n flex: 0 0 auto;\n width: 33.33333333%;\n}\n\n.col-5 {\n flex: 0 0 auto;\n width: 41.66666667%;\n}\n\n.col-6 {\n flex: 0 0 auto;\n width: 50%;\n}\n\n.col-7 {\n flex: 0 0 auto;\n width: 58.33333333%;\n}\n\n.col-8 {\n flex: 0 0 auto;\n width: 66.66666667%;\n}\n\n.col-9 {\n flex: 0 0 auto;\n width: 75%;\n}\n\n.col-10 {\n flex: 0 0 auto;\n width: 83.33333333%;\n}\n\n.col-11 {\n flex: 0 0 auto;\n width: 91.66666667%;\n}\n\n.col-12 {\n flex: 0 0 auto;\n width: 100%;\n}\n\n.offset-1 {\n margin-left: 8.33333333%;\n}\n\n.offset-2 {\n margin-left: 16.66666667%;\n}\n\n.offset-3 {\n margin-left: 25%;\n}\n\n.offset-4 {\n margin-left: 33.33333333%;\n}\n\n.offset-5 {\n margin-left: 41.66666667%;\n}\n\n.offset-6 {\n margin-left: 50%;\n}\n\n.offset-7 {\n margin-left: 58.33333333%;\n}\n\n.offset-8 {\n margin-left: 66.66666667%;\n}\n\n.offset-9 {\n margin-left: 75%;\n}\n\n.offset-10 {\n margin-left: 83.33333333%;\n}\n\n.offset-11 {\n margin-left: 91.66666667%;\n}\n\n.g-0,\n.gx-0 {\n --bs-gutter-x: 0;\n}\n\n.g-0,\n.gy-0 {\n --bs-gutter-y: 0;\n}\n\n.g-1,\n.gx-1 {\n --bs-gutter-x: 0.25rem;\n}\n\n.g-1,\n.gy-1 {\n --bs-gutter-y: 0.25rem;\n}\n\n.g-2,\n.gx-2 {\n --bs-gutter-x: 0.5rem;\n}\n\n.g-2,\n.gy-2 {\n --bs-gutter-y: 0.5rem;\n}\n\n.g-3,\n.gx-3 {\n --bs-gutter-x: 1rem;\n}\n\n.g-3,\n.gy-3 {\n --bs-gutter-y: 1rem;\n}\n\n.g-4,\n.gx-4 {\n --bs-gutter-x: 1.5rem;\n}\n\n.g-4,\n.gy-4 {\n --bs-gutter-y: 1.5rem;\n}\n\n.g-5,\n.gx-5 {\n --bs-gutter-x: 3rem;\n}\n\n.g-5,\n.gy-5 {\n --bs-gutter-y: 3rem;\n}\n\n@media (min-width: 576px) {\n .col-sm {\n flex: 1 0 0;\n }\n .row-cols-sm-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-sm-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-sm-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-sm-3 > * {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .row-cols-sm-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-sm-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-sm-6 > * {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-sm-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .col-sm-1 {\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-sm-2 {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-sm-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .col-sm-4 {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-sm-5 {\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-sm-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .col-sm-7 {\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-sm-8 {\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-sm-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .col-sm-10 {\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-sm-11 {\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-sm-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-sm-0 {\n margin-left: 0;\n }\n .offset-sm-1 {\n margin-left: 8.33333333%;\n }\n .offset-sm-2 {\n margin-left: 16.66666667%;\n }\n .offset-sm-3 {\n margin-left: 25%;\n }\n .offset-sm-4 {\n margin-left: 33.33333333%;\n }\n .offset-sm-5 {\n margin-left: 41.66666667%;\n }\n .offset-sm-6 {\n margin-left: 50%;\n }\n .offset-sm-7 {\n margin-left: 58.33333333%;\n }\n .offset-sm-8 {\n margin-left: 66.66666667%;\n }\n .offset-sm-9 {\n margin-left: 75%;\n }\n .offset-sm-10 {\n margin-left: 83.33333333%;\n }\n .offset-sm-11 {\n margin-left: 91.66666667%;\n }\n .g-sm-0,\n .gx-sm-0 {\n --bs-gutter-x: 0;\n }\n .g-sm-0,\n .gy-sm-0 {\n --bs-gutter-y: 0;\n }\n .g-sm-1,\n .gx-sm-1 {\n --bs-gutter-x: 0.25rem;\n }\n .g-sm-1,\n .gy-sm-1 {\n --bs-gutter-y: 0.25rem;\n }\n .g-sm-2,\n .gx-sm-2 {\n --bs-gutter-x: 0.5rem;\n }\n .g-sm-2,\n .gy-sm-2 {\n --bs-gutter-y: 0.5rem;\n }\n .g-sm-3,\n .gx-sm-3 {\n --bs-gutter-x: 1rem;\n }\n .g-sm-3,\n .gy-sm-3 {\n --bs-gutter-y: 1rem;\n }\n .g-sm-4,\n .gx-sm-4 {\n --bs-gutter-x: 1.5rem;\n }\n .g-sm-4,\n .gy-sm-4 {\n --bs-gutter-y: 1.5rem;\n }\n .g-sm-5,\n .gx-sm-5 {\n --bs-gutter-x: 3rem;\n }\n .g-sm-5,\n .gy-sm-5 {\n --bs-gutter-y: 3rem;\n }\n}\n@media (min-width: 768px) {\n .col-md {\n flex: 1 0 0;\n }\n .row-cols-md-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-md-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-md-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-md-3 > * {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .row-cols-md-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-md-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-md-6 > * {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-md-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .col-md-1 {\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-md-2 {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-md-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .col-md-4 {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-md-5 {\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-md-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .col-md-7 {\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-md-8 {\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-md-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .col-md-10 {\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-md-11 {\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-md-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-md-0 {\n margin-left: 0;\n }\n .offset-md-1 {\n margin-left: 8.33333333%;\n }\n .offset-md-2 {\n margin-left: 16.66666667%;\n }\n .offset-md-3 {\n margin-left: 25%;\n }\n .offset-md-4 {\n margin-left: 33.33333333%;\n }\n .offset-md-5 {\n margin-left: 41.66666667%;\n }\n .offset-md-6 {\n margin-left: 50%;\n }\n .offset-md-7 {\n margin-left: 58.33333333%;\n }\n .offset-md-8 {\n margin-left: 66.66666667%;\n }\n .offset-md-9 {\n margin-left: 75%;\n }\n .offset-md-10 {\n margin-left: 83.33333333%;\n }\n .offset-md-11 {\n margin-left: 91.66666667%;\n }\n .g-md-0,\n .gx-md-0 {\n --bs-gutter-x: 0;\n }\n .g-md-0,\n .gy-md-0 {\n --bs-gutter-y: 0;\n }\n .g-md-1,\n .gx-md-1 {\n --bs-gutter-x: 0.25rem;\n }\n .g-md-1,\n .gy-md-1 {\n --bs-gutter-y: 0.25rem;\n }\n .g-md-2,\n .gx-md-2 {\n --bs-gutter-x: 0.5rem;\n }\n .g-md-2,\n .gy-md-2 {\n --bs-gutter-y: 0.5rem;\n }\n .g-md-3,\n .gx-md-3 {\n --bs-gutter-x: 1rem;\n }\n .g-md-3,\n .gy-md-3 {\n --bs-gutter-y: 1rem;\n }\n .g-md-4,\n .gx-md-4 {\n --bs-gutter-x: 1.5rem;\n }\n .g-md-4,\n .gy-md-4 {\n --bs-gutter-y: 1.5rem;\n }\n .g-md-5,\n .gx-md-5 {\n --bs-gutter-x: 3rem;\n }\n .g-md-5,\n .gy-md-5 {\n --bs-gutter-y: 3rem;\n }\n}\n@media (min-width: 992px) {\n .col-lg {\n flex: 1 0 0;\n }\n .row-cols-lg-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-lg-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-lg-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-lg-3 > * {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .row-cols-lg-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-lg-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-lg-6 > * {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-lg-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .col-lg-1 {\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-lg-2 {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-lg-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .col-lg-4 {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-lg-5 {\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-lg-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .col-lg-7 {\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-lg-8 {\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-lg-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .col-lg-10 {\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-lg-11 {\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-lg-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-lg-0 {\n margin-left: 0;\n }\n .offset-lg-1 {\n margin-left: 8.33333333%;\n }\n .offset-lg-2 {\n margin-left: 16.66666667%;\n }\n .offset-lg-3 {\n margin-left: 25%;\n }\n .offset-lg-4 {\n margin-left: 33.33333333%;\n }\n .offset-lg-5 {\n margin-left: 41.66666667%;\n }\n .offset-lg-6 {\n margin-left: 50%;\n }\n .offset-lg-7 {\n margin-left: 58.33333333%;\n }\n .offset-lg-8 {\n margin-left: 66.66666667%;\n }\n .offset-lg-9 {\n margin-left: 75%;\n }\n .offset-lg-10 {\n margin-left: 83.33333333%;\n }\n .offset-lg-11 {\n margin-left: 91.66666667%;\n }\n .g-lg-0,\n .gx-lg-0 {\n --bs-gutter-x: 0;\n }\n .g-lg-0,\n .gy-lg-0 {\n --bs-gutter-y: 0;\n }\n .g-lg-1,\n .gx-lg-1 {\n --bs-gutter-x: 0.25rem;\n }\n .g-lg-1,\n .gy-lg-1 {\n --bs-gutter-y: 0.25rem;\n }\n .g-lg-2,\n .gx-lg-2 {\n --bs-gutter-x: 0.5rem;\n }\n .g-lg-2,\n .gy-lg-2 {\n --bs-gutter-y: 0.5rem;\n }\n .g-lg-3,\n .gx-lg-3 {\n --bs-gutter-x: 1rem;\n }\n .g-lg-3,\n .gy-lg-3 {\n --bs-gutter-y: 1rem;\n }\n .g-lg-4,\n .gx-lg-4 {\n --bs-gutter-x: 1.5rem;\n }\n .g-lg-4,\n .gy-lg-4 {\n --bs-gutter-y: 1.5rem;\n }\n .g-lg-5,\n .gx-lg-5 {\n --bs-gutter-x: 3rem;\n }\n .g-lg-5,\n .gy-lg-5 {\n --bs-gutter-y: 3rem;\n }\n}\n@media (min-width: 1200px) {\n .col-xl {\n flex: 1 0 0;\n }\n .row-cols-xl-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-xl-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-xl-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-xl-3 > * {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .row-cols-xl-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-xl-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-xl-6 > * {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-xl-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .col-xl-1 {\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-xl-2 {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-xl-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .col-xl-4 {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-xl-5 {\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-xl-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .col-xl-7 {\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-xl-8 {\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-xl-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .col-xl-10 {\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-xl-11 {\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-xl-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-xl-0 {\n margin-left: 0;\n }\n .offset-xl-1 {\n margin-left: 8.33333333%;\n }\n .offset-xl-2 {\n margin-left: 16.66666667%;\n }\n .offset-xl-3 {\n margin-left: 25%;\n }\n .offset-xl-4 {\n margin-left: 33.33333333%;\n }\n .offset-xl-5 {\n margin-left: 41.66666667%;\n }\n .offset-xl-6 {\n margin-left: 50%;\n }\n .offset-xl-7 {\n margin-left: 58.33333333%;\n }\n .offset-xl-8 {\n margin-left: 66.66666667%;\n }\n .offset-xl-9 {\n margin-left: 75%;\n }\n .offset-xl-10 {\n margin-left: 83.33333333%;\n }\n .offset-xl-11 {\n margin-left: 91.66666667%;\n }\n .g-xl-0,\n .gx-xl-0 {\n --bs-gutter-x: 0;\n }\n .g-xl-0,\n .gy-xl-0 {\n --bs-gutter-y: 0;\n }\n .g-xl-1,\n .gx-xl-1 {\n --bs-gutter-x: 0.25rem;\n }\n .g-xl-1,\n .gy-xl-1 {\n --bs-gutter-y: 0.25rem;\n }\n .g-xl-2,\n .gx-xl-2 {\n --bs-gutter-x: 0.5rem;\n }\n .g-xl-2,\n .gy-xl-2 {\n --bs-gutter-y: 0.5rem;\n }\n .g-xl-3,\n .gx-xl-3 {\n --bs-gutter-x: 1rem;\n }\n .g-xl-3,\n .gy-xl-3 {\n --bs-gutter-y: 1rem;\n }\n .g-xl-4,\n .gx-xl-4 {\n --bs-gutter-x: 1.5rem;\n }\n .g-xl-4,\n .gy-xl-4 {\n --bs-gutter-y: 1.5rem;\n }\n .g-xl-5,\n .gx-xl-5 {\n --bs-gutter-x: 3rem;\n }\n .g-xl-5,\n .gy-xl-5 {\n --bs-gutter-y: 3rem;\n }\n}\n@media (min-width: 1400px) {\n .col-xxl {\n flex: 1 0 0;\n }\n .row-cols-xxl-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-xxl-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-xxl-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-xxl-3 > * {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .row-cols-xxl-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-xxl-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-xxl-6 > * {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-xxl-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .col-xxl-1 {\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-xxl-2 {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-xxl-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .col-xxl-4 {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-xxl-5 {\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-xxl-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .col-xxl-7 {\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-xxl-8 {\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-xxl-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .col-xxl-10 {\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-xxl-11 {\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-xxl-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-xxl-0 {\n margin-left: 0;\n }\n .offset-xxl-1 {\n margin-left: 8.33333333%;\n }\n .offset-xxl-2 {\n margin-left: 16.66666667%;\n }\n .offset-xxl-3 {\n margin-left: 25%;\n }\n .offset-xxl-4 {\n margin-left: 33.33333333%;\n }\n .offset-xxl-5 {\n margin-left: 41.66666667%;\n }\n .offset-xxl-6 {\n margin-left: 50%;\n }\n .offset-xxl-7 {\n margin-left: 58.33333333%;\n }\n .offset-xxl-8 {\n margin-left: 66.66666667%;\n }\n .offset-xxl-9 {\n margin-left: 75%;\n }\n .offset-xxl-10 {\n margin-left: 83.33333333%;\n }\n .offset-xxl-11 {\n margin-left: 91.66666667%;\n }\n .g-xxl-0,\n .gx-xxl-0 {\n --bs-gutter-x: 0;\n }\n .g-xxl-0,\n .gy-xxl-0 {\n --bs-gutter-y: 0;\n }\n .g-xxl-1,\n .gx-xxl-1 {\n --bs-gutter-x: 0.25rem;\n }\n .g-xxl-1,\n .gy-xxl-1 {\n --bs-gutter-y: 0.25rem;\n }\n .g-xxl-2,\n .gx-xxl-2 {\n --bs-gutter-x: 0.5rem;\n }\n .g-xxl-2,\n .gy-xxl-2 {\n --bs-gutter-y: 0.5rem;\n }\n .g-xxl-3,\n .gx-xxl-3 {\n --bs-gutter-x: 1rem;\n }\n .g-xxl-3,\n .gy-xxl-3 {\n --bs-gutter-y: 1rem;\n }\n .g-xxl-4,\n .gx-xxl-4 {\n --bs-gutter-x: 1.5rem;\n }\n .g-xxl-4,\n .gy-xxl-4 {\n --bs-gutter-y: 1.5rem;\n }\n .g-xxl-5,\n .gx-xxl-5 {\n --bs-gutter-x: 3rem;\n }\n .g-xxl-5,\n .gy-xxl-5 {\n --bs-gutter-y: 3rem;\n }\n}\n.table {\n --bs-table-color-type: initial;\n --bs-table-bg-type: initial;\n --bs-table-color-state: initial;\n --bs-table-bg-state: initial;\n --bs-table-color: var(--bs-emphasis-color);\n --bs-table-bg: var(--bs-body-bg);\n --bs-table-border-color: var(--bs-border-color);\n --bs-table-accent-bg: transparent;\n --bs-table-striped-color: var(--bs-emphasis-color);\n --bs-table-striped-bg: rgba(var(--bs-emphasis-color-rgb), 0.05);\n --bs-table-active-color: var(--bs-emphasis-color);\n --bs-table-active-bg: rgba(var(--bs-emphasis-color-rgb), 0.1);\n --bs-table-hover-color: var(--bs-emphasis-color);\n --bs-table-hover-bg: rgba(var(--bs-emphasis-color-rgb), 0.075);\n width: 100%;\n margin-bottom: 1rem;\n vertical-align: top;\n border-color: var(--bs-table-border-color);\n}\n.table > :not(caption) > * > * {\n padding: 0.5rem 0.5rem;\n color: var(--bs-table-color-state, var(--bs-table-color-type, var(--bs-table-color)));\n background-color: var(--bs-table-bg);\n border-bottom-width: var(--bs-border-width);\n box-shadow: inset 0 0 0 9999px var(--bs-table-bg-state, var(--bs-table-bg-type, var(--bs-table-accent-bg)));\n}\n.table > tbody {\n vertical-align: inherit;\n}\n.table > thead {\n vertical-align: bottom;\n}\n\n.table-group-divider {\n border-top: calc(var(--bs-border-width) * 2) solid currentcolor;\n}\n\n.caption-top {\n caption-side: top;\n}\n\n.table-sm > :not(caption) > * > * {\n padding: 0.25rem 0.25rem;\n}\n\n.table-bordered > :not(caption) > * {\n border-width: var(--bs-border-width) 0;\n}\n.table-bordered > :not(caption) > * > * {\n border-width: 0 var(--bs-border-width);\n}\n\n.table-borderless > :not(caption) > * > * {\n border-bottom-width: 0;\n}\n.table-borderless > :not(:first-child) {\n border-top-width: 0;\n}\n\n.table-striped > tbody > tr:nth-of-type(odd) > * {\n --bs-table-color-type: var(--bs-table-striped-color);\n --bs-table-bg-type: var(--bs-table-striped-bg);\n}\n\n.table-striped-columns > :not(caption) > tr > :nth-child(even) {\n --bs-table-color-type: var(--bs-table-striped-color);\n --bs-table-bg-type: var(--bs-table-striped-bg);\n}\n\n.table-active {\n --bs-table-color-state: var(--bs-table-active-color);\n --bs-table-bg-state: var(--bs-table-active-bg);\n}\n\n.table-hover > tbody > tr:hover > * {\n --bs-table-color-state: var(--bs-table-hover-color);\n --bs-table-bg-state: var(--bs-table-hover-bg);\n}\n\n.table-primary {\n --bs-table-color: #000;\n --bs-table-bg: #cfe2ff;\n --bs-table-border-color: #a6b5cc;\n --bs-table-striped-bg: #c5d7f2;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #bacbe6;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #bfd1ec;\n --bs-table-hover-color: #000;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n\n.table-secondary {\n --bs-table-color: #000;\n --bs-table-bg: #e2e3e5;\n --bs-table-border-color: #b5b6b7;\n --bs-table-striped-bg: #d7d8da;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #cbccce;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #d1d2d4;\n --bs-table-hover-color: #000;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n\n.table-success {\n --bs-table-color: #000;\n --bs-table-bg: #d1e7dd;\n --bs-table-border-color: #a7b9b1;\n --bs-table-striped-bg: #c7dbd2;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #bcd0c7;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #c1d6cc;\n --bs-table-hover-color: #000;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n\n.table-info {\n --bs-table-color: #000;\n --bs-table-bg: #cff4fc;\n --bs-table-border-color: #a6c3ca;\n --bs-table-striped-bg: #c5e8ef;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #badce3;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #bfe2e9;\n --bs-table-hover-color: #000;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n\n.table-warning {\n --bs-table-color: #000;\n --bs-table-bg: #fff3cd;\n --bs-table-border-color: #ccc2a4;\n --bs-table-striped-bg: #f2e7c3;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #e6dbb9;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #ece1be;\n --bs-table-hover-color: #000;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n\n.table-danger {\n --bs-table-color: #000;\n --bs-table-bg: #f8d7da;\n --bs-table-border-color: #c6acae;\n --bs-table-striped-bg: #eccccf;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #dfc2c4;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #e5c7ca;\n --bs-table-hover-color: #000;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n\n.table-light {\n --bs-table-color: #000;\n --bs-table-bg: #f8f9fa;\n --bs-table-border-color: #c6c7c8;\n --bs-table-striped-bg: #ecedee;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #dfe0e1;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #e5e6e7;\n --bs-table-hover-color: #000;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n\n.table-dark {\n --bs-table-color: #fff;\n --bs-table-bg: #212529;\n --bs-table-border-color: #4d5154;\n --bs-table-striped-bg: #2c3034;\n --bs-table-striped-color: #fff;\n --bs-table-active-bg: #373b3e;\n --bs-table-active-color: #fff;\n --bs-table-hover-bg: #323539;\n --bs-table-hover-color: #fff;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n\n.table-responsive {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n}\n\n@media (max-width: 575.98px) {\n .table-responsive-sm {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n}\n@media (max-width: 767.98px) {\n .table-responsive-md {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n}\n@media (max-width: 991.98px) {\n .table-responsive-lg {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n}\n@media (max-width: 1199.98px) {\n .table-responsive-xl {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n}\n@media (max-width: 1399.98px) {\n .table-responsive-xxl {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n}\n.form-label {\n margin-bottom: 0.5rem;\n}\n\n.col-form-label {\n padding-top: calc(0.375rem + var(--bs-border-width));\n padding-bottom: calc(0.375rem + var(--bs-border-width));\n margin-bottom: 0;\n font-size: inherit;\n line-height: 1.5;\n}\n\n.col-form-label-lg {\n padding-top: calc(0.5rem + var(--bs-border-width));\n padding-bottom: calc(0.5rem + var(--bs-border-width));\n font-size: 1.25rem;\n}\n\n.col-form-label-sm {\n padding-top: calc(0.25rem + var(--bs-border-width));\n padding-bottom: calc(0.25rem + var(--bs-border-width));\n font-size: 0.875rem;\n}\n\n.form-text {\n margin-top: 0.25rem;\n font-size: 0.875em;\n color: var(--bs-secondary-color);\n}\n\n.form-control {\n display: block;\n width: 100%;\n padding: 0.375rem 0.75rem;\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5;\n color: var(--bs-body-color);\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n background-color: var(--bs-body-bg);\n background-clip: padding-box;\n border: var(--bs-border-width) solid var(--bs-border-color);\n border-radius: var(--bs-border-radius);\n transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-control {\n transition: none;\n }\n}\n.form-control[type=file] {\n overflow: hidden;\n}\n.form-control[type=file]:not(:disabled):not([readonly]) {\n cursor: pointer;\n}\n.form-control:focus {\n color: var(--bs-body-color);\n background-color: var(--bs-body-bg);\n border-color: #86b7fe;\n outline: 0;\n box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n}\n.form-control::-webkit-date-and-time-value {\n min-width: 85px;\n height: 1.5em;\n margin: 0;\n}\n.form-control::-webkit-datetime-edit {\n display: block;\n padding: 0;\n}\n.form-control::placeholder {\n color: var(--bs-secondary-color);\n opacity: 1;\n}\n.form-control:disabled {\n background-color: var(--bs-secondary-bg);\n opacity: 1;\n}\n.form-control::-webkit-file-upload-button {\n padding: 0.375rem 0.75rem;\n margin: -0.375rem -0.75rem;\n -webkit-margin-end: 0.75rem;\n margin-inline-end: 0.75rem;\n color: var(--bs-body-color);\n background-color: var(--bs-tertiary-bg);\n pointer-events: none;\n border-color: inherit;\n border-style: solid;\n border-width: 0;\n border-inline-end-width: var(--bs-border-width);\n border-radius: 0;\n -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n.form-control::file-selector-button {\n padding: 0.375rem 0.75rem;\n margin: -0.375rem -0.75rem;\n -webkit-margin-end: 0.75rem;\n margin-inline-end: 0.75rem;\n color: var(--bs-body-color);\n background-color: var(--bs-tertiary-bg);\n pointer-events: none;\n border-color: inherit;\n border-style: solid;\n border-width: 0;\n border-inline-end-width: var(--bs-border-width);\n border-radius: 0;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-control::-webkit-file-upload-button {\n -webkit-transition: none;\n transition: none;\n }\n .form-control::file-selector-button {\n transition: none;\n }\n}\n.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button {\n background-color: var(--bs-secondary-bg);\n}\n.form-control:hover:not(:disabled):not([readonly])::file-selector-button {\n background-color: var(--bs-secondary-bg);\n}\n\n.form-control-plaintext {\n display: block;\n width: 100%;\n padding: 0.375rem 0;\n margin-bottom: 0;\n line-height: 1.5;\n color: var(--bs-body-color);\n background-color: transparent;\n border: solid transparent;\n border-width: var(--bs-border-width) 0;\n}\n.form-control-plaintext:focus {\n outline: 0;\n}\n.form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {\n padding-right: 0;\n padding-left: 0;\n}\n\n.form-control-sm {\n min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));\n padding: 0.25rem 0.5rem;\n font-size: 0.875rem;\n border-radius: var(--bs-border-radius-sm);\n}\n.form-control-sm::-webkit-file-upload-button {\n padding: 0.25rem 0.5rem;\n margin: -0.25rem -0.5rem;\n -webkit-margin-end: 0.5rem;\n margin-inline-end: 0.5rem;\n}\n.form-control-sm::file-selector-button {\n padding: 0.25rem 0.5rem;\n margin: -0.25rem -0.5rem;\n -webkit-margin-end: 0.5rem;\n margin-inline-end: 0.5rem;\n}\n\n.form-control-lg {\n min-height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));\n padding: 0.5rem 1rem;\n font-size: 1.25rem;\n border-radius: var(--bs-border-radius-lg);\n}\n.form-control-lg::-webkit-file-upload-button {\n padding: 0.5rem 1rem;\n margin: -0.5rem -1rem;\n -webkit-margin-end: 1rem;\n margin-inline-end: 1rem;\n}\n.form-control-lg::file-selector-button {\n padding: 0.5rem 1rem;\n margin: -0.5rem -1rem;\n -webkit-margin-end: 1rem;\n margin-inline-end: 1rem;\n}\n\ntextarea.form-control {\n min-height: calc(1.5em + 0.75rem + calc(var(--bs-border-width) * 2));\n}\ntextarea.form-control-sm {\n min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));\n}\ntextarea.form-control-lg {\n min-height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));\n}\n\n.form-control-color {\n width: 3rem;\n height: calc(1.5em + 0.75rem + calc(var(--bs-border-width) * 2));\n padding: 0.375rem;\n}\n.form-control-color:not(:disabled):not([readonly]) {\n cursor: pointer;\n}\n.form-control-color::-moz-color-swatch {\n border: 0 !important;\n border-radius: var(--bs-border-radius);\n}\n.form-control-color::-webkit-color-swatch {\n border: 0 !important;\n border-radius: var(--bs-border-radius);\n}\n.form-control-color.form-control-sm {\n height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));\n}\n.form-control-color.form-control-lg {\n height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));\n}\n\n.form-select {\n --bs-form-select-bg-img: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e\");\n display: block;\n width: 100%;\n padding: 0.375rem 2.25rem 0.375rem 0.75rem;\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5;\n color: var(--bs-body-color);\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n background-color: var(--bs-body-bg);\n background-image: var(--bs-form-select-bg-img), var(--bs-form-select-bg-icon, none);\n background-repeat: no-repeat;\n background-position: right 0.75rem center;\n background-size: 16px 12px;\n border: var(--bs-border-width) solid var(--bs-border-color);\n border-radius: var(--bs-border-radius);\n transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-select {\n transition: none;\n }\n}\n.form-select:focus {\n border-color: #86b7fe;\n outline: 0;\n box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n}\n.form-select[multiple], .form-select[size]:not([size=\"1\"]) {\n padding-right: 0.75rem;\n background-image: none;\n}\n.form-select:disabled {\n background-color: var(--bs-secondary-bg);\n}\n.form-select:-moz-focusring {\n color: transparent;\n text-shadow: 0 0 0 var(--bs-body-color);\n}\n\n.form-select-sm {\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n padding-left: 0.5rem;\n font-size: 0.875rem;\n border-radius: var(--bs-border-radius-sm);\n}\n\n.form-select-lg {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n padding-left: 1rem;\n font-size: 1.25rem;\n border-radius: var(--bs-border-radius-lg);\n}\n\n[data-bs-theme=dark] .form-select {\n --bs-form-select-bg-img: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23dee2e6' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e\");\n}\n\n.form-check {\n display: block;\n min-height: 1.5rem;\n padding-left: 1.5em;\n margin-bottom: 0.125rem;\n}\n.form-check .form-check-input {\n float: left;\n margin-left: -1.5em;\n}\n\n.form-check-reverse {\n padding-right: 1.5em;\n padding-left: 0;\n text-align: right;\n}\n.form-check-reverse .form-check-input {\n float: right;\n margin-right: -1.5em;\n margin-left: 0;\n}\n\n.form-check-input {\n --bs-form-check-bg: var(--bs-body-bg);\n flex-shrink: 0;\n width: 1em;\n height: 1em;\n margin-top: 0.25em;\n vertical-align: top;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n background-color: var(--bs-form-check-bg);\n background-image: var(--bs-form-check-bg-image);\n background-repeat: no-repeat;\n background-position: center;\n background-size: contain;\n border: var(--bs-border-width) solid var(--bs-border-color);\n -webkit-print-color-adjust: exact;\n color-adjust: exact;\n print-color-adjust: exact;\n}\n.form-check-input[type=checkbox] {\n border-radius: 0.25em;\n}\n.form-check-input[type=radio] {\n border-radius: 50%;\n}\n.form-check-input:active {\n filter: brightness(90%);\n}\n.form-check-input:focus {\n border-color: #86b7fe;\n outline: 0;\n box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n}\n.form-check-input:checked {\n background-color: #0d6efd;\n border-color: #0d6efd;\n}\n.form-check-input:checked[type=checkbox] {\n --bs-form-check-bg-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e\");\n}\n.form-check-input:checked[type=radio] {\n --bs-form-check-bg-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e\");\n}\n.form-check-input[type=checkbox]:indeterminate {\n background-color: #0d6efd;\n border-color: #0d6efd;\n --bs-form-check-bg-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e\");\n}\n.form-check-input:disabled {\n pointer-events: none;\n filter: none;\n opacity: 0.5;\n}\n.form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label {\n cursor: default;\n opacity: 0.5;\n}\n\n.form-switch {\n padding-left: 2.5em;\n}\n.form-switch .form-check-input {\n --bs-form-switch-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e\");\n width: 2em;\n margin-left: -2.5em;\n background-image: var(--bs-form-switch-bg);\n background-position: left center;\n border-radius: 2em;\n transition: background-position 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-switch .form-check-input {\n transition: none;\n }\n}\n.form-switch .form-check-input:focus {\n --bs-form-switch-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2386b7fe'/%3e%3c/svg%3e\");\n}\n.form-switch .form-check-input:checked {\n background-position: right center;\n --bs-form-switch-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e\");\n}\n.form-switch.form-check-reverse {\n padding-right: 2.5em;\n padding-left: 0;\n}\n.form-switch.form-check-reverse .form-check-input {\n margin-right: -2.5em;\n margin-left: 0;\n}\n\n.form-check-inline {\n display: inline-block;\n margin-right: 1rem;\n}\n\n.btn-check {\n position: absolute;\n clip: rect(0, 0, 0, 0);\n pointer-events: none;\n}\n.btn-check[disabled] + .btn, .btn-check:disabled + .btn {\n pointer-events: none;\n filter: none;\n opacity: 0.65;\n}\n\n[data-bs-theme=dark] .form-switch .form-check-input:not(:checked):not(:focus) {\n --bs-form-switch-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%28255, 255, 255, 0.25%29'/%3e%3c/svg%3e\");\n}\n\n.form-range {\n width: 100%;\n height: 1.5rem;\n padding: 0;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n background-color: transparent;\n}\n.form-range:focus {\n outline: 0;\n}\n.form-range:focus::-webkit-slider-thumb {\n box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n}\n.form-range:focus::-moz-range-thumb {\n box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n}\n.form-range::-moz-focus-outer {\n border: 0;\n}\n.form-range::-webkit-slider-thumb {\n width: 1rem;\n height: 1rem;\n margin-top: -0.25rem;\n -webkit-appearance: none;\n appearance: none;\n background-color: #0d6efd;\n border: 0;\n border-radius: 1rem;\n -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-range::-webkit-slider-thumb {\n -webkit-transition: none;\n transition: none;\n }\n}\n.form-range::-webkit-slider-thumb:active {\n background-color: #b6d4fe;\n}\n.form-range::-webkit-slider-runnable-track {\n width: 100%;\n height: 0.5rem;\n color: transparent;\n cursor: pointer;\n background-color: var(--bs-secondary-bg);\n border-color: transparent;\n border-radius: 1rem;\n}\n.form-range::-moz-range-thumb {\n width: 1rem;\n height: 1rem;\n -moz-appearance: none;\n appearance: none;\n background-color: #0d6efd;\n border: 0;\n border-radius: 1rem;\n -moz-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-range::-moz-range-thumb {\n -moz-transition: none;\n transition: none;\n }\n}\n.form-range::-moz-range-thumb:active {\n background-color: #b6d4fe;\n}\n.form-range::-moz-range-track {\n width: 100%;\n height: 0.5rem;\n color: transparent;\n cursor: pointer;\n background-color: var(--bs-secondary-bg);\n border-color: transparent;\n border-radius: 1rem;\n}\n.form-range:disabled {\n pointer-events: none;\n}\n.form-range:disabled::-webkit-slider-thumb {\n background-color: var(--bs-secondary-color);\n}\n.form-range:disabled::-moz-range-thumb {\n background-color: var(--bs-secondary-color);\n}\n\n.form-floating {\n position: relative;\n}\n.form-floating > .form-control,\n.form-floating > .form-control-plaintext,\n.form-floating > .form-select {\n height: calc(3.5rem + calc(var(--bs-border-width) * 2));\n min-height: calc(3.5rem + calc(var(--bs-border-width) * 2));\n line-height: 1.25;\n}\n.form-floating > label {\n position: absolute;\n top: 0;\n left: 0;\n z-index: 2;\n max-width: 100%;\n height: 100%;\n padding: 1rem 0.75rem;\n overflow: hidden;\n color: rgba(var(--bs-body-color-rgb), 0.65);\n text-align: start;\n text-overflow: ellipsis;\n white-space: nowrap;\n pointer-events: none;\n border: var(--bs-border-width) solid transparent;\n transform-origin: 0 0;\n transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-floating > label {\n transition: none;\n }\n}\n.form-floating > .form-control,\n.form-floating > .form-control-plaintext {\n padding: 1rem 0.75rem;\n}\n.form-floating > .form-control::placeholder,\n.form-floating > .form-control-plaintext::placeholder {\n color: transparent;\n}\n.form-floating > .form-control:focus, .form-floating > .form-control:not(:placeholder-shown),\n.form-floating > .form-control-plaintext:focus,\n.form-floating > .form-control-plaintext:not(:placeholder-shown) {\n padding-top: 1.625rem;\n padding-bottom: 0.625rem;\n}\n.form-floating > .form-control:-webkit-autofill,\n.form-floating > .form-control-plaintext:-webkit-autofill {\n padding-top: 1.625rem;\n padding-bottom: 0.625rem;\n}\n.form-floating > .form-select {\n padding-top: 1.625rem;\n padding-bottom: 0.625rem;\n padding-left: 0.75rem;\n}\n.form-floating > .form-control:focus ~ label,\n.form-floating > .form-control:not(:placeholder-shown) ~ label,\n.form-floating > .form-control-plaintext ~ label,\n.form-floating > .form-select ~ label {\n transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);\n}\n.form-floating > .form-control:-webkit-autofill ~ label {\n transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);\n}\n.form-floating > textarea:focus ~ label::after,\n.form-floating > textarea:not(:placeholder-shown) ~ label::after {\n position: absolute;\n inset: 1rem 0.375rem;\n z-index: -1;\n height: 1.5em;\n content: \"\";\n background-color: var(--bs-body-bg);\n border-radius: var(--bs-border-radius);\n}\n.form-floating > textarea:disabled ~ label::after {\n background-color: var(--bs-secondary-bg);\n}\n.form-floating > .form-control-plaintext ~ label {\n border-width: var(--bs-border-width) 0;\n}\n.form-floating > :disabled ~ label,\n.form-floating > .form-control:disabled ~ label {\n color: #6c757d;\n}\n\n.input-group {\n position: relative;\n display: flex;\n flex-wrap: wrap;\n align-items: stretch;\n width: 100%;\n}\n.input-group > .form-control,\n.input-group > .form-select,\n.input-group > .form-floating {\n position: relative;\n flex: 1 1 auto;\n width: 1%;\n min-width: 0;\n}\n.input-group > .form-control:focus,\n.input-group > .form-select:focus,\n.input-group > .form-floating:focus-within {\n z-index: 5;\n}\n.input-group .btn {\n position: relative;\n z-index: 2;\n}\n.input-group .btn:focus {\n z-index: 5;\n}\n\n.input-group-text {\n display: flex;\n align-items: center;\n padding: 0.375rem 0.75rem;\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5;\n color: var(--bs-body-color);\n text-align: center;\n white-space: nowrap;\n background-color: var(--bs-tertiary-bg);\n border: var(--bs-border-width) solid var(--bs-border-color);\n border-radius: var(--bs-border-radius);\n}\n\n.input-group-lg > .form-control,\n.input-group-lg > .form-select,\n.input-group-lg > .input-group-text,\n.input-group-lg > .btn {\n padding: 0.5rem 1rem;\n font-size: 1.25rem;\n border-radius: var(--bs-border-radius-lg);\n}\n\n.input-group-sm > .form-control,\n.input-group-sm > .form-select,\n.input-group-sm > .input-group-text,\n.input-group-sm > .btn {\n padding: 0.25rem 0.5rem;\n font-size: 0.875rem;\n border-radius: var(--bs-border-radius-sm);\n}\n\n.input-group-lg > .form-select,\n.input-group-sm > .form-select {\n padding-right: 3rem;\n}\n\n.input-group:not(.has-validation) > :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),\n.input-group:not(.has-validation) > .dropdown-toggle:nth-last-child(n+3),\n.input-group:not(.has-validation) > .form-floating:not(:last-child) > .form-control,\n.input-group:not(.has-validation) > .form-floating:not(:last-child) > .form-select {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.input-group.has-validation > :nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),\n.input-group.has-validation > .dropdown-toggle:nth-last-child(n+4),\n.input-group.has-validation > .form-floating:nth-last-child(n+3) > .form-control,\n.input-group.has-validation > .form-floating:nth-last-child(n+3) > .form-select {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.input-group > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {\n margin-left: calc(-1 * var(--bs-border-width));\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.input-group > .form-floating:not(:first-child) > .form-control,\n.input-group > .form-floating:not(:first-child) > .form-select {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.valid-feedback {\n display: none;\n width: 100%;\n margin-top: 0.25rem;\n font-size: 0.875em;\n color: var(--bs-form-valid-color);\n}\n\n.valid-tooltip {\n position: absolute;\n top: 100%;\n z-index: 5;\n display: none;\n max-width: 100%;\n padding: 0.25rem 0.5rem;\n margin-top: 0.1rem;\n font-size: 0.875rem;\n color: #fff;\n background-color: var(--bs-success);\n border-radius: var(--bs-border-radius);\n}\n\n.was-validated :valid ~ .valid-feedback,\n.was-validated :valid ~ .valid-tooltip,\n.is-valid ~ .valid-feedback,\n.is-valid ~ .valid-tooltip {\n display: block;\n}\n\n.was-validated .form-control:valid, .form-control.is-valid {\n border-color: var(--bs-form-valid-border-color);\n padding-right: calc(1.5em + 0.75rem);\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1'/%3e%3c/svg%3e\");\n background-repeat: no-repeat;\n background-position: right calc(0.375em + 0.1875rem) center;\n background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\n}\n.was-validated .form-control:valid:focus, .form-control.is-valid:focus {\n border-color: var(--bs-form-valid-border-color);\n box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);\n}\n\n.was-validated textarea.form-control:valid, textarea.form-control.is-valid {\n padding-right: calc(1.5em + 0.75rem);\n background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);\n}\n\n.was-validated .form-select:valid, .form-select.is-valid {\n border-color: var(--bs-form-valid-border-color);\n}\n.was-validated .form-select:valid:not([multiple]):not([size]), .was-validated .form-select:valid:not([multiple])[size=\"1\"], .form-select.is-valid:not([multiple]):not([size]), .form-select.is-valid:not([multiple])[size=\"1\"] {\n --bs-form-select-bg-icon: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1'/%3e%3c/svg%3e\");\n padding-right: 4.125rem;\n background-position: right 0.75rem center, center right 2.25rem;\n background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\n}\n.was-validated .form-select:valid:focus, .form-select.is-valid:focus {\n border-color: var(--bs-form-valid-border-color);\n box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);\n}\n\n.was-validated .form-control-color:valid, .form-control-color.is-valid {\n width: calc(3rem + calc(1.5em + 0.75rem));\n}\n\n.was-validated .form-check-input:valid, .form-check-input.is-valid {\n border-color: var(--bs-form-valid-border-color);\n}\n.was-validated .form-check-input:valid:checked, .form-check-input.is-valid:checked {\n background-color: var(--bs-form-valid-color);\n}\n.was-validated .form-check-input:valid:focus, .form-check-input.is-valid:focus {\n box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);\n}\n.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {\n color: var(--bs-form-valid-color);\n}\n\n.form-check-inline .form-check-input ~ .valid-feedback {\n margin-left: 0.5em;\n}\n\n.was-validated .input-group > .form-control:not(:focus):valid, .input-group > .form-control:not(:focus).is-valid,\n.was-validated .input-group > .form-select:not(:focus):valid,\n.input-group > .form-select:not(:focus).is-valid,\n.was-validated .input-group > .form-floating:not(:focus-within):valid,\n.input-group > .form-floating:not(:focus-within).is-valid {\n z-index: 3;\n}\n\n.invalid-feedback {\n display: none;\n width: 100%;\n margin-top: 0.25rem;\n font-size: 0.875em;\n color: var(--bs-form-invalid-color);\n}\n\n.invalid-tooltip {\n position: absolute;\n top: 100%;\n z-index: 5;\n display: none;\n max-width: 100%;\n padding: 0.25rem 0.5rem;\n margin-top: 0.1rem;\n font-size: 0.875rem;\n color: #fff;\n background-color: var(--bs-danger);\n border-radius: var(--bs-border-radius);\n}\n\n.was-validated :invalid ~ .invalid-feedback,\n.was-validated :invalid ~ .invalid-tooltip,\n.is-invalid ~ .invalid-feedback,\n.is-invalid ~ .invalid-tooltip {\n display: block;\n}\n\n.was-validated .form-control:invalid, .form-control.is-invalid {\n border-color: var(--bs-form-invalid-border-color);\n padding-right: calc(1.5em + 0.75rem);\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e\");\n background-repeat: no-repeat;\n background-position: right calc(0.375em + 0.1875rem) center;\n background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\n}\n.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {\n border-color: var(--bs-form-invalid-border-color);\n box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);\n}\n\n.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {\n padding-right: calc(1.5em + 0.75rem);\n background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);\n}\n\n.was-validated .form-select:invalid, .form-select.is-invalid {\n border-color: var(--bs-form-invalid-border-color);\n}\n.was-validated .form-select:invalid:not([multiple]):not([size]), .was-validated .form-select:invalid:not([multiple])[size=\"1\"], .form-select.is-invalid:not([multiple]):not([size]), .form-select.is-invalid:not([multiple])[size=\"1\"] {\n --bs-form-select-bg-icon: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e\");\n padding-right: 4.125rem;\n background-position: right 0.75rem center, center right 2.25rem;\n background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\n}\n.was-validated .form-select:invalid:focus, .form-select.is-invalid:focus {\n border-color: var(--bs-form-invalid-border-color);\n box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);\n}\n\n.was-validated .form-control-color:invalid, .form-control-color.is-invalid {\n width: calc(3rem + calc(1.5em + 0.75rem));\n}\n\n.was-validated .form-check-input:invalid, .form-check-input.is-invalid {\n border-color: var(--bs-form-invalid-border-color);\n}\n.was-validated .form-check-input:invalid:checked, .form-check-input.is-invalid:checked {\n background-color: var(--bs-form-invalid-color);\n}\n.was-validated .form-check-input:invalid:focus, .form-check-input.is-invalid:focus {\n box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);\n}\n.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {\n color: var(--bs-form-invalid-color);\n}\n\n.form-check-inline .form-check-input ~ .invalid-feedback {\n margin-left: 0.5em;\n}\n\n.was-validated .input-group > .form-control:not(:focus):invalid, .input-group > .form-control:not(:focus).is-invalid,\n.was-validated .input-group > .form-select:not(:focus):invalid,\n.input-group > .form-select:not(:focus).is-invalid,\n.was-validated .input-group > .form-floating:not(:focus-within):invalid,\n.input-group > .form-floating:not(:focus-within).is-invalid {\n z-index: 4;\n}\n\n.btn {\n --bs-btn-padding-x: 0.75rem;\n --bs-btn-padding-y: 0.375rem;\n --bs-btn-font-family: ;\n --bs-btn-font-size: 1rem;\n --bs-btn-font-weight: 400;\n --bs-btn-line-height: 1.5;\n --bs-btn-color: var(--bs-body-color);\n --bs-btn-bg: transparent;\n --bs-btn-border-width: var(--bs-border-width);\n --bs-btn-border-color: transparent;\n --bs-btn-border-radius: var(--bs-border-radius);\n --bs-btn-hover-border-color: transparent;\n --bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);\n --bs-btn-disabled-opacity: 0.65;\n --bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);\n display: inline-block;\n padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);\n font-family: var(--bs-btn-font-family);\n font-size: var(--bs-btn-font-size);\n font-weight: var(--bs-btn-font-weight);\n line-height: var(--bs-btn-line-height);\n color: var(--bs-btn-color);\n text-align: center;\n text-decoration: none;\n vertical-align: middle;\n cursor: pointer;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);\n border-radius: var(--bs-btn-border-radius);\n background-color: var(--bs-btn-bg);\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .btn {\n transition: none;\n }\n}\n.btn:hover {\n color: var(--bs-btn-hover-color);\n background-color: var(--bs-btn-hover-bg);\n border-color: var(--bs-btn-hover-border-color);\n}\n.btn-check + .btn:hover {\n color: var(--bs-btn-color);\n background-color: var(--bs-btn-bg);\n border-color: var(--bs-btn-border-color);\n}\n.btn:focus-visible {\n color: var(--bs-btn-hover-color);\n background-color: var(--bs-btn-hover-bg);\n border-color: var(--bs-btn-hover-border-color);\n outline: 0;\n box-shadow: var(--bs-btn-focus-box-shadow);\n}\n.btn-check:focus-visible + .btn {\n border-color: var(--bs-btn-hover-border-color);\n outline: 0;\n box-shadow: var(--bs-btn-focus-box-shadow);\n}\n.btn-check:checked + .btn, :not(.btn-check) + .btn:active, .btn:first-child:active, .btn.active, .btn.show {\n color: var(--bs-btn-active-color);\n background-color: var(--bs-btn-active-bg);\n border-color: var(--bs-btn-active-border-color);\n}\n.btn-check:checked + .btn:focus-visible, :not(.btn-check) + .btn:active:focus-visible, .btn:first-child:active:focus-visible, .btn.active:focus-visible, .btn.show:focus-visible {\n box-shadow: var(--bs-btn-focus-box-shadow);\n}\n.btn-check:checked:focus-visible + .btn {\n box-shadow: var(--bs-btn-focus-box-shadow);\n}\n.btn:disabled, .btn.disabled, fieldset:disabled .btn {\n color: var(--bs-btn-disabled-color);\n pointer-events: none;\n background-color: var(--bs-btn-disabled-bg);\n border-color: var(--bs-btn-disabled-border-color);\n opacity: var(--bs-btn-disabled-opacity);\n}\n\n.btn-primary {\n --bs-btn-color: #fff;\n --bs-btn-bg: #0d6efd;\n --bs-btn-border-color: #0d6efd;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #0b5ed7;\n --bs-btn-hover-border-color: #0a58ca;\n --bs-btn-focus-shadow-rgb: 49, 132, 253;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #0a58ca;\n --bs-btn-active-border-color: #0a53be;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #fff;\n --bs-btn-disabled-bg: #0d6efd;\n --bs-btn-disabled-border-color: #0d6efd;\n}\n\n.btn-secondary {\n --bs-btn-color: #fff;\n --bs-btn-bg: #6c757d;\n --bs-btn-border-color: #6c757d;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #5c636a;\n --bs-btn-hover-border-color: #565e64;\n --bs-btn-focus-shadow-rgb: 130, 138, 145;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #565e64;\n --bs-btn-active-border-color: #51585e;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #fff;\n --bs-btn-disabled-bg: #6c757d;\n --bs-btn-disabled-border-color: #6c757d;\n}\n\n.btn-success {\n --bs-btn-color: #fff;\n --bs-btn-bg: #198754;\n --bs-btn-border-color: #198754;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #157347;\n --bs-btn-hover-border-color: #146c43;\n --bs-btn-focus-shadow-rgb: 60, 153, 110;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #146c43;\n --bs-btn-active-border-color: #13653f;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #fff;\n --bs-btn-disabled-bg: #198754;\n --bs-btn-disabled-border-color: #198754;\n}\n\n.btn-info {\n --bs-btn-color: #000;\n --bs-btn-bg: #0dcaf0;\n --bs-btn-border-color: #0dcaf0;\n --bs-btn-hover-color: #000;\n --bs-btn-hover-bg: #31d2f2;\n --bs-btn-hover-border-color: #25cff2;\n --bs-btn-focus-shadow-rgb: 11, 172, 204;\n --bs-btn-active-color: #000;\n --bs-btn-active-bg: #3dd5f3;\n --bs-btn-active-border-color: #25cff2;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #000;\n --bs-btn-disabled-bg: #0dcaf0;\n --bs-btn-disabled-border-color: #0dcaf0;\n}\n\n.btn-warning {\n --bs-btn-color: #000;\n --bs-btn-bg: #ffc107;\n --bs-btn-border-color: #ffc107;\n --bs-btn-hover-color: #000;\n --bs-btn-hover-bg: #ffca2c;\n --bs-btn-hover-border-color: #ffc720;\n --bs-btn-focus-shadow-rgb: 217, 164, 6;\n --bs-btn-active-color: #000;\n --bs-btn-active-bg: #ffcd39;\n --bs-btn-active-border-color: #ffc720;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #000;\n --bs-btn-disabled-bg: #ffc107;\n --bs-btn-disabled-border-color: #ffc107;\n}\n\n.btn-danger {\n --bs-btn-color: #fff;\n --bs-btn-bg: #dc3545;\n --bs-btn-border-color: #dc3545;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #bb2d3b;\n --bs-btn-hover-border-color: #b02a37;\n --bs-btn-focus-shadow-rgb: 225, 83, 97;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #b02a37;\n --bs-btn-active-border-color: #a52834;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #fff;\n --bs-btn-disabled-bg: #dc3545;\n --bs-btn-disabled-border-color: #dc3545;\n}\n\n.btn-light {\n --bs-btn-color: #000;\n --bs-btn-bg: #f8f9fa;\n --bs-btn-border-color: #f8f9fa;\n --bs-btn-hover-color: #000;\n --bs-btn-hover-bg: #d3d4d5;\n --bs-btn-hover-border-color: #c6c7c8;\n --bs-btn-focus-shadow-rgb: 211, 212, 213;\n --bs-btn-active-color: #000;\n --bs-btn-active-bg: #c6c7c8;\n --bs-btn-active-border-color: #babbbc;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #000;\n --bs-btn-disabled-bg: #f8f9fa;\n --bs-btn-disabled-border-color: #f8f9fa;\n}\n\n.btn-dark {\n --bs-btn-color: #fff;\n --bs-btn-bg: #212529;\n --bs-btn-border-color: #212529;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #424649;\n --bs-btn-hover-border-color: #373b3e;\n --bs-btn-focus-shadow-rgb: 66, 70, 73;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #4d5154;\n --bs-btn-active-border-color: #373b3e;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #fff;\n --bs-btn-disabled-bg: #212529;\n --bs-btn-disabled-border-color: #212529;\n}\n\n.btn-outline-primary {\n --bs-btn-color: #0d6efd;\n --bs-btn-border-color: #0d6efd;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #0d6efd;\n --bs-btn-hover-border-color: #0d6efd;\n --bs-btn-focus-shadow-rgb: 13, 110, 253;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #0d6efd;\n --bs-btn-active-border-color: #0d6efd;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #0d6efd;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #0d6efd;\n --bs-gradient: none;\n}\n\n.btn-outline-secondary {\n --bs-btn-color: #6c757d;\n --bs-btn-border-color: #6c757d;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #6c757d;\n --bs-btn-hover-border-color: #6c757d;\n --bs-btn-focus-shadow-rgb: 108, 117, 125;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #6c757d;\n --bs-btn-active-border-color: #6c757d;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #6c757d;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #6c757d;\n --bs-gradient: none;\n}\n\n.btn-outline-success {\n --bs-btn-color: #198754;\n --bs-btn-border-color: #198754;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #198754;\n --bs-btn-hover-border-color: #198754;\n --bs-btn-focus-shadow-rgb: 25, 135, 84;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #198754;\n --bs-btn-active-border-color: #198754;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #198754;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #198754;\n --bs-gradient: none;\n}\n\n.btn-outline-info {\n --bs-btn-color: #0dcaf0;\n --bs-btn-border-color: #0dcaf0;\n --bs-btn-hover-color: #000;\n --bs-btn-hover-bg: #0dcaf0;\n --bs-btn-hover-border-color: #0dcaf0;\n --bs-btn-focus-shadow-rgb: 13, 202, 240;\n --bs-btn-active-color: #000;\n --bs-btn-active-bg: #0dcaf0;\n --bs-btn-active-border-color: #0dcaf0;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #0dcaf0;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #0dcaf0;\n --bs-gradient: none;\n}\n\n.btn-outline-warning {\n --bs-btn-color: #ffc107;\n --bs-btn-border-color: #ffc107;\n --bs-btn-hover-color: #000;\n --bs-btn-hover-bg: #ffc107;\n --bs-btn-hover-border-color: #ffc107;\n --bs-btn-focus-shadow-rgb: 255, 193, 7;\n --bs-btn-active-color: #000;\n --bs-btn-active-bg: #ffc107;\n --bs-btn-active-border-color: #ffc107;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #ffc107;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #ffc107;\n --bs-gradient: none;\n}\n\n.btn-outline-danger {\n --bs-btn-color: #dc3545;\n --bs-btn-border-color: #dc3545;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #dc3545;\n --bs-btn-hover-border-color: #dc3545;\n --bs-btn-focus-shadow-rgb: 220, 53, 69;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #dc3545;\n --bs-btn-active-border-color: #dc3545;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #dc3545;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #dc3545;\n --bs-gradient: none;\n}\n\n.btn-outline-light {\n --bs-btn-color: #f8f9fa;\n --bs-btn-border-color: #f8f9fa;\n --bs-btn-hover-color: #000;\n --bs-btn-hover-bg: #f8f9fa;\n --bs-btn-hover-border-color: #f8f9fa;\n --bs-btn-focus-shadow-rgb: 248, 249, 250;\n --bs-btn-active-color: #000;\n --bs-btn-active-bg: #f8f9fa;\n --bs-btn-active-border-color: #f8f9fa;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #f8f9fa;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #f8f9fa;\n --bs-gradient: none;\n}\n\n.btn-outline-dark {\n --bs-btn-color: #212529;\n --bs-btn-border-color: #212529;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #212529;\n --bs-btn-hover-border-color: #212529;\n --bs-btn-focus-shadow-rgb: 33, 37, 41;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #212529;\n --bs-btn-active-border-color: #212529;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #212529;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #212529;\n --bs-gradient: none;\n}\n\n.btn-link {\n --bs-btn-font-weight: 400;\n --bs-btn-color: var(--bs-link-color);\n --bs-btn-bg: transparent;\n --bs-btn-border-color: transparent;\n --bs-btn-hover-color: var(--bs-link-hover-color);\n --bs-btn-hover-border-color: transparent;\n --bs-btn-active-color: var(--bs-link-hover-color);\n --bs-btn-active-border-color: transparent;\n --bs-btn-disabled-color: #6c757d;\n --bs-btn-disabled-border-color: transparent;\n --bs-btn-box-shadow: 0 0 0 #000;\n --bs-btn-focus-shadow-rgb: 49, 132, 253;\n text-decoration: underline;\n}\n.btn-link:focus-visible {\n color: var(--bs-btn-color);\n}\n.btn-link:hover {\n color: var(--bs-btn-hover-color);\n}\n\n.btn-lg, .btn-group-lg > .btn {\n --bs-btn-padding-y: 0.5rem;\n --bs-btn-padding-x: 1rem;\n --bs-btn-font-size: 1.25rem;\n --bs-btn-border-radius: var(--bs-border-radius-lg);\n}\n\n.btn-sm, .btn-group-sm > .btn {\n --bs-btn-padding-y: 0.25rem;\n --bs-btn-padding-x: 0.5rem;\n --bs-btn-font-size: 0.875rem;\n --bs-btn-border-radius: var(--bs-border-radius-sm);\n}\n\n.fade {\n transition: opacity 0.15s linear;\n}\n@media (prefers-reduced-motion: reduce) {\n .fade {\n transition: none;\n }\n}\n.fade:not(.show) {\n opacity: 0;\n}\n\n.collapse:not(.show) {\n display: none;\n}\n\n.collapsing {\n height: 0;\n overflow: hidden;\n transition: height 0.35s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .collapsing {\n transition: none;\n }\n}\n.collapsing.collapse-horizontal {\n width: 0;\n height: auto;\n transition: width 0.35s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .collapsing.collapse-horizontal {\n transition: none;\n }\n}\n\n.dropup,\n.dropend,\n.dropdown,\n.dropstart,\n.dropup-center,\n.dropdown-center {\n position: relative;\n}\n\n.dropdown-toggle {\n white-space: nowrap;\n}\n.dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0.3em solid;\n border-right: 0.3em solid transparent;\n border-bottom: 0;\n border-left: 0.3em solid transparent;\n}\n.dropdown-toggle:empty::after {\n margin-left: 0;\n}\n\n.dropdown-menu {\n --bs-dropdown-zindex: 1000;\n --bs-dropdown-min-width: 10rem;\n --bs-dropdown-padding-x: 0;\n --bs-dropdown-padding-y: 0.5rem;\n --bs-dropdown-spacer: 0.125rem;\n --bs-dropdown-font-size: 1rem;\n --bs-dropdown-color: var(--bs-body-color);\n --bs-dropdown-bg: var(--bs-body-bg);\n --bs-dropdown-border-color: var(--bs-border-color-translucent);\n --bs-dropdown-border-radius: var(--bs-border-radius);\n --bs-dropdown-border-width: var(--bs-border-width);\n --bs-dropdown-inner-border-radius: calc(var(--bs-border-radius) - var(--bs-border-width));\n --bs-dropdown-divider-bg: var(--bs-border-color-translucent);\n --bs-dropdown-divider-margin-y: 0.5rem;\n --bs-dropdown-box-shadow: var(--bs-box-shadow);\n --bs-dropdown-link-color: var(--bs-body-color);\n --bs-dropdown-link-hover-color: var(--bs-body-color);\n --bs-dropdown-link-hover-bg: var(--bs-tertiary-bg);\n --bs-dropdown-link-active-color: #fff;\n --bs-dropdown-link-active-bg: #0d6efd;\n --bs-dropdown-link-disabled-color: var(--bs-tertiary-color);\n --bs-dropdown-item-padding-x: 1rem;\n --bs-dropdown-item-padding-y: 0.25rem;\n --bs-dropdown-header-color: #6c757d;\n --bs-dropdown-header-padding-x: 1rem;\n --bs-dropdown-header-padding-y: 0.5rem;\n position: absolute;\n z-index: var(--bs-dropdown-zindex);\n display: none;\n min-width: var(--bs-dropdown-min-width);\n padding: var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);\n margin: 0;\n font-size: var(--bs-dropdown-font-size);\n color: var(--bs-dropdown-color);\n text-align: left;\n list-style: none;\n background-color: var(--bs-dropdown-bg);\n background-clip: padding-box;\n border: var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);\n border-radius: var(--bs-dropdown-border-radius);\n}\n.dropdown-menu[data-bs-popper] {\n top: 100%;\n left: 0;\n margin-top: var(--bs-dropdown-spacer);\n}\n\n.dropdown-menu-start {\n --bs-position: start;\n}\n.dropdown-menu-start[data-bs-popper] {\n right: auto;\n left: 0;\n}\n\n.dropdown-menu-end {\n --bs-position: end;\n}\n.dropdown-menu-end[data-bs-popper] {\n right: 0;\n left: auto;\n}\n\n@media (min-width: 576px) {\n .dropdown-menu-sm-start {\n --bs-position: start;\n }\n .dropdown-menu-sm-start[data-bs-popper] {\n right: auto;\n left: 0;\n }\n .dropdown-menu-sm-end {\n --bs-position: end;\n }\n .dropdown-menu-sm-end[data-bs-popper] {\n right: 0;\n left: auto;\n }\n}\n@media (min-width: 768px) {\n .dropdown-menu-md-start {\n --bs-position: start;\n }\n .dropdown-menu-md-start[data-bs-popper] {\n right: auto;\n left: 0;\n }\n .dropdown-menu-md-end {\n --bs-position: end;\n }\n .dropdown-menu-md-end[data-bs-popper] {\n right: 0;\n left: auto;\n }\n}\n@media (min-width: 992px) {\n .dropdown-menu-lg-start {\n --bs-position: start;\n }\n .dropdown-menu-lg-start[data-bs-popper] {\n right: auto;\n left: 0;\n }\n .dropdown-menu-lg-end {\n --bs-position: end;\n }\n .dropdown-menu-lg-end[data-bs-popper] {\n right: 0;\n left: auto;\n }\n}\n@media (min-width: 1200px) {\n .dropdown-menu-xl-start {\n --bs-position: start;\n }\n .dropdown-menu-xl-start[data-bs-popper] {\n right: auto;\n left: 0;\n }\n .dropdown-menu-xl-end {\n --bs-position: end;\n }\n .dropdown-menu-xl-end[data-bs-popper] {\n right: 0;\n left: auto;\n }\n}\n@media (min-width: 1400px) {\n .dropdown-menu-xxl-start {\n --bs-position: start;\n }\n .dropdown-menu-xxl-start[data-bs-popper] {\n right: auto;\n left: 0;\n }\n .dropdown-menu-xxl-end {\n --bs-position: end;\n }\n .dropdown-menu-xxl-end[data-bs-popper] {\n right: 0;\n left: auto;\n }\n}\n.dropup .dropdown-menu[data-bs-popper] {\n top: auto;\n bottom: 100%;\n margin-top: 0;\n margin-bottom: var(--bs-dropdown-spacer);\n}\n.dropup .dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0;\n border-right: 0.3em solid transparent;\n border-bottom: 0.3em solid;\n border-left: 0.3em solid transparent;\n}\n.dropup .dropdown-toggle:empty::after {\n margin-left: 0;\n}\n\n.dropend .dropdown-menu[data-bs-popper] {\n top: 0;\n right: auto;\n left: 100%;\n margin-top: 0;\n margin-left: var(--bs-dropdown-spacer);\n}\n.dropend .dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0.3em solid transparent;\n border-right: 0;\n border-bottom: 0.3em solid transparent;\n border-left: 0.3em solid;\n}\n.dropend .dropdown-toggle:empty::after {\n margin-left: 0;\n}\n.dropend .dropdown-toggle::after {\n vertical-align: 0;\n}\n\n.dropstart .dropdown-menu[data-bs-popper] {\n top: 0;\n right: 100%;\n left: auto;\n margin-top: 0;\n margin-right: var(--bs-dropdown-spacer);\n}\n.dropstart .dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n}\n.dropstart .dropdown-toggle::after {\n display: none;\n}\n.dropstart .dropdown-toggle::before {\n display: inline-block;\n margin-right: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0.3em solid transparent;\n border-right: 0.3em solid;\n border-bottom: 0.3em solid transparent;\n}\n.dropstart .dropdown-toggle:empty::after {\n margin-left: 0;\n}\n.dropstart .dropdown-toggle::before {\n vertical-align: 0;\n}\n\n.dropdown-divider {\n height: 0;\n margin: var(--bs-dropdown-divider-margin-y) 0;\n overflow: hidden;\n border-top: 1px solid var(--bs-dropdown-divider-bg);\n opacity: 1;\n}\n\n.dropdown-item {\n display: block;\n width: 100%;\n padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);\n clear: both;\n font-weight: 400;\n color: var(--bs-dropdown-link-color);\n text-align: inherit;\n text-decoration: none;\n white-space: nowrap;\n background-color: transparent;\n border: 0;\n border-radius: var(--bs-dropdown-item-border-radius, 0);\n}\n.dropdown-item:hover, .dropdown-item:focus {\n color: var(--bs-dropdown-link-hover-color);\n background-color: var(--bs-dropdown-link-hover-bg);\n}\n.dropdown-item.active, .dropdown-item:active {\n color: var(--bs-dropdown-link-active-color);\n text-decoration: none;\n background-color: var(--bs-dropdown-link-active-bg);\n}\n.dropdown-item.disabled, .dropdown-item:disabled {\n color: var(--bs-dropdown-link-disabled-color);\n pointer-events: none;\n background-color: transparent;\n}\n\n.dropdown-menu.show {\n display: block;\n}\n\n.dropdown-header {\n display: block;\n padding: var(--bs-dropdown-header-padding-y) var(--bs-dropdown-header-padding-x);\n margin-bottom: 0;\n font-size: 0.875rem;\n color: var(--bs-dropdown-header-color);\n white-space: nowrap;\n}\n\n.dropdown-item-text {\n display: block;\n padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);\n color: var(--bs-dropdown-link-color);\n}\n\n.dropdown-menu-dark {\n --bs-dropdown-color: #dee2e6;\n --bs-dropdown-bg: #343a40;\n --bs-dropdown-border-color: var(--bs-border-color-translucent);\n --bs-dropdown-box-shadow: ;\n --bs-dropdown-link-color: #dee2e6;\n --bs-dropdown-link-hover-color: #fff;\n --bs-dropdown-divider-bg: var(--bs-border-color-translucent);\n --bs-dropdown-link-hover-bg: rgba(255, 255, 255, 0.15);\n --bs-dropdown-link-active-color: #fff;\n --bs-dropdown-link-active-bg: #0d6efd;\n --bs-dropdown-link-disabled-color: #adb5bd;\n --bs-dropdown-header-color: #adb5bd;\n}\n\n.btn-group,\n.btn-group-vertical {\n position: relative;\n display: inline-flex;\n vertical-align: middle;\n}\n.btn-group > .btn,\n.btn-group-vertical > .btn {\n position: relative;\n flex: 1 1 auto;\n}\n.btn-group > .btn-check:checked + .btn,\n.btn-group > .btn-check:focus + .btn,\n.btn-group > .btn:hover,\n.btn-group > .btn:focus,\n.btn-group > .btn:active,\n.btn-group > .btn.active,\n.btn-group-vertical > .btn-check:checked + .btn,\n.btn-group-vertical > .btn-check:focus + .btn,\n.btn-group-vertical > .btn:hover,\n.btn-group-vertical > .btn:focus,\n.btn-group-vertical > .btn:active,\n.btn-group-vertical > .btn.active {\n z-index: 1;\n}\n\n.btn-toolbar {\n display: flex;\n flex-wrap: wrap;\n justify-content: flex-start;\n}\n.btn-toolbar .input-group {\n width: auto;\n}\n\n.btn-group {\n border-radius: var(--bs-border-radius);\n}\n.btn-group > :not(.btn-check:first-child) + .btn,\n.btn-group > .btn-group:not(:first-child) {\n margin-left: calc(-1 * var(--bs-border-width));\n}\n.btn-group > .btn:not(:last-child):not(.dropdown-toggle),\n.btn-group > .btn.dropdown-toggle-split:first-child,\n.btn-group > .btn-group:not(:last-child) > .btn {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.btn-group > .btn:nth-child(n+3),\n.btn-group > :not(.btn-check) + .btn,\n.btn-group > .btn-group:not(:first-child) > .btn {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.dropdown-toggle-split {\n padding-right: 0.5625rem;\n padding-left: 0.5625rem;\n}\n.dropdown-toggle-split::after, .dropup .dropdown-toggle-split::after, .dropend .dropdown-toggle-split::after {\n margin-left: 0;\n}\n.dropstart .dropdown-toggle-split::before {\n margin-right: 0;\n}\n\n.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split {\n padding-right: 0.375rem;\n padding-left: 0.375rem;\n}\n\n.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split {\n padding-right: 0.75rem;\n padding-left: 0.75rem;\n}\n\n.btn-group-vertical {\n flex-direction: column;\n align-items: flex-start;\n justify-content: center;\n}\n.btn-group-vertical > .btn,\n.btn-group-vertical > .btn-group {\n width: 100%;\n}\n.btn-group-vertical > .btn:not(:first-child),\n.btn-group-vertical > .btn-group:not(:first-child) {\n margin-top: calc(-1 * var(--bs-border-width));\n}\n.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),\n.btn-group-vertical > .btn-group:not(:last-child) > .btn {\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group-vertical > .btn:nth-child(n+3),\n.btn-group-vertical > :not(.btn-check) + .btn,\n.btn-group-vertical > .btn-group:not(:first-child) > .btn {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n\n.nav {\n --bs-nav-link-padding-x: 1rem;\n --bs-nav-link-padding-y: 0.5rem;\n --bs-nav-link-font-weight: ;\n --bs-nav-link-color: var(--bs-link-color);\n --bs-nav-link-hover-color: var(--bs-link-hover-color);\n --bs-nav-link-disabled-color: var(--bs-secondary-color);\n display: flex;\n flex-wrap: wrap;\n padding-left: 0;\n margin-bottom: 0;\n list-style: none;\n}\n\n.nav-link {\n display: block;\n padding: var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);\n font-size: var(--bs-nav-link-font-size);\n font-weight: var(--bs-nav-link-font-weight);\n color: var(--bs-nav-link-color);\n text-decoration: none;\n background: none;\n border: 0;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .nav-link {\n transition: none;\n }\n}\n.nav-link:hover, .nav-link:focus {\n color: var(--bs-nav-link-hover-color);\n}\n.nav-link:focus-visible {\n outline: 0;\n box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n}\n.nav-link.disabled, .nav-link:disabled {\n color: var(--bs-nav-link-disabled-color);\n pointer-events: none;\n cursor: default;\n}\n\n.nav-tabs {\n --bs-nav-tabs-border-width: var(--bs-border-width);\n --bs-nav-tabs-border-color: var(--bs-border-color);\n --bs-nav-tabs-border-radius: var(--bs-border-radius);\n --bs-nav-tabs-link-hover-border-color: var(--bs-secondary-bg) var(--bs-secondary-bg) var(--bs-border-color);\n --bs-nav-tabs-link-active-color: var(--bs-emphasis-color);\n --bs-nav-tabs-link-active-bg: var(--bs-body-bg);\n --bs-nav-tabs-link-active-border-color: var(--bs-border-color) var(--bs-border-color) var(--bs-body-bg);\n border-bottom: var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color);\n}\n.nav-tabs .nav-link {\n margin-bottom: calc(-1 * var(--bs-nav-tabs-border-width));\n border: var(--bs-nav-tabs-border-width) solid transparent;\n border-top-left-radius: var(--bs-nav-tabs-border-radius);\n border-top-right-radius: var(--bs-nav-tabs-border-radius);\n}\n.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {\n isolation: isolate;\n border-color: var(--bs-nav-tabs-link-hover-border-color);\n}\n.nav-tabs .nav-link.active,\n.nav-tabs .nav-item.show .nav-link {\n color: var(--bs-nav-tabs-link-active-color);\n background-color: var(--bs-nav-tabs-link-active-bg);\n border-color: var(--bs-nav-tabs-link-active-border-color);\n}\n.nav-tabs .dropdown-menu {\n margin-top: calc(-1 * var(--bs-nav-tabs-border-width));\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n\n.nav-pills {\n --bs-nav-pills-border-radius: var(--bs-border-radius);\n --bs-nav-pills-link-active-color: #fff;\n --bs-nav-pills-link-active-bg: #0d6efd;\n}\n.nav-pills .nav-link {\n border-radius: var(--bs-nav-pills-border-radius);\n}\n.nav-pills .nav-link.active,\n.nav-pills .show > .nav-link {\n color: var(--bs-nav-pills-link-active-color);\n background-color: var(--bs-nav-pills-link-active-bg);\n}\n\n.nav-underline {\n --bs-nav-underline-gap: 1rem;\n --bs-nav-underline-border-width: 0.125rem;\n --bs-nav-underline-link-active-color: var(--bs-emphasis-color);\n gap: var(--bs-nav-underline-gap);\n}\n.nav-underline .nav-link {\n padding-right: 0;\n padding-left: 0;\n border-bottom: var(--bs-nav-underline-border-width) solid transparent;\n}\n.nav-underline .nav-link:hover, .nav-underline .nav-link:focus {\n border-bottom-color: currentcolor;\n}\n.nav-underline .nav-link.active,\n.nav-underline .show > .nav-link {\n font-weight: 700;\n color: var(--bs-nav-underline-link-active-color);\n border-bottom-color: currentcolor;\n}\n\n.nav-fill > .nav-link,\n.nav-fill .nav-item {\n flex: 1 1 auto;\n text-align: center;\n}\n\n.nav-justified > .nav-link,\n.nav-justified .nav-item {\n flex-grow: 1;\n flex-basis: 0;\n text-align: center;\n}\n\n.nav-fill .nav-item .nav-link,\n.nav-justified .nav-item .nav-link {\n width: 100%;\n}\n\n.tab-content > .tab-pane {\n display: none;\n}\n.tab-content > .active {\n display: block;\n}\n\n.navbar {\n --bs-navbar-padding-x: 0;\n --bs-navbar-padding-y: 0.5rem;\n --bs-navbar-color: rgba(var(--bs-emphasis-color-rgb), 0.65);\n --bs-navbar-hover-color: rgba(var(--bs-emphasis-color-rgb), 0.8);\n --bs-navbar-disabled-color: rgba(var(--bs-emphasis-color-rgb), 0.3);\n --bs-navbar-active-color: rgba(var(--bs-emphasis-color-rgb), 1);\n --bs-navbar-brand-padding-y: 0.3125rem;\n --bs-navbar-brand-margin-end: 1rem;\n --bs-navbar-brand-font-size: 1.25rem;\n --bs-navbar-brand-color: rgba(var(--bs-emphasis-color-rgb), 1);\n --bs-navbar-brand-hover-color: rgba(var(--bs-emphasis-color-rgb), 1);\n --bs-navbar-nav-link-padding-x: 0.5rem;\n --bs-navbar-toggler-padding-y: 0.25rem;\n --bs-navbar-toggler-padding-x: 0.75rem;\n --bs-navbar-toggler-font-size: 1.25rem;\n --bs-navbar-toggler-icon-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2833, 37, 41, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\");\n --bs-navbar-toggler-border-color: rgba(var(--bs-emphasis-color-rgb), 0.15);\n --bs-navbar-toggler-border-radius: var(--bs-border-radius);\n --bs-navbar-toggler-focus-width: 0.25rem;\n --bs-navbar-toggler-transition: box-shadow 0.15s ease-in-out;\n position: relative;\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: space-between;\n padding: var(--bs-navbar-padding-y) var(--bs-navbar-padding-x);\n}\n.navbar > .container,\n.navbar > .container-fluid,\n.navbar > .container-sm,\n.navbar > .container-md,\n.navbar > .container-lg,\n.navbar > .container-xl,\n.navbar > .container-xxl {\n display: flex;\n flex-wrap: inherit;\n align-items: center;\n justify-content: space-between;\n}\n.navbar-brand {\n padding-top: var(--bs-navbar-brand-padding-y);\n padding-bottom: var(--bs-navbar-brand-padding-y);\n margin-right: var(--bs-navbar-brand-margin-end);\n font-size: var(--bs-navbar-brand-font-size);\n color: var(--bs-navbar-brand-color);\n text-decoration: none;\n white-space: nowrap;\n}\n.navbar-brand:hover, .navbar-brand:focus {\n color: var(--bs-navbar-brand-hover-color);\n}\n\n.navbar-nav {\n --bs-nav-link-padding-x: 0;\n --bs-nav-link-padding-y: 0.5rem;\n --bs-nav-link-font-weight: ;\n --bs-nav-link-color: var(--bs-navbar-color);\n --bs-nav-link-hover-color: var(--bs-navbar-hover-color);\n --bs-nav-link-disabled-color: var(--bs-navbar-disabled-color);\n display: flex;\n flex-direction: column;\n padding-left: 0;\n margin-bottom: 0;\n list-style: none;\n}\n.navbar-nav .nav-link.active, .navbar-nav .nav-link.show {\n color: var(--bs-navbar-active-color);\n}\n.navbar-nav .dropdown-menu {\n position: static;\n}\n\n.navbar-text {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n color: var(--bs-navbar-color);\n}\n.navbar-text a,\n.navbar-text a:hover,\n.navbar-text a:focus {\n color: var(--bs-navbar-active-color);\n}\n\n.navbar-collapse {\n flex-grow: 1;\n flex-basis: 100%;\n align-items: center;\n}\n\n.navbar-toggler {\n padding: var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x);\n font-size: var(--bs-navbar-toggler-font-size);\n line-height: 1;\n color: var(--bs-navbar-color);\n background-color: transparent;\n border: var(--bs-border-width) solid var(--bs-navbar-toggler-border-color);\n border-radius: var(--bs-navbar-toggler-border-radius);\n transition: var(--bs-navbar-toggler-transition);\n}\n@media (prefers-reduced-motion: reduce) {\n .navbar-toggler {\n transition: none;\n }\n}\n.navbar-toggler:hover {\n text-decoration: none;\n}\n.navbar-toggler:focus {\n text-decoration: none;\n outline: 0;\n box-shadow: 0 0 0 var(--bs-navbar-toggler-focus-width);\n}\n\n.navbar-toggler-icon {\n display: inline-block;\n width: 1.5em;\n height: 1.5em;\n vertical-align: middle;\n background-image: var(--bs-navbar-toggler-icon-bg);\n background-repeat: no-repeat;\n background-position: center;\n background-size: 100%;\n}\n\n.navbar-nav-scroll {\n max-height: var(--bs-scroll-height, 75vh);\n overflow-y: auto;\n}\n\n@media (min-width: 576px) {\n .navbar-expand-sm {\n flex-wrap: nowrap;\n justify-content: flex-start;\n }\n .navbar-expand-sm .navbar-nav {\n flex-direction: row;\n }\n .navbar-expand-sm .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-sm .navbar-nav .nav-link {\n padding-right: var(--bs-navbar-nav-link-padding-x);\n padding-left: var(--bs-navbar-nav-link-padding-x);\n }\n .navbar-expand-sm .navbar-nav-scroll {\n overflow: visible;\n }\n .navbar-expand-sm .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n }\n .navbar-expand-sm .navbar-toggler {\n display: none;\n }\n .navbar-expand-sm .offcanvas {\n position: static;\n z-index: auto;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n transform: none !important;\n transition: none;\n }\n .navbar-expand-sm .offcanvas .offcanvas-header {\n display: none;\n }\n .navbar-expand-sm .offcanvas .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n@media (min-width: 768px) {\n .navbar-expand-md {\n flex-wrap: nowrap;\n justify-content: flex-start;\n }\n .navbar-expand-md .navbar-nav {\n flex-direction: row;\n }\n .navbar-expand-md .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-md .navbar-nav .nav-link {\n padding-right: var(--bs-navbar-nav-link-padding-x);\n padding-left: var(--bs-navbar-nav-link-padding-x);\n }\n .navbar-expand-md .navbar-nav-scroll {\n overflow: visible;\n }\n .navbar-expand-md .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n }\n .navbar-expand-md .navbar-toggler {\n display: none;\n }\n .navbar-expand-md .offcanvas {\n position: static;\n z-index: auto;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n transform: none !important;\n transition: none;\n }\n .navbar-expand-md .offcanvas .offcanvas-header {\n display: none;\n }\n .navbar-expand-md .offcanvas .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n@media (min-width: 992px) {\n .navbar-expand-lg {\n flex-wrap: nowrap;\n justify-content: flex-start;\n }\n .navbar-expand-lg .navbar-nav {\n flex-direction: row;\n }\n .navbar-expand-lg .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-lg .navbar-nav .nav-link {\n padding-right: var(--bs-navbar-nav-link-padding-x);\n padding-left: var(--bs-navbar-nav-link-padding-x);\n }\n .navbar-expand-lg .navbar-nav-scroll {\n overflow: visible;\n }\n .navbar-expand-lg .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n }\n .navbar-expand-lg .navbar-toggler {\n display: none;\n }\n .navbar-expand-lg .offcanvas {\n position: static;\n z-index: auto;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n transform: none !important;\n transition: none;\n }\n .navbar-expand-lg .offcanvas .offcanvas-header {\n display: none;\n }\n .navbar-expand-lg .offcanvas .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n@media (min-width: 1200px) {\n .navbar-expand-xl {\n flex-wrap: nowrap;\n justify-content: flex-start;\n }\n .navbar-expand-xl .navbar-nav {\n flex-direction: row;\n }\n .navbar-expand-xl .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-xl .navbar-nav .nav-link {\n padding-right: var(--bs-navbar-nav-link-padding-x);\n padding-left: var(--bs-navbar-nav-link-padding-x);\n }\n .navbar-expand-xl .navbar-nav-scroll {\n overflow: visible;\n }\n .navbar-expand-xl .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n }\n .navbar-expand-xl .navbar-toggler {\n display: none;\n }\n .navbar-expand-xl .offcanvas {\n position: static;\n z-index: auto;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n transform: none !important;\n transition: none;\n }\n .navbar-expand-xl .offcanvas .offcanvas-header {\n display: none;\n }\n .navbar-expand-xl .offcanvas .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n@media (min-width: 1400px) {\n .navbar-expand-xxl {\n flex-wrap: nowrap;\n justify-content: flex-start;\n }\n .navbar-expand-xxl .navbar-nav {\n flex-direction: row;\n }\n .navbar-expand-xxl .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-xxl .navbar-nav .nav-link {\n padding-right: var(--bs-navbar-nav-link-padding-x);\n padding-left: var(--bs-navbar-nav-link-padding-x);\n }\n .navbar-expand-xxl .navbar-nav-scroll {\n overflow: visible;\n }\n .navbar-expand-xxl .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n }\n .navbar-expand-xxl .navbar-toggler {\n display: none;\n }\n .navbar-expand-xxl .offcanvas {\n position: static;\n z-index: auto;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n transform: none !important;\n transition: none;\n }\n .navbar-expand-xxl .offcanvas .offcanvas-header {\n display: none;\n }\n .navbar-expand-xxl .offcanvas .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n.navbar-expand {\n flex-wrap: nowrap;\n justify-content: flex-start;\n}\n.navbar-expand .navbar-nav {\n flex-direction: row;\n}\n.navbar-expand .navbar-nav .dropdown-menu {\n position: absolute;\n}\n.navbar-expand .navbar-nav .nav-link {\n padding-right: var(--bs-navbar-nav-link-padding-x);\n padding-left: var(--bs-navbar-nav-link-padding-x);\n}\n.navbar-expand .navbar-nav-scroll {\n overflow: visible;\n}\n.navbar-expand .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n}\n.navbar-expand .navbar-toggler {\n display: none;\n}\n.navbar-expand .offcanvas {\n position: static;\n z-index: auto;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n transform: none !important;\n transition: none;\n}\n.navbar-expand .offcanvas .offcanvas-header {\n display: none;\n}\n.navbar-expand .offcanvas .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n}\n\n.navbar-dark,\n.navbar[data-bs-theme=dark] {\n --bs-navbar-color: rgba(255, 255, 255, 0.55);\n --bs-navbar-hover-color: rgba(255, 255, 255, 0.75);\n --bs-navbar-disabled-color: rgba(255, 255, 255, 0.25);\n --bs-navbar-active-color: #fff;\n --bs-navbar-brand-color: #fff;\n --bs-navbar-brand-hover-color: #fff;\n --bs-navbar-toggler-border-color: rgba(255, 255, 255, 0.1);\n --bs-navbar-toggler-icon-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\");\n}\n\n[data-bs-theme=dark] .navbar-toggler-icon {\n --bs-navbar-toggler-icon-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\");\n}\n\n.card {\n --bs-card-spacer-y: 1rem;\n --bs-card-spacer-x: 1rem;\n --bs-card-title-spacer-y: 0.5rem;\n --bs-card-title-color: ;\n --bs-card-subtitle-color: ;\n --bs-card-border-width: var(--bs-border-width);\n --bs-card-border-color: var(--bs-border-color-translucent);\n --bs-card-border-radius: var(--bs-border-radius);\n --bs-card-box-shadow: ;\n --bs-card-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));\n --bs-card-cap-padding-y: 0.5rem;\n --bs-card-cap-padding-x: 1rem;\n --bs-card-cap-bg: rgba(var(--bs-body-color-rgb), 0.03);\n --bs-card-cap-color: ;\n --bs-card-height: ;\n --bs-card-color: ;\n --bs-card-bg: var(--bs-body-bg);\n --bs-card-img-overlay-padding: 1rem;\n --bs-card-group-margin: 0.75rem;\n position: relative;\n display: flex;\n flex-direction: column;\n min-width: 0;\n height: var(--bs-card-height);\n color: var(--bs-body-color);\n word-wrap: break-word;\n background-color: var(--bs-card-bg);\n background-clip: border-box;\n border: var(--bs-card-border-width) solid var(--bs-card-border-color);\n border-radius: var(--bs-card-border-radius);\n}\n.card > hr {\n margin-right: 0;\n margin-left: 0;\n}\n.card > .list-group {\n border-top: inherit;\n border-bottom: inherit;\n}\n.card > .list-group:first-child {\n border-top-width: 0;\n border-top-left-radius: var(--bs-card-inner-border-radius);\n border-top-right-radius: var(--bs-card-inner-border-radius);\n}\n.card > .list-group:last-child {\n border-bottom-width: 0;\n border-bottom-right-radius: var(--bs-card-inner-border-radius);\n border-bottom-left-radius: var(--bs-card-inner-border-radius);\n}\n.card > .card-header + .list-group,\n.card > .list-group + .card-footer {\n border-top: 0;\n}\n\n.card-body {\n flex: 1 1 auto;\n padding: var(--bs-card-spacer-y) var(--bs-card-spacer-x);\n color: var(--bs-card-color);\n}\n\n.card-title {\n margin-bottom: var(--bs-card-title-spacer-y);\n color: var(--bs-card-title-color);\n}\n\n.card-subtitle {\n margin-top: calc(-0.5 * var(--bs-card-title-spacer-y));\n margin-bottom: 0;\n color: var(--bs-card-subtitle-color);\n}\n\n.card-text:last-child {\n margin-bottom: 0;\n}\n\n.card-link + .card-link {\n margin-left: var(--bs-card-spacer-x);\n}\n\n.card-header {\n padding: var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);\n margin-bottom: 0;\n color: var(--bs-card-cap-color);\n background-color: var(--bs-card-cap-bg);\n border-bottom: var(--bs-card-border-width) solid var(--bs-card-border-color);\n}\n.card-header:first-child {\n border-radius: var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius) 0 0;\n}\n\n.card-footer {\n padding: var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);\n color: var(--bs-card-cap-color);\n background-color: var(--bs-card-cap-bg);\n border-top: var(--bs-card-border-width) solid var(--bs-card-border-color);\n}\n.card-footer:last-child {\n border-radius: 0 0 var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius);\n}\n\n.card-header-tabs {\n margin-right: calc(-0.5 * var(--bs-card-cap-padding-x));\n margin-bottom: calc(-1 * var(--bs-card-cap-padding-y));\n margin-left: calc(-0.5 * var(--bs-card-cap-padding-x));\n border-bottom: 0;\n}\n.card-header-tabs .nav-link.active {\n background-color: var(--bs-card-bg);\n border-bottom-color: var(--bs-card-bg);\n}\n\n.card-header-pills {\n margin-right: calc(-0.5 * var(--bs-card-cap-padding-x));\n margin-left: calc(-0.5 * var(--bs-card-cap-padding-x));\n}\n\n.card-img-overlay {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n padding: var(--bs-card-img-overlay-padding);\n border-radius: var(--bs-card-inner-border-radius);\n}\n\n.card-img,\n.card-img-top,\n.card-img-bottom {\n width: 100%;\n}\n\n.card-img,\n.card-img-top {\n border-top-left-radius: var(--bs-card-inner-border-radius);\n border-top-right-radius: var(--bs-card-inner-border-radius);\n}\n\n.card-img,\n.card-img-bottom {\n border-bottom-right-radius: var(--bs-card-inner-border-radius);\n border-bottom-left-radius: var(--bs-card-inner-border-radius);\n}\n\n.card-group > .card {\n margin-bottom: var(--bs-card-group-margin);\n}\n@media (min-width: 576px) {\n .card-group {\n display: flex;\n flex-flow: row wrap;\n }\n .card-group > .card {\n flex: 1 0 0;\n margin-bottom: 0;\n }\n .card-group > .card + .card {\n margin-left: 0;\n border-left: 0;\n }\n .card-group > .card:not(:last-child) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n .card-group > .card:not(:last-child) > .card-img-top,\n .card-group > .card:not(:last-child) > .card-header {\n border-top-right-radius: 0;\n }\n .card-group > .card:not(:last-child) > .card-img-bottom,\n .card-group > .card:not(:last-child) > .card-footer {\n border-bottom-right-radius: 0;\n }\n .card-group > .card:not(:first-child) {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n .card-group > .card:not(:first-child) > .card-img-top,\n .card-group > .card:not(:first-child) > .card-header {\n border-top-left-radius: 0;\n }\n .card-group > .card:not(:first-child) > .card-img-bottom,\n .card-group > .card:not(:first-child) > .card-footer {\n border-bottom-left-radius: 0;\n }\n}\n\n.accordion {\n --bs-accordion-color: var(--bs-body-color);\n --bs-accordion-bg: var(--bs-body-bg);\n --bs-accordion-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease;\n --bs-accordion-border-color: var(--bs-border-color);\n --bs-accordion-border-width: var(--bs-border-width);\n --bs-accordion-border-radius: var(--bs-border-radius);\n --bs-accordion-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));\n --bs-accordion-btn-padding-x: 1.25rem;\n --bs-accordion-btn-padding-y: 1rem;\n --bs-accordion-btn-color: var(--bs-body-color);\n --bs-accordion-btn-bg: var(--bs-accordion-bg);\n --bs-accordion-btn-icon: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23212529' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='m2 5 6 6 6-6'/%3e%3c/svg%3e\");\n --bs-accordion-btn-icon-width: 1.25rem;\n --bs-accordion-btn-icon-transform: rotate(-180deg);\n --bs-accordion-btn-icon-transition: transform 0.2s ease-in-out;\n --bs-accordion-btn-active-icon: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23052c65' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='m2 5 6 6 6-6'/%3e%3c/svg%3e\");\n --bs-accordion-btn-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n --bs-accordion-body-padding-x: 1.25rem;\n --bs-accordion-body-padding-y: 1rem;\n --bs-accordion-active-color: var(--bs-primary-text-emphasis);\n --bs-accordion-active-bg: var(--bs-primary-bg-subtle);\n}\n\n.accordion-button {\n position: relative;\n display: flex;\n align-items: center;\n width: 100%;\n padding: var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);\n font-size: 1rem;\n color: var(--bs-accordion-btn-color);\n text-align: left;\n background-color: var(--bs-accordion-btn-bg);\n border: 0;\n border-radius: 0;\n overflow-anchor: none;\n transition: var(--bs-accordion-transition);\n}\n@media (prefers-reduced-motion: reduce) {\n .accordion-button {\n transition: none;\n }\n}\n.accordion-button:not(.collapsed) {\n color: var(--bs-accordion-active-color);\n background-color: var(--bs-accordion-active-bg);\n box-shadow: inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color);\n}\n.accordion-button:not(.collapsed)::after {\n background-image: var(--bs-accordion-btn-active-icon);\n transform: var(--bs-accordion-btn-icon-transform);\n}\n.accordion-button::after {\n flex-shrink: 0;\n width: var(--bs-accordion-btn-icon-width);\n height: var(--bs-accordion-btn-icon-width);\n margin-left: auto;\n content: \"\";\n background-image: var(--bs-accordion-btn-icon);\n background-repeat: no-repeat;\n background-size: var(--bs-accordion-btn-icon-width);\n transition: var(--bs-accordion-btn-icon-transition);\n}\n@media (prefers-reduced-motion: reduce) {\n .accordion-button::after {\n transition: none;\n }\n}\n.accordion-button:hover {\n z-index: 2;\n}\n.accordion-button:focus {\n z-index: 3;\n outline: 0;\n box-shadow: var(--bs-accordion-btn-focus-box-shadow);\n}\n\n.accordion-header {\n margin-bottom: 0;\n}\n\n.accordion-item {\n color: var(--bs-accordion-color);\n background-color: var(--bs-accordion-bg);\n border: var(--bs-accordion-border-width) solid var(--bs-accordion-border-color);\n}\n.accordion-item:first-of-type {\n border-top-left-radius: var(--bs-accordion-border-radius);\n border-top-right-radius: var(--bs-accordion-border-radius);\n}\n.accordion-item:first-of-type > .accordion-header .accordion-button {\n border-top-left-radius: var(--bs-accordion-inner-border-radius);\n border-top-right-radius: var(--bs-accordion-inner-border-radius);\n}\n.accordion-item:not(:first-of-type) {\n border-top: 0;\n}\n.accordion-item:last-of-type {\n border-bottom-right-radius: var(--bs-accordion-border-radius);\n border-bottom-left-radius: var(--bs-accordion-border-radius);\n}\n.accordion-item:last-of-type > .accordion-header .accordion-button.collapsed {\n border-bottom-right-radius: var(--bs-accordion-inner-border-radius);\n border-bottom-left-radius: var(--bs-accordion-inner-border-radius);\n}\n.accordion-item:last-of-type > .accordion-collapse {\n border-bottom-right-radius: var(--bs-accordion-border-radius);\n border-bottom-left-radius: var(--bs-accordion-border-radius);\n}\n\n.accordion-body {\n padding: var(--bs-accordion-body-padding-y) var(--bs-accordion-body-padding-x);\n}\n\n.accordion-flush > .accordion-item {\n border-right: 0;\n border-left: 0;\n border-radius: 0;\n}\n.accordion-flush > .accordion-item:first-child {\n border-top: 0;\n}\n.accordion-flush > .accordion-item:last-child {\n border-bottom: 0;\n}\n.accordion-flush > .accordion-item > .accordion-collapse,\n.accordion-flush > .accordion-item > .accordion-header .accordion-button,\n.accordion-flush > .accordion-item > .accordion-header .accordion-button.collapsed {\n border-radius: 0;\n}\n\n[data-bs-theme=dark] .accordion-button::after {\n --bs-accordion-btn-icon: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236ea8fe'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708'/%3e%3c/svg%3e\");\n --bs-accordion-btn-active-icon: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236ea8fe'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708'/%3e%3c/svg%3e\");\n}\n\n.breadcrumb {\n --bs-breadcrumb-padding-x: 0;\n --bs-breadcrumb-padding-y: 0;\n --bs-breadcrumb-margin-bottom: 1rem;\n --bs-breadcrumb-bg: ;\n --bs-breadcrumb-border-radius: ;\n --bs-breadcrumb-divider-color: var(--bs-secondary-color);\n --bs-breadcrumb-item-padding-x: 0.5rem;\n --bs-breadcrumb-item-active-color: var(--bs-secondary-color);\n display: flex;\n flex-wrap: wrap;\n padding: var(--bs-breadcrumb-padding-y) var(--bs-breadcrumb-padding-x);\n margin-bottom: var(--bs-breadcrumb-margin-bottom);\n font-size: var(--bs-breadcrumb-font-size);\n list-style: none;\n background-color: var(--bs-breadcrumb-bg);\n border-radius: var(--bs-breadcrumb-border-radius);\n}\n\n.breadcrumb-item + .breadcrumb-item {\n padding-left: var(--bs-breadcrumb-item-padding-x);\n}\n.breadcrumb-item + .breadcrumb-item::before {\n float: left;\n padding-right: var(--bs-breadcrumb-item-padding-x);\n color: var(--bs-breadcrumb-divider-color);\n content: var(--bs-breadcrumb-divider, \"/\") /* rtl: var(--bs-breadcrumb-divider, \"/\") */;\n}\n.breadcrumb-item.active {\n color: var(--bs-breadcrumb-item-active-color);\n}\n\n.pagination {\n --bs-pagination-padding-x: 0.75rem;\n --bs-pagination-padding-y: 0.375rem;\n --bs-pagination-font-size: 1rem;\n --bs-pagination-color: var(--bs-link-color);\n --bs-pagination-bg: var(--bs-body-bg);\n --bs-pagination-border-width: var(--bs-border-width);\n --bs-pagination-border-color: var(--bs-border-color);\n --bs-pagination-border-radius: var(--bs-border-radius);\n --bs-pagination-hover-color: var(--bs-link-hover-color);\n --bs-pagination-hover-bg: var(--bs-tertiary-bg);\n --bs-pagination-hover-border-color: var(--bs-border-color);\n --bs-pagination-focus-color: var(--bs-link-hover-color);\n --bs-pagination-focus-bg: var(--bs-secondary-bg);\n --bs-pagination-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n --bs-pagination-active-color: #fff;\n --bs-pagination-active-bg: #0d6efd;\n --bs-pagination-active-border-color: #0d6efd;\n --bs-pagination-disabled-color: var(--bs-secondary-color);\n --bs-pagination-disabled-bg: var(--bs-secondary-bg);\n --bs-pagination-disabled-border-color: var(--bs-border-color);\n display: flex;\n padding-left: 0;\n list-style: none;\n}\n\n.page-link {\n position: relative;\n display: block;\n padding: var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);\n font-size: var(--bs-pagination-font-size);\n color: var(--bs-pagination-color);\n text-decoration: none;\n background-color: var(--bs-pagination-bg);\n border: var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .page-link {\n transition: none;\n }\n}\n.page-link:hover {\n z-index: 2;\n color: var(--bs-pagination-hover-color);\n background-color: var(--bs-pagination-hover-bg);\n border-color: var(--bs-pagination-hover-border-color);\n}\n.page-link:focus {\n z-index: 3;\n color: var(--bs-pagination-focus-color);\n background-color: var(--bs-pagination-focus-bg);\n outline: 0;\n box-shadow: var(--bs-pagination-focus-box-shadow);\n}\n.page-link.active, .active > .page-link {\n z-index: 3;\n color: var(--bs-pagination-active-color);\n background-color: var(--bs-pagination-active-bg);\n border-color: var(--bs-pagination-active-border-color);\n}\n.page-link.disabled, .disabled > .page-link {\n color: var(--bs-pagination-disabled-color);\n pointer-events: none;\n background-color: var(--bs-pagination-disabled-bg);\n border-color: var(--bs-pagination-disabled-border-color);\n}\n\n.page-item:not(:first-child) .page-link {\n margin-left: calc(-1 * var(--bs-border-width));\n}\n.page-item:first-child .page-link {\n border-top-left-radius: var(--bs-pagination-border-radius);\n border-bottom-left-radius: var(--bs-pagination-border-radius);\n}\n.page-item:last-child .page-link {\n border-top-right-radius: var(--bs-pagination-border-radius);\n border-bottom-right-radius: var(--bs-pagination-border-radius);\n}\n\n.pagination-lg {\n --bs-pagination-padding-x: 1.5rem;\n --bs-pagination-padding-y: 0.75rem;\n --bs-pagination-font-size: 1.25rem;\n --bs-pagination-border-radius: var(--bs-border-radius-lg);\n}\n\n.pagination-sm {\n --bs-pagination-padding-x: 0.5rem;\n --bs-pagination-padding-y: 0.25rem;\n --bs-pagination-font-size: 0.875rem;\n --bs-pagination-border-radius: var(--bs-border-radius-sm);\n}\n\n.badge {\n --bs-badge-padding-x: 0.65em;\n --bs-badge-padding-y: 0.35em;\n --bs-badge-font-size: 0.75em;\n --bs-badge-font-weight: 700;\n --bs-badge-color: #fff;\n --bs-badge-border-radius: var(--bs-border-radius);\n display: inline-block;\n padding: var(--bs-badge-padding-y) var(--bs-badge-padding-x);\n font-size: var(--bs-badge-font-size);\n font-weight: var(--bs-badge-font-weight);\n line-height: 1;\n color: var(--bs-badge-color);\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n border-radius: var(--bs-badge-border-radius);\n}\n.badge:empty {\n display: none;\n}\n\n.btn .badge {\n position: relative;\n top: -1px;\n}\n\n.alert {\n --bs-alert-bg: transparent;\n --bs-alert-padding-x: 1rem;\n --bs-alert-padding-y: 1rem;\n --bs-alert-margin-bottom: 1rem;\n --bs-alert-color: inherit;\n --bs-alert-border-color: transparent;\n --bs-alert-border: var(--bs-border-width) solid var(--bs-alert-border-color);\n --bs-alert-border-radius: var(--bs-border-radius);\n --bs-alert-link-color: inherit;\n position: relative;\n padding: var(--bs-alert-padding-y) var(--bs-alert-padding-x);\n margin-bottom: var(--bs-alert-margin-bottom);\n color: var(--bs-alert-color);\n background-color: var(--bs-alert-bg);\n border: var(--bs-alert-border);\n border-radius: var(--bs-alert-border-radius);\n}\n\n.alert-heading {\n color: inherit;\n}\n\n.alert-link {\n font-weight: 700;\n color: var(--bs-alert-link-color);\n}\n\n.alert-dismissible {\n padding-right: 3rem;\n}\n.alert-dismissible .btn-close {\n position: absolute;\n top: 0;\n right: 0;\n z-index: 2;\n padding: 1.25rem 1rem;\n}\n\n.alert-primary {\n --bs-alert-color: var(--bs-primary-text-emphasis);\n --bs-alert-bg: var(--bs-primary-bg-subtle);\n --bs-alert-border-color: var(--bs-primary-border-subtle);\n --bs-alert-link-color: var(--bs-primary-text-emphasis);\n}\n\n.alert-secondary {\n --bs-alert-color: var(--bs-secondary-text-emphasis);\n --bs-alert-bg: var(--bs-secondary-bg-subtle);\n --bs-alert-border-color: var(--bs-secondary-border-subtle);\n --bs-alert-link-color: var(--bs-secondary-text-emphasis);\n}\n\n.alert-success {\n --bs-alert-color: var(--bs-success-text-emphasis);\n --bs-alert-bg: var(--bs-success-bg-subtle);\n --bs-alert-border-color: var(--bs-success-border-subtle);\n --bs-alert-link-color: var(--bs-success-text-emphasis);\n}\n\n.alert-info {\n --bs-alert-color: var(--bs-info-text-emphasis);\n --bs-alert-bg: var(--bs-info-bg-subtle);\n --bs-alert-border-color: var(--bs-info-border-subtle);\n --bs-alert-link-color: var(--bs-info-text-emphasis);\n}\n\n.alert-warning {\n --bs-alert-color: var(--bs-warning-text-emphasis);\n --bs-alert-bg: var(--bs-warning-bg-subtle);\n --bs-alert-border-color: var(--bs-warning-border-subtle);\n --bs-alert-link-color: var(--bs-warning-text-emphasis);\n}\n\n.alert-danger {\n --bs-alert-color: var(--bs-danger-text-emphasis);\n --bs-alert-bg: var(--bs-danger-bg-subtle);\n --bs-alert-border-color: var(--bs-danger-border-subtle);\n --bs-alert-link-color: var(--bs-danger-text-emphasis);\n}\n\n.alert-light {\n --bs-alert-color: var(--bs-light-text-emphasis);\n --bs-alert-bg: var(--bs-light-bg-subtle);\n --bs-alert-border-color: var(--bs-light-border-subtle);\n --bs-alert-link-color: var(--bs-light-text-emphasis);\n}\n\n.alert-dark {\n --bs-alert-color: var(--bs-dark-text-emphasis);\n --bs-alert-bg: var(--bs-dark-bg-subtle);\n --bs-alert-border-color: var(--bs-dark-border-subtle);\n --bs-alert-link-color: var(--bs-dark-text-emphasis);\n}\n\n@keyframes progress-bar-stripes {\n 0% {\n background-position-x: var(--bs-progress-height);\n }\n}\n.progress,\n.progress-stacked {\n --bs-progress-height: 1rem;\n --bs-progress-font-size: 0.75rem;\n --bs-progress-bg: var(--bs-secondary-bg);\n --bs-progress-border-radius: var(--bs-border-radius);\n --bs-progress-box-shadow: var(--bs-box-shadow-inset);\n --bs-progress-bar-color: #fff;\n --bs-progress-bar-bg: #0d6efd;\n --bs-progress-bar-transition: width 0.6s ease;\n display: flex;\n height: var(--bs-progress-height);\n overflow: hidden;\n font-size: var(--bs-progress-font-size);\n background-color: var(--bs-progress-bg);\n border-radius: var(--bs-progress-border-radius);\n}\n\n.progress-bar {\n display: flex;\n flex-direction: column;\n justify-content: center;\n overflow: hidden;\n color: var(--bs-progress-bar-color);\n text-align: center;\n white-space: nowrap;\n background-color: var(--bs-progress-bar-bg);\n transition: var(--bs-progress-bar-transition);\n}\n@media (prefers-reduced-motion: reduce) {\n .progress-bar {\n transition: none;\n }\n}\n\n.progress-bar-striped {\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-size: var(--bs-progress-height) var(--bs-progress-height);\n}\n\n.progress-stacked > .progress {\n overflow: visible;\n}\n\n.progress-stacked > .progress > .progress-bar {\n width: 100%;\n}\n\n.progress-bar-animated {\n animation: 1s linear infinite progress-bar-stripes;\n}\n@media (prefers-reduced-motion: reduce) {\n .progress-bar-animated {\n animation: none;\n }\n}\n\n.list-group {\n --bs-list-group-color: var(--bs-body-color);\n --bs-list-group-bg: var(--bs-body-bg);\n --bs-list-group-border-color: var(--bs-border-color);\n --bs-list-group-border-width: var(--bs-border-width);\n --bs-list-group-border-radius: var(--bs-border-radius);\n --bs-list-group-item-padding-x: 1rem;\n --bs-list-group-item-padding-y: 0.5rem;\n --bs-list-group-action-color: var(--bs-secondary-color);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-tertiary-bg);\n --bs-list-group-action-active-color: var(--bs-body-color);\n --bs-list-group-action-active-bg: var(--bs-secondary-bg);\n --bs-list-group-disabled-color: var(--bs-secondary-color);\n --bs-list-group-disabled-bg: var(--bs-body-bg);\n --bs-list-group-active-color: #fff;\n --bs-list-group-active-bg: #0d6efd;\n --bs-list-group-active-border-color: #0d6efd;\n display: flex;\n flex-direction: column;\n padding-left: 0;\n margin-bottom: 0;\n border-radius: var(--bs-list-group-border-radius);\n}\n\n.list-group-numbered {\n list-style-type: none;\n counter-reset: section;\n}\n.list-group-numbered > .list-group-item::before {\n content: counters(section, \".\") \". \";\n counter-increment: section;\n}\n\n.list-group-item {\n position: relative;\n display: block;\n padding: var(--bs-list-group-item-padding-y) var(--bs-list-group-item-padding-x);\n color: var(--bs-list-group-color);\n text-decoration: none;\n background-color: var(--bs-list-group-bg);\n border: var(--bs-list-group-border-width) solid var(--bs-list-group-border-color);\n}\n.list-group-item:first-child {\n border-top-left-radius: inherit;\n border-top-right-radius: inherit;\n}\n.list-group-item:last-child {\n border-bottom-right-radius: inherit;\n border-bottom-left-radius: inherit;\n}\n.list-group-item.disabled, .list-group-item:disabled {\n color: var(--bs-list-group-disabled-color);\n pointer-events: none;\n background-color: var(--bs-list-group-disabled-bg);\n}\n.list-group-item.active {\n z-index: 2;\n color: var(--bs-list-group-active-color);\n background-color: var(--bs-list-group-active-bg);\n border-color: var(--bs-list-group-active-border-color);\n}\n.list-group-item + .list-group-item {\n border-top-width: 0;\n}\n.list-group-item + .list-group-item.active {\n margin-top: calc(-1 * var(--bs-list-group-border-width));\n border-top-width: var(--bs-list-group-border-width);\n}\n\n.list-group-item-action {\n width: 100%;\n color: var(--bs-list-group-action-color);\n text-align: inherit;\n}\n.list-group-item-action:not(.active):hover, .list-group-item-action:not(.active):focus {\n z-index: 1;\n color: var(--bs-list-group-action-hover-color);\n text-decoration: none;\n background-color: var(--bs-list-group-action-hover-bg);\n}\n.list-group-item-action:not(.active):active {\n color: var(--bs-list-group-action-active-color);\n background-color: var(--bs-list-group-action-active-bg);\n}\n\n.list-group-horizontal {\n flex-direction: row;\n}\n.list-group-horizontal > .list-group-item:first-child:not(:last-child) {\n border-bottom-left-radius: var(--bs-list-group-border-radius);\n border-top-right-radius: 0;\n}\n.list-group-horizontal > .list-group-item:last-child:not(:first-child) {\n border-top-right-radius: var(--bs-list-group-border-radius);\n border-bottom-left-radius: 0;\n}\n.list-group-horizontal > .list-group-item.active {\n margin-top: 0;\n}\n.list-group-horizontal > .list-group-item + .list-group-item {\n border-top-width: var(--bs-list-group-border-width);\n border-left-width: 0;\n}\n.list-group-horizontal > .list-group-item + .list-group-item.active {\n margin-left: calc(-1 * var(--bs-list-group-border-width));\n border-left-width: var(--bs-list-group-border-width);\n}\n\n@media (min-width: 576px) {\n .list-group-horizontal-sm {\n flex-direction: row;\n }\n .list-group-horizontal-sm > .list-group-item:first-child:not(:last-child) {\n border-bottom-left-radius: var(--bs-list-group-border-radius);\n border-top-right-radius: 0;\n }\n .list-group-horizontal-sm > .list-group-item:last-child:not(:first-child) {\n border-top-right-radius: var(--bs-list-group-border-radius);\n border-bottom-left-radius: 0;\n }\n .list-group-horizontal-sm > .list-group-item.active {\n margin-top: 0;\n }\n .list-group-horizontal-sm > .list-group-item + .list-group-item {\n border-top-width: var(--bs-list-group-border-width);\n border-left-width: 0;\n }\n .list-group-horizontal-sm > .list-group-item + .list-group-item.active {\n margin-left: calc(-1 * var(--bs-list-group-border-width));\n border-left-width: var(--bs-list-group-border-width);\n }\n}\n@media (min-width: 768px) {\n .list-group-horizontal-md {\n flex-direction: row;\n }\n .list-group-horizontal-md > .list-group-item:first-child:not(:last-child) {\n border-bottom-left-radius: var(--bs-list-group-border-radius);\n border-top-right-radius: 0;\n }\n .list-group-horizontal-md > .list-group-item:last-child:not(:first-child) {\n border-top-right-radius: var(--bs-list-group-border-radius);\n border-bottom-left-radius: 0;\n }\n .list-group-horizontal-md > .list-group-item.active {\n margin-top: 0;\n }\n .list-group-horizontal-md > .list-group-item + .list-group-item {\n border-top-width: var(--bs-list-group-border-width);\n border-left-width: 0;\n }\n .list-group-horizontal-md > .list-group-item + .list-group-item.active {\n margin-left: calc(-1 * var(--bs-list-group-border-width));\n border-left-width: var(--bs-list-group-border-width);\n }\n}\n@media (min-width: 992px) {\n .list-group-horizontal-lg {\n flex-direction: row;\n }\n .list-group-horizontal-lg > .list-group-item:first-child:not(:last-child) {\n border-bottom-left-radius: var(--bs-list-group-border-radius);\n border-top-right-radius: 0;\n }\n .list-group-horizontal-lg > .list-group-item:last-child:not(:first-child) {\n border-top-right-radius: var(--bs-list-group-border-radius);\n border-bottom-left-radius: 0;\n }\n .list-group-horizontal-lg > .list-group-item.active {\n margin-top: 0;\n }\n .list-group-horizontal-lg > .list-group-item + .list-group-item {\n border-top-width: var(--bs-list-group-border-width);\n border-left-width: 0;\n }\n .list-group-horizontal-lg > .list-group-item + .list-group-item.active {\n margin-left: calc(-1 * var(--bs-list-group-border-width));\n border-left-width: var(--bs-list-group-border-width);\n }\n}\n@media (min-width: 1200px) {\n .list-group-horizontal-xl {\n flex-direction: row;\n }\n .list-group-horizontal-xl > .list-group-item:first-child:not(:last-child) {\n border-bottom-left-radius: var(--bs-list-group-border-radius);\n border-top-right-radius: 0;\n }\n .list-group-horizontal-xl > .list-group-item:last-child:not(:first-child) {\n border-top-right-radius: var(--bs-list-group-border-radius);\n border-bottom-left-radius: 0;\n }\n .list-group-horizontal-xl > .list-group-item.active {\n margin-top: 0;\n }\n .list-group-horizontal-xl > .list-group-item + .list-group-item {\n border-top-width: var(--bs-list-group-border-width);\n border-left-width: 0;\n }\n .list-group-horizontal-xl > .list-group-item + .list-group-item.active {\n margin-left: calc(-1 * var(--bs-list-group-border-width));\n border-left-width: var(--bs-list-group-border-width);\n }\n}\n@media (min-width: 1400px) {\n .list-group-horizontal-xxl {\n flex-direction: row;\n }\n .list-group-horizontal-xxl > .list-group-item:first-child:not(:last-child) {\n border-bottom-left-radius: var(--bs-list-group-border-radius);\n border-top-right-radius: 0;\n }\n .list-group-horizontal-xxl > .list-group-item:last-child:not(:first-child) {\n border-top-right-radius: var(--bs-list-group-border-radius);\n border-bottom-left-radius: 0;\n }\n .list-group-horizontal-xxl > .list-group-item.active {\n margin-top: 0;\n }\n .list-group-horizontal-xxl > .list-group-item + .list-group-item {\n border-top-width: var(--bs-list-group-border-width);\n border-left-width: 0;\n }\n .list-group-horizontal-xxl > .list-group-item + .list-group-item.active {\n margin-left: calc(-1 * var(--bs-list-group-border-width));\n border-left-width: var(--bs-list-group-border-width);\n }\n}\n.list-group-flush {\n border-radius: 0;\n}\n.list-group-flush > .list-group-item {\n border-width: 0 0 var(--bs-list-group-border-width);\n}\n.list-group-flush > .list-group-item:last-child {\n border-bottom-width: 0;\n}\n\n.list-group-item-primary {\n --bs-list-group-color: var(--bs-primary-text-emphasis);\n --bs-list-group-bg: var(--bs-primary-bg-subtle);\n --bs-list-group-border-color: var(--bs-primary-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-primary-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-primary-border-subtle);\n --bs-list-group-active-color: var(--bs-primary-bg-subtle);\n --bs-list-group-active-bg: var(--bs-primary-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-primary-text-emphasis);\n}\n\n.list-group-item-secondary {\n --bs-list-group-color: var(--bs-secondary-text-emphasis);\n --bs-list-group-bg: var(--bs-secondary-bg-subtle);\n --bs-list-group-border-color: var(--bs-secondary-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-secondary-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-secondary-border-subtle);\n --bs-list-group-active-color: var(--bs-secondary-bg-subtle);\n --bs-list-group-active-bg: var(--bs-secondary-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-secondary-text-emphasis);\n}\n\n.list-group-item-success {\n --bs-list-group-color: var(--bs-success-text-emphasis);\n --bs-list-group-bg: var(--bs-success-bg-subtle);\n --bs-list-group-border-color: var(--bs-success-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-success-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-success-border-subtle);\n --bs-list-group-active-color: var(--bs-success-bg-subtle);\n --bs-list-group-active-bg: var(--bs-success-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-success-text-emphasis);\n}\n\n.list-group-item-info {\n --bs-list-group-color: var(--bs-info-text-emphasis);\n --bs-list-group-bg: var(--bs-info-bg-subtle);\n --bs-list-group-border-color: var(--bs-info-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-info-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-info-border-subtle);\n --bs-list-group-active-color: var(--bs-info-bg-subtle);\n --bs-list-group-active-bg: var(--bs-info-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-info-text-emphasis);\n}\n\n.list-group-item-warning {\n --bs-list-group-color: var(--bs-warning-text-emphasis);\n --bs-list-group-bg: var(--bs-warning-bg-subtle);\n --bs-list-group-border-color: var(--bs-warning-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-warning-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-warning-border-subtle);\n --bs-list-group-active-color: var(--bs-warning-bg-subtle);\n --bs-list-group-active-bg: var(--bs-warning-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-warning-text-emphasis);\n}\n\n.list-group-item-danger {\n --bs-list-group-color: var(--bs-danger-text-emphasis);\n --bs-list-group-bg: var(--bs-danger-bg-subtle);\n --bs-list-group-border-color: var(--bs-danger-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-danger-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-danger-border-subtle);\n --bs-list-group-active-color: var(--bs-danger-bg-subtle);\n --bs-list-group-active-bg: var(--bs-danger-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-danger-text-emphasis);\n}\n\n.list-group-item-light {\n --bs-list-group-color: var(--bs-light-text-emphasis);\n --bs-list-group-bg: var(--bs-light-bg-subtle);\n --bs-list-group-border-color: var(--bs-light-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-light-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-light-border-subtle);\n --bs-list-group-active-color: var(--bs-light-bg-subtle);\n --bs-list-group-active-bg: var(--bs-light-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-light-text-emphasis);\n}\n\n.list-group-item-dark {\n --bs-list-group-color: var(--bs-dark-text-emphasis);\n --bs-list-group-bg: var(--bs-dark-bg-subtle);\n --bs-list-group-border-color: var(--bs-dark-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-dark-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-dark-border-subtle);\n --bs-list-group-active-color: var(--bs-dark-bg-subtle);\n --bs-list-group-active-bg: var(--bs-dark-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-dark-text-emphasis);\n}\n\n.btn-close {\n --bs-btn-close-color: #000;\n --bs-btn-close-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414'/%3e%3c/svg%3e\");\n --bs-btn-close-opacity: 0.5;\n --bs-btn-close-hover-opacity: 0.75;\n --bs-btn-close-focus-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n --bs-btn-close-focus-opacity: 1;\n --bs-btn-close-disabled-opacity: 0.25;\n box-sizing: content-box;\n width: 1em;\n height: 1em;\n padding: 0.25em 0.25em;\n color: var(--bs-btn-close-color);\n background: transparent var(--bs-btn-close-bg) center/1em auto no-repeat;\n filter: var(--bs-btn-close-filter);\n border: 0;\n border-radius: 0.375rem;\n opacity: var(--bs-btn-close-opacity);\n}\n.btn-close:hover {\n color: var(--bs-btn-close-color);\n text-decoration: none;\n opacity: var(--bs-btn-close-hover-opacity);\n}\n.btn-close:focus {\n outline: 0;\n box-shadow: var(--bs-btn-close-focus-shadow);\n opacity: var(--bs-btn-close-focus-opacity);\n}\n.btn-close:disabled, .btn-close.disabled {\n pointer-events: none;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n opacity: var(--bs-btn-close-disabled-opacity);\n}\n\n.btn-close-white {\n --bs-btn-close-filter: invert(1) grayscale(100%) brightness(200%);\n}\n\n:root,\n[data-bs-theme=light] {\n --bs-btn-close-filter: ;\n}\n\n[data-bs-theme=dark] {\n --bs-btn-close-filter: invert(1) grayscale(100%) brightness(200%);\n}\n\n.toast {\n --bs-toast-zindex: 1090;\n --bs-toast-padding-x: 0.75rem;\n --bs-toast-padding-y: 0.5rem;\n --bs-toast-spacing: 1.5rem;\n --bs-toast-max-width: 350px;\n --bs-toast-font-size: 0.875rem;\n --bs-toast-color: ;\n --bs-toast-bg: rgba(var(--bs-body-bg-rgb), 0.85);\n --bs-toast-border-width: var(--bs-border-width);\n --bs-toast-border-color: var(--bs-border-color-translucent);\n --bs-toast-border-radius: var(--bs-border-radius);\n --bs-toast-box-shadow: var(--bs-box-shadow);\n --bs-toast-header-color: var(--bs-secondary-color);\n --bs-toast-header-bg: rgba(var(--bs-body-bg-rgb), 0.85);\n --bs-toast-header-border-color: var(--bs-border-color-translucent);\n width: var(--bs-toast-max-width);\n max-width: 100%;\n font-size: var(--bs-toast-font-size);\n color: var(--bs-toast-color);\n pointer-events: auto;\n background-color: var(--bs-toast-bg);\n background-clip: padding-box;\n border: var(--bs-toast-border-width) solid var(--bs-toast-border-color);\n box-shadow: var(--bs-toast-box-shadow);\n border-radius: var(--bs-toast-border-radius);\n}\n.toast.showing {\n opacity: 0;\n}\n.toast:not(.show) {\n display: none;\n}\n\n.toast-container {\n --bs-toast-zindex: 1090;\n position: absolute;\n z-index: var(--bs-toast-zindex);\n width: -webkit-max-content;\n width: -moz-max-content;\n width: max-content;\n max-width: 100%;\n pointer-events: none;\n}\n.toast-container > :not(:last-child) {\n margin-bottom: var(--bs-toast-spacing);\n}\n\n.toast-header {\n display: flex;\n align-items: center;\n padding: var(--bs-toast-padding-y) var(--bs-toast-padding-x);\n color: var(--bs-toast-header-color);\n background-color: var(--bs-toast-header-bg);\n background-clip: padding-box;\n border-bottom: var(--bs-toast-border-width) solid var(--bs-toast-header-border-color);\n border-top-left-radius: calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));\n border-top-right-radius: calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));\n}\n.toast-header .btn-close {\n margin-right: calc(-0.5 * var(--bs-toast-padding-x));\n margin-left: var(--bs-toast-padding-x);\n}\n\n.toast-body {\n padding: var(--bs-toast-padding-x);\n word-wrap: break-word;\n}\n\n.modal {\n --bs-modal-zindex: 1055;\n --bs-modal-width: 500px;\n --bs-modal-padding: 1rem;\n --bs-modal-margin: 0.5rem;\n --bs-modal-color: var(--bs-body-color);\n --bs-modal-bg: var(--bs-body-bg);\n --bs-modal-border-color: var(--bs-border-color-translucent);\n --bs-modal-border-width: var(--bs-border-width);\n --bs-modal-border-radius: var(--bs-border-radius-lg);\n --bs-modal-box-shadow: var(--bs-box-shadow-sm);\n --bs-modal-inner-border-radius: calc(var(--bs-border-radius-lg) - (var(--bs-border-width)));\n --bs-modal-header-padding-x: 1rem;\n --bs-modal-header-padding-y: 1rem;\n --bs-modal-header-padding: 1rem 1rem;\n --bs-modal-header-border-color: var(--bs-border-color);\n --bs-modal-header-border-width: var(--bs-border-width);\n --bs-modal-title-line-height: 1.5;\n --bs-modal-footer-gap: 0.5rem;\n --bs-modal-footer-bg: ;\n --bs-modal-footer-border-color: var(--bs-border-color);\n --bs-modal-footer-border-width: var(--bs-border-width);\n position: fixed;\n top: 0;\n left: 0;\n z-index: var(--bs-modal-zindex);\n display: none;\n width: 100%;\n height: 100%;\n overflow-x: hidden;\n overflow-y: auto;\n outline: 0;\n}\n\n.modal-dialog {\n position: relative;\n width: auto;\n margin: var(--bs-modal-margin);\n pointer-events: none;\n}\n.modal.fade .modal-dialog {\n transform: translate(0, -50px);\n transition: transform 0.3s ease-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .modal.fade .modal-dialog {\n transition: none;\n }\n}\n.modal.show .modal-dialog {\n transform: none;\n}\n.modal.modal-static .modal-dialog {\n transform: scale(1.02);\n}\n\n.modal-dialog-scrollable {\n height: calc(100% - var(--bs-modal-margin) * 2);\n}\n.modal-dialog-scrollable .modal-content {\n max-height: 100%;\n overflow: hidden;\n}\n.modal-dialog-scrollable .modal-body {\n overflow-y: auto;\n}\n\n.modal-dialog-centered {\n display: flex;\n align-items: center;\n min-height: calc(100% - var(--bs-modal-margin) * 2);\n}\n\n.modal-content {\n position: relative;\n display: flex;\n flex-direction: column;\n width: 100%;\n color: var(--bs-modal-color);\n pointer-events: auto;\n background-color: var(--bs-modal-bg);\n background-clip: padding-box;\n border: var(--bs-modal-border-width) solid var(--bs-modal-border-color);\n border-radius: var(--bs-modal-border-radius);\n outline: 0;\n}\n\n.modal-backdrop {\n --bs-backdrop-zindex: 1050;\n --bs-backdrop-bg: #000;\n --bs-backdrop-opacity: 0.5;\n position: fixed;\n top: 0;\n left: 0;\n z-index: var(--bs-backdrop-zindex);\n width: 100vw;\n height: 100vh;\n background-color: var(--bs-backdrop-bg);\n}\n.modal-backdrop.fade {\n opacity: 0;\n}\n.modal-backdrop.show {\n opacity: var(--bs-backdrop-opacity);\n}\n\n.modal-header {\n display: flex;\n flex-shrink: 0;\n align-items: center;\n padding: var(--bs-modal-header-padding);\n border-bottom: var(--bs-modal-header-border-width) solid var(--bs-modal-header-border-color);\n border-top-left-radius: var(--bs-modal-inner-border-radius);\n border-top-right-radius: var(--bs-modal-inner-border-radius);\n}\n.modal-header .btn-close {\n padding: calc(var(--bs-modal-header-padding-y) * 0.5) calc(var(--bs-modal-header-padding-x) * 0.5);\n margin-top: calc(-0.5 * var(--bs-modal-header-padding-y));\n margin-right: calc(-0.5 * var(--bs-modal-header-padding-x));\n margin-bottom: calc(-0.5 * var(--bs-modal-header-padding-y));\n margin-left: auto;\n}\n\n.modal-title {\n margin-bottom: 0;\n line-height: var(--bs-modal-title-line-height);\n}\n\n.modal-body {\n position: relative;\n flex: 1 1 auto;\n padding: var(--bs-modal-padding);\n}\n\n.modal-footer {\n display: flex;\n flex-shrink: 0;\n flex-wrap: wrap;\n align-items: center;\n justify-content: flex-end;\n padding: calc(var(--bs-modal-padding) - var(--bs-modal-footer-gap) * 0.5);\n background-color: var(--bs-modal-footer-bg);\n border-top: var(--bs-modal-footer-border-width) solid var(--bs-modal-footer-border-color);\n border-bottom-right-radius: var(--bs-modal-inner-border-radius);\n border-bottom-left-radius: var(--bs-modal-inner-border-radius);\n}\n.modal-footer > * {\n margin: calc(var(--bs-modal-footer-gap) * 0.5);\n}\n\n@media (min-width: 576px) {\n .modal {\n --bs-modal-margin: 1.75rem;\n --bs-modal-box-shadow: var(--bs-box-shadow);\n }\n .modal-dialog {\n max-width: var(--bs-modal-width);\n margin-right: auto;\n margin-left: auto;\n }\n .modal-sm {\n --bs-modal-width: 300px;\n }\n}\n@media (min-width: 992px) {\n .modal-lg,\n .modal-xl {\n --bs-modal-width: 800px;\n }\n}\n@media (min-width: 1200px) {\n .modal-xl {\n --bs-modal-width: 1140px;\n }\n}\n.modal-fullscreen {\n width: 100vw;\n max-width: none;\n height: 100%;\n margin: 0;\n}\n.modal-fullscreen .modal-content {\n height: 100%;\n border: 0;\n border-radius: 0;\n}\n.modal-fullscreen .modal-header,\n.modal-fullscreen .modal-footer {\n border-radius: 0;\n}\n.modal-fullscreen .modal-body {\n overflow-y: auto;\n}\n\n@media (max-width: 575.98px) {\n .modal-fullscreen-sm-down {\n width: 100vw;\n max-width: none;\n height: 100%;\n margin: 0;\n }\n .modal-fullscreen-sm-down .modal-content {\n height: 100%;\n border: 0;\n border-radius: 0;\n }\n .modal-fullscreen-sm-down .modal-header,\n .modal-fullscreen-sm-down .modal-footer {\n border-radius: 0;\n }\n .modal-fullscreen-sm-down .modal-body {\n overflow-y: auto;\n }\n}\n@media (max-width: 767.98px) {\n .modal-fullscreen-md-down {\n width: 100vw;\n max-width: none;\n height: 100%;\n margin: 0;\n }\n .modal-fullscreen-md-down .modal-content {\n height: 100%;\n border: 0;\n border-radius: 0;\n }\n .modal-fullscreen-md-down .modal-header,\n .modal-fullscreen-md-down .modal-footer {\n border-radius: 0;\n }\n .modal-fullscreen-md-down .modal-body {\n overflow-y: auto;\n }\n}\n@media (max-width: 991.98px) {\n .modal-fullscreen-lg-down {\n width: 100vw;\n max-width: none;\n height: 100%;\n margin: 0;\n }\n .modal-fullscreen-lg-down .modal-content {\n height: 100%;\n border: 0;\n border-radius: 0;\n }\n .modal-fullscreen-lg-down .modal-header,\n .modal-fullscreen-lg-down .modal-footer {\n border-radius: 0;\n }\n .modal-fullscreen-lg-down .modal-body {\n overflow-y: auto;\n }\n}\n@media (max-width: 1199.98px) {\n .modal-fullscreen-xl-down {\n width: 100vw;\n max-width: none;\n height: 100%;\n margin: 0;\n }\n .modal-fullscreen-xl-down .modal-content {\n height: 100%;\n border: 0;\n border-radius: 0;\n }\n .modal-fullscreen-xl-down .modal-header,\n .modal-fullscreen-xl-down .modal-footer {\n border-radius: 0;\n }\n .modal-fullscreen-xl-down .modal-body {\n overflow-y: auto;\n }\n}\n@media (max-width: 1399.98px) {\n .modal-fullscreen-xxl-down {\n width: 100vw;\n max-width: none;\n height: 100%;\n margin: 0;\n }\n .modal-fullscreen-xxl-down .modal-content {\n height: 100%;\n border: 0;\n border-radius: 0;\n }\n .modal-fullscreen-xxl-down .modal-header,\n .modal-fullscreen-xxl-down .modal-footer {\n border-radius: 0;\n }\n .modal-fullscreen-xxl-down .modal-body {\n overflow-y: auto;\n }\n}\n.tooltip {\n --bs-tooltip-zindex: 1080;\n --bs-tooltip-max-width: 200px;\n --bs-tooltip-padding-x: 0.5rem;\n --bs-tooltip-padding-y: 0.25rem;\n --bs-tooltip-margin: ;\n --bs-tooltip-font-size: 0.875rem;\n --bs-tooltip-color: var(--bs-body-bg);\n --bs-tooltip-bg: var(--bs-emphasis-color);\n --bs-tooltip-border-radius: var(--bs-border-radius);\n --bs-tooltip-opacity: 0.9;\n --bs-tooltip-arrow-width: 0.8rem;\n --bs-tooltip-arrow-height: 0.4rem;\n z-index: var(--bs-tooltip-zindex);\n display: block;\n margin: var(--bs-tooltip-margin);\n font-family: var(--bs-font-sans-serif);\n font-style: normal;\n font-weight: 400;\n line-height: 1.5;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-break: normal;\n white-space: normal;\n word-spacing: normal;\n line-break: auto;\n font-size: var(--bs-tooltip-font-size);\n word-wrap: break-word;\n opacity: 0;\n}\n.tooltip.show {\n opacity: var(--bs-tooltip-opacity);\n}\n.tooltip .tooltip-arrow {\n display: block;\n width: var(--bs-tooltip-arrow-width);\n height: var(--bs-tooltip-arrow-height);\n}\n.tooltip .tooltip-arrow::before {\n position: absolute;\n content: \"\";\n border-color: transparent;\n border-style: solid;\n}\n\n.bs-tooltip-top .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow {\n bottom: calc(-1 * var(--bs-tooltip-arrow-height));\n}\n.bs-tooltip-top .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before {\n top: -1px;\n border-width: var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * 0.5) 0;\n border-top-color: var(--bs-tooltip-bg);\n}\n\n/* rtl:begin:ignore */\n.bs-tooltip-end .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow {\n left: calc(-1 * var(--bs-tooltip-arrow-height));\n width: var(--bs-tooltip-arrow-height);\n height: var(--bs-tooltip-arrow-width);\n}\n.bs-tooltip-end .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before {\n right: -1px;\n border-width: calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * 0.5) 0;\n border-right-color: var(--bs-tooltip-bg);\n}\n\n/* rtl:end:ignore */\n.bs-tooltip-bottom .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow {\n top: calc(-1 * var(--bs-tooltip-arrow-height));\n}\n.bs-tooltip-bottom .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before {\n bottom: -1px;\n border-width: 0 calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height);\n border-bottom-color: var(--bs-tooltip-bg);\n}\n\n/* rtl:begin:ignore */\n.bs-tooltip-start .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow {\n right: calc(-1 * var(--bs-tooltip-arrow-height));\n width: var(--bs-tooltip-arrow-height);\n height: var(--bs-tooltip-arrow-width);\n}\n.bs-tooltip-start .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before {\n left: -1px;\n border-width: calc(var(--bs-tooltip-arrow-width) * 0.5) 0 calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height);\n border-left-color: var(--bs-tooltip-bg);\n}\n\n/* rtl:end:ignore */\n.tooltip-inner {\n max-width: var(--bs-tooltip-max-width);\n padding: var(--bs-tooltip-padding-y) var(--bs-tooltip-padding-x);\n color: var(--bs-tooltip-color);\n text-align: center;\n background-color: var(--bs-tooltip-bg);\n border-radius: var(--bs-tooltip-border-radius);\n}\n\n.popover {\n --bs-popover-zindex: 1070;\n --bs-popover-max-width: 276px;\n --bs-popover-font-size: 0.875rem;\n --bs-popover-bg: var(--bs-body-bg);\n --bs-popover-border-width: var(--bs-border-width);\n --bs-popover-border-color: var(--bs-border-color-translucent);\n --bs-popover-border-radius: var(--bs-border-radius-lg);\n --bs-popover-inner-border-radius: calc(var(--bs-border-radius-lg) - var(--bs-border-width));\n --bs-popover-box-shadow: var(--bs-box-shadow);\n --bs-popover-header-padding-x: 1rem;\n --bs-popover-header-padding-y: 0.5rem;\n --bs-popover-header-font-size: 1rem;\n --bs-popover-header-color: inherit;\n --bs-popover-header-bg: var(--bs-secondary-bg);\n --bs-popover-body-padding-x: 1rem;\n --bs-popover-body-padding-y: 1rem;\n --bs-popover-body-color: var(--bs-body-color);\n --bs-popover-arrow-width: 1rem;\n --bs-popover-arrow-height: 0.5rem;\n --bs-popover-arrow-border: var(--bs-popover-border-color);\n z-index: var(--bs-popover-zindex);\n display: block;\n max-width: var(--bs-popover-max-width);\n font-family: var(--bs-font-sans-serif);\n font-style: normal;\n font-weight: 400;\n line-height: 1.5;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-break: normal;\n white-space: normal;\n word-spacing: normal;\n line-break: auto;\n font-size: var(--bs-popover-font-size);\n word-wrap: break-word;\n background-color: var(--bs-popover-bg);\n background-clip: padding-box;\n border: var(--bs-popover-border-width) solid var(--bs-popover-border-color);\n border-radius: var(--bs-popover-border-radius);\n}\n.popover .popover-arrow {\n display: block;\n width: var(--bs-popover-arrow-width);\n height: var(--bs-popover-arrow-height);\n}\n.popover .popover-arrow::before, .popover .popover-arrow::after {\n position: absolute;\n display: block;\n content: \"\";\n border-color: transparent;\n border-style: solid;\n border-width: 0;\n}\n\n.bs-popover-top > .popover-arrow, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow {\n bottom: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));\n}\n.bs-popover-top > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::before, .bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::after {\n border-width: var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * 0.5) 0;\n}\n.bs-popover-top > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::before {\n bottom: 0;\n border-top-color: var(--bs-popover-arrow-border);\n}\n.bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::after {\n bottom: var(--bs-popover-border-width);\n border-top-color: var(--bs-popover-bg);\n}\n\n/* rtl:begin:ignore */\n.bs-popover-end > .popover-arrow, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow {\n left: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));\n width: var(--bs-popover-arrow-height);\n height: var(--bs-popover-arrow-width);\n}\n.bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before, .bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after {\n border-width: calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * 0.5) 0;\n}\n.bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before {\n left: 0;\n border-right-color: var(--bs-popover-arrow-border);\n}\n.bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after {\n left: var(--bs-popover-border-width);\n border-right-color: var(--bs-popover-bg);\n}\n\n/* rtl:end:ignore */\n.bs-popover-bottom > .popover-arrow, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow {\n top: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));\n}\n.bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::before, .bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::after {\n border-width: 0 calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height);\n}\n.bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::before {\n top: 0;\n border-bottom-color: var(--bs-popover-arrow-border);\n}\n.bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::after {\n top: var(--bs-popover-border-width);\n border-bottom-color: var(--bs-popover-bg);\n}\n.bs-popover-bottom .popover-header::before, .bs-popover-auto[data-popper-placement^=bottom] .popover-header::before {\n position: absolute;\n top: 0;\n left: 50%;\n display: block;\n width: var(--bs-popover-arrow-width);\n margin-left: calc(-0.5 * var(--bs-popover-arrow-width));\n content: \"\";\n border-bottom: var(--bs-popover-border-width) solid var(--bs-popover-header-bg);\n}\n\n/* rtl:begin:ignore */\n.bs-popover-start > .popover-arrow, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow {\n right: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));\n width: var(--bs-popover-arrow-height);\n height: var(--bs-popover-arrow-width);\n}\n.bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before, .bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after {\n border-width: calc(var(--bs-popover-arrow-width) * 0.5) 0 calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height);\n}\n.bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before {\n right: 0;\n border-left-color: var(--bs-popover-arrow-border);\n}\n.bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after {\n right: var(--bs-popover-border-width);\n border-left-color: var(--bs-popover-bg);\n}\n\n/* rtl:end:ignore */\n.popover-header {\n padding: var(--bs-popover-header-padding-y) var(--bs-popover-header-padding-x);\n margin-bottom: 0;\n font-size: var(--bs-popover-header-font-size);\n color: var(--bs-popover-header-color);\n background-color: var(--bs-popover-header-bg);\n border-bottom: var(--bs-popover-border-width) solid var(--bs-popover-border-color);\n border-top-left-radius: var(--bs-popover-inner-border-radius);\n border-top-right-radius: var(--bs-popover-inner-border-radius);\n}\n.popover-header:empty {\n display: none;\n}\n\n.popover-body {\n padding: var(--bs-popover-body-padding-y) var(--bs-popover-body-padding-x);\n color: var(--bs-popover-body-color);\n}\n\n.carousel {\n position: relative;\n}\n\n.carousel.pointer-event {\n touch-action: pan-y;\n}\n\n.carousel-inner {\n position: relative;\n width: 100%;\n overflow: hidden;\n}\n.carousel-inner::after {\n display: block;\n clear: both;\n content: \"\";\n}\n\n.carousel-item {\n position: relative;\n display: none;\n float: left;\n width: 100%;\n margin-right: -100%;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n transition: transform 0.6s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .carousel-item {\n transition: none;\n }\n}\n\n.carousel-item.active,\n.carousel-item-next,\n.carousel-item-prev {\n display: block;\n}\n\n.carousel-item-next:not(.carousel-item-start),\n.active.carousel-item-end {\n transform: translateX(100%);\n}\n\n.carousel-item-prev:not(.carousel-item-end),\n.active.carousel-item-start {\n transform: translateX(-100%);\n}\n\n.carousel-fade .carousel-item {\n opacity: 0;\n transition-property: opacity;\n transform: none;\n}\n.carousel-fade .carousel-item.active,\n.carousel-fade .carousel-item-next.carousel-item-start,\n.carousel-fade .carousel-item-prev.carousel-item-end {\n z-index: 1;\n opacity: 1;\n}\n.carousel-fade .active.carousel-item-start,\n.carousel-fade .active.carousel-item-end {\n z-index: 0;\n opacity: 0;\n transition: opacity 0s 0.6s;\n}\n@media (prefers-reduced-motion: reduce) {\n .carousel-fade .active.carousel-item-start,\n .carousel-fade .active.carousel-item-end {\n transition: none;\n }\n}\n\n.carousel-control-prev,\n.carousel-control-next {\n position: absolute;\n top: 0;\n bottom: 0;\n z-index: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 15%;\n padding: 0;\n color: #fff;\n text-align: center;\n background: none;\n filter: var(--bs-carousel-control-icon-filter);\n border: 0;\n opacity: 0.5;\n transition: opacity 0.15s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .carousel-control-prev,\n .carousel-control-next {\n transition: none;\n }\n}\n.carousel-control-prev:hover, .carousel-control-prev:focus,\n.carousel-control-next:hover,\n.carousel-control-next:focus {\n color: #fff;\n text-decoration: none;\n outline: 0;\n opacity: 0.9;\n}\n\n.carousel-control-prev {\n left: 0;\n}\n\n.carousel-control-next {\n right: 0;\n}\n\n.carousel-control-prev-icon,\n.carousel-control-next-icon {\n display: inline-block;\n width: 2rem;\n height: 2rem;\n background-repeat: no-repeat;\n background-position: 50%;\n background-size: 100% 100%;\n}\n\n.carousel-control-prev-icon {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0'/%3e%3c/svg%3e\") /*rtl:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708'/%3e%3c/svg%3e\")*/;\n}\n\n.carousel-control-next-icon {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708'/%3e%3c/svg%3e\") /*rtl:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0'/%3e%3c/svg%3e\")*/;\n}\n\n.carousel-indicators {\n position: absolute;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 2;\n display: flex;\n justify-content: center;\n padding: 0;\n margin-right: 15%;\n margin-bottom: 1rem;\n margin-left: 15%;\n}\n.carousel-indicators [data-bs-target] {\n box-sizing: content-box;\n flex: 0 1 auto;\n width: 30px;\n height: 3px;\n padding: 0;\n margin-right: 3px;\n margin-left: 3px;\n text-indent: -999px;\n cursor: pointer;\n background-color: var(--bs-carousel-indicator-active-bg);\n background-clip: padding-box;\n border: 0;\n border-top: 10px solid transparent;\n border-bottom: 10px solid transparent;\n opacity: 0.5;\n transition: opacity 0.6s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .carousel-indicators [data-bs-target] {\n transition: none;\n }\n}\n.carousel-indicators .active {\n opacity: 1;\n}\n\n.carousel-caption {\n position: absolute;\n right: 15%;\n bottom: 1.25rem;\n left: 15%;\n padding-top: 1.25rem;\n padding-bottom: 1.25rem;\n color: var(--bs-carousel-caption-color);\n text-align: center;\n}\n\n.carousel-dark {\n --bs-carousel-indicator-active-bg: #000;\n --bs-carousel-caption-color: #000;\n --bs-carousel-control-icon-filter: invert(1) grayscale(100);\n}\n\n:root,\n[data-bs-theme=light] {\n --bs-carousel-indicator-active-bg: #fff;\n --bs-carousel-caption-color: #fff;\n --bs-carousel-control-icon-filter: ;\n}\n\n[data-bs-theme=dark] {\n --bs-carousel-indicator-active-bg: #000;\n --bs-carousel-caption-color: #000;\n --bs-carousel-control-icon-filter: invert(1) grayscale(100);\n}\n\n.spinner-grow,\n.spinner-border {\n display: inline-block;\n width: var(--bs-spinner-width);\n height: var(--bs-spinner-height);\n vertical-align: var(--bs-spinner-vertical-align);\n border-radius: 50%;\n animation: var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name);\n}\n\n@keyframes spinner-border {\n to {\n transform: rotate(360deg) /* rtl:ignore */;\n }\n}\n.spinner-border {\n --bs-spinner-width: 2rem;\n --bs-spinner-height: 2rem;\n --bs-spinner-vertical-align: -0.125em;\n --bs-spinner-border-width: 0.25em;\n --bs-spinner-animation-speed: 0.75s;\n --bs-spinner-animation-name: spinner-border;\n border: var(--bs-spinner-border-width) solid currentcolor;\n border-right-color: transparent;\n}\n\n.spinner-border-sm {\n --bs-spinner-width: 1rem;\n --bs-spinner-height: 1rem;\n --bs-spinner-border-width: 0.2em;\n}\n\n@keyframes spinner-grow {\n 0% {\n transform: scale(0);\n }\n 50% {\n opacity: 1;\n transform: none;\n }\n}\n.spinner-grow {\n --bs-spinner-width: 2rem;\n --bs-spinner-height: 2rem;\n --bs-spinner-vertical-align: -0.125em;\n --bs-spinner-animation-speed: 0.75s;\n --bs-spinner-animation-name: spinner-grow;\n background-color: currentcolor;\n opacity: 0;\n}\n\n.spinner-grow-sm {\n --bs-spinner-width: 1rem;\n --bs-spinner-height: 1rem;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .spinner-border,\n .spinner-grow {\n --bs-spinner-animation-speed: 1.5s;\n }\n}\n.offcanvas, .offcanvas-xxl, .offcanvas-xl, .offcanvas-lg, .offcanvas-md, .offcanvas-sm {\n --bs-offcanvas-zindex: 1045;\n --bs-offcanvas-width: 400px;\n --bs-offcanvas-height: 30vh;\n --bs-offcanvas-padding-x: 1rem;\n --bs-offcanvas-padding-y: 1rem;\n --bs-offcanvas-color: var(--bs-body-color);\n --bs-offcanvas-bg: var(--bs-body-bg);\n --bs-offcanvas-border-width: var(--bs-border-width);\n --bs-offcanvas-border-color: var(--bs-border-color-translucent);\n --bs-offcanvas-box-shadow: var(--bs-box-shadow-sm);\n --bs-offcanvas-transition: transform 0.3s ease-in-out;\n --bs-offcanvas-title-line-height: 1.5;\n}\n\n@media (max-width: 575.98px) {\n .offcanvas-sm {\n position: fixed;\n bottom: 0;\n z-index: var(--bs-offcanvas-zindex);\n display: flex;\n flex-direction: column;\n max-width: 100%;\n color: var(--bs-offcanvas-color);\n visibility: hidden;\n background-color: var(--bs-offcanvas-bg);\n background-clip: padding-box;\n outline: 0;\n transition: var(--bs-offcanvas-transition);\n }\n}\n@media (max-width: 575.98px) and (prefers-reduced-motion: reduce) {\n .offcanvas-sm {\n transition: none;\n }\n}\n@media (max-width: 575.98px) {\n .offcanvas-sm.offcanvas-start {\n top: 0;\n left: 0;\n width: var(--bs-offcanvas-width);\n border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateX(-100%);\n }\n .offcanvas-sm.offcanvas-end {\n top: 0;\n right: 0;\n width: var(--bs-offcanvas-width);\n border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateX(100%);\n }\n .offcanvas-sm.offcanvas-top {\n top: 0;\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateY(-100%);\n }\n .offcanvas-sm.offcanvas-bottom {\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateY(100%);\n }\n .offcanvas-sm.showing, .offcanvas-sm.show:not(.hiding) {\n transform: none;\n }\n .offcanvas-sm.showing, .offcanvas-sm.hiding, .offcanvas-sm.show {\n visibility: visible;\n }\n}\n@media (min-width: 576px) {\n .offcanvas-sm {\n --bs-offcanvas-height: auto;\n --bs-offcanvas-border-width: 0;\n background-color: transparent !important;\n }\n .offcanvas-sm .offcanvas-header {\n display: none;\n }\n .offcanvas-sm .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n background-color: transparent !important;\n }\n}\n\n@media (max-width: 767.98px) {\n .offcanvas-md {\n position: fixed;\n bottom: 0;\n z-index: var(--bs-offcanvas-zindex);\n display: flex;\n flex-direction: column;\n max-width: 100%;\n color: var(--bs-offcanvas-color);\n visibility: hidden;\n background-color: var(--bs-offcanvas-bg);\n background-clip: padding-box;\n outline: 0;\n transition: var(--bs-offcanvas-transition);\n }\n}\n@media (max-width: 767.98px) and (prefers-reduced-motion: reduce) {\n .offcanvas-md {\n transition: none;\n }\n}\n@media (max-width: 767.98px) {\n .offcanvas-md.offcanvas-start {\n top: 0;\n left: 0;\n width: var(--bs-offcanvas-width);\n border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateX(-100%);\n }\n .offcanvas-md.offcanvas-end {\n top: 0;\n right: 0;\n width: var(--bs-offcanvas-width);\n border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateX(100%);\n }\n .offcanvas-md.offcanvas-top {\n top: 0;\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateY(-100%);\n }\n .offcanvas-md.offcanvas-bottom {\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateY(100%);\n }\n .offcanvas-md.showing, .offcanvas-md.show:not(.hiding) {\n transform: none;\n }\n .offcanvas-md.showing, .offcanvas-md.hiding, .offcanvas-md.show {\n visibility: visible;\n }\n}\n@media (min-width: 768px) {\n .offcanvas-md {\n --bs-offcanvas-height: auto;\n --bs-offcanvas-border-width: 0;\n background-color: transparent !important;\n }\n .offcanvas-md .offcanvas-header {\n display: none;\n }\n .offcanvas-md .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n background-color: transparent !important;\n }\n}\n\n@media (max-width: 991.98px) {\n .offcanvas-lg {\n position: fixed;\n bottom: 0;\n z-index: var(--bs-offcanvas-zindex);\n display: flex;\n flex-direction: column;\n max-width: 100%;\n color: var(--bs-offcanvas-color);\n visibility: hidden;\n background-color: var(--bs-offcanvas-bg);\n background-clip: padding-box;\n outline: 0;\n transition: var(--bs-offcanvas-transition);\n }\n}\n@media (max-width: 991.98px) and (prefers-reduced-motion: reduce) {\n .offcanvas-lg {\n transition: none;\n }\n}\n@media (max-width: 991.98px) {\n .offcanvas-lg.offcanvas-start {\n top: 0;\n left: 0;\n width: var(--bs-offcanvas-width);\n border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateX(-100%);\n }\n .offcanvas-lg.offcanvas-end {\n top: 0;\n right: 0;\n width: var(--bs-offcanvas-width);\n border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateX(100%);\n }\n .offcanvas-lg.offcanvas-top {\n top: 0;\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateY(-100%);\n }\n .offcanvas-lg.offcanvas-bottom {\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateY(100%);\n }\n .offcanvas-lg.showing, .offcanvas-lg.show:not(.hiding) {\n transform: none;\n }\n .offcanvas-lg.showing, .offcanvas-lg.hiding, .offcanvas-lg.show {\n visibility: visible;\n }\n}\n@media (min-width: 992px) {\n .offcanvas-lg {\n --bs-offcanvas-height: auto;\n --bs-offcanvas-border-width: 0;\n background-color: transparent !important;\n }\n .offcanvas-lg .offcanvas-header {\n display: none;\n }\n .offcanvas-lg .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n background-color: transparent !important;\n }\n}\n\n@media (max-width: 1199.98px) {\n .offcanvas-xl {\n position: fixed;\n bottom: 0;\n z-index: var(--bs-offcanvas-zindex);\n display: flex;\n flex-direction: column;\n max-width: 100%;\n color: var(--bs-offcanvas-color);\n visibility: hidden;\n background-color: var(--bs-offcanvas-bg);\n background-clip: padding-box;\n outline: 0;\n transition: var(--bs-offcanvas-transition);\n }\n}\n@media (max-width: 1199.98px) and (prefers-reduced-motion: reduce) {\n .offcanvas-xl {\n transition: none;\n }\n}\n@media (max-width: 1199.98px) {\n .offcanvas-xl.offcanvas-start {\n top: 0;\n left: 0;\n width: var(--bs-offcanvas-width);\n border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateX(-100%);\n }\n .offcanvas-xl.offcanvas-end {\n top: 0;\n right: 0;\n width: var(--bs-offcanvas-width);\n border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateX(100%);\n }\n .offcanvas-xl.offcanvas-top {\n top: 0;\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateY(-100%);\n }\n .offcanvas-xl.offcanvas-bottom {\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateY(100%);\n }\n .offcanvas-xl.showing, .offcanvas-xl.show:not(.hiding) {\n transform: none;\n }\n .offcanvas-xl.showing, .offcanvas-xl.hiding, .offcanvas-xl.show {\n visibility: visible;\n }\n}\n@media (min-width: 1200px) {\n .offcanvas-xl {\n --bs-offcanvas-height: auto;\n --bs-offcanvas-border-width: 0;\n background-color: transparent !important;\n }\n .offcanvas-xl .offcanvas-header {\n display: none;\n }\n .offcanvas-xl .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n background-color: transparent !important;\n }\n}\n\n@media (max-width: 1399.98px) {\n .offcanvas-xxl {\n position: fixed;\n bottom: 0;\n z-index: var(--bs-offcanvas-zindex);\n display: flex;\n flex-direction: column;\n max-width: 100%;\n color: var(--bs-offcanvas-color);\n visibility: hidden;\n background-color: var(--bs-offcanvas-bg);\n background-clip: padding-box;\n outline: 0;\n transition: var(--bs-offcanvas-transition);\n }\n}\n@media (max-width: 1399.98px) and (prefers-reduced-motion: reduce) {\n .offcanvas-xxl {\n transition: none;\n }\n}\n@media (max-width: 1399.98px) {\n .offcanvas-xxl.offcanvas-start {\n top: 0;\n left: 0;\n width: var(--bs-offcanvas-width);\n border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateX(-100%);\n }\n .offcanvas-xxl.offcanvas-end {\n top: 0;\n right: 0;\n width: var(--bs-offcanvas-width);\n border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateX(100%);\n }\n .offcanvas-xxl.offcanvas-top {\n top: 0;\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateY(-100%);\n }\n .offcanvas-xxl.offcanvas-bottom {\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateY(100%);\n }\n .offcanvas-xxl.showing, .offcanvas-xxl.show:not(.hiding) {\n transform: none;\n }\n .offcanvas-xxl.showing, .offcanvas-xxl.hiding, .offcanvas-xxl.show {\n visibility: visible;\n }\n}\n@media (min-width: 1400px) {\n .offcanvas-xxl {\n --bs-offcanvas-height: auto;\n --bs-offcanvas-border-width: 0;\n background-color: transparent !important;\n }\n .offcanvas-xxl .offcanvas-header {\n display: none;\n }\n .offcanvas-xxl .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n background-color: transparent !important;\n }\n}\n\n.offcanvas {\n position: fixed;\n bottom: 0;\n z-index: var(--bs-offcanvas-zindex);\n display: flex;\n flex-direction: column;\n max-width: 100%;\n color: var(--bs-offcanvas-color);\n visibility: hidden;\n background-color: var(--bs-offcanvas-bg);\n background-clip: padding-box;\n outline: 0;\n transition: var(--bs-offcanvas-transition);\n}\n@media (prefers-reduced-motion: reduce) {\n .offcanvas {\n transition: none;\n }\n}\n.offcanvas.offcanvas-start {\n top: 0;\n left: 0;\n width: var(--bs-offcanvas-width);\n border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateX(-100%);\n}\n.offcanvas.offcanvas-end {\n top: 0;\n right: 0;\n width: var(--bs-offcanvas-width);\n border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateX(100%);\n}\n.offcanvas.offcanvas-top {\n top: 0;\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateY(-100%);\n}\n.offcanvas.offcanvas-bottom {\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n transform: translateY(100%);\n}\n.offcanvas.showing, .offcanvas.show:not(.hiding) {\n transform: none;\n}\n.offcanvas.showing, .offcanvas.hiding, .offcanvas.show {\n visibility: visible;\n}\n\n.offcanvas-backdrop {\n position: fixed;\n top: 0;\n left: 0;\n z-index: 1040;\n width: 100vw;\n height: 100vh;\n background-color: #000;\n}\n.offcanvas-backdrop.fade {\n opacity: 0;\n}\n.offcanvas-backdrop.show {\n opacity: 0.5;\n}\n\n.offcanvas-header {\n display: flex;\n align-items: center;\n padding: var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);\n}\n.offcanvas-header .btn-close {\n padding: calc(var(--bs-offcanvas-padding-y) * 0.5) calc(var(--bs-offcanvas-padding-x) * 0.5);\n margin-top: calc(-0.5 * var(--bs-offcanvas-padding-y));\n margin-right: calc(-0.5 * var(--bs-offcanvas-padding-x));\n margin-bottom: calc(-0.5 * var(--bs-offcanvas-padding-y));\n margin-left: auto;\n}\n\n.offcanvas-title {\n margin-bottom: 0;\n line-height: var(--bs-offcanvas-title-line-height);\n}\n\n.offcanvas-body {\n flex-grow: 1;\n padding: var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);\n overflow-y: auto;\n}\n\n.placeholder {\n display: inline-block;\n min-height: 1em;\n vertical-align: middle;\n cursor: wait;\n background-color: currentcolor;\n opacity: 0.5;\n}\n.placeholder.btn::before {\n display: inline-block;\n content: \"\";\n}\n\n.placeholder-xs {\n min-height: 0.6em;\n}\n\n.placeholder-sm {\n min-height: 0.8em;\n}\n\n.placeholder-lg {\n min-height: 1.2em;\n}\n\n.placeholder-glow .placeholder {\n animation: placeholder-glow 2s ease-in-out infinite;\n}\n\n@keyframes placeholder-glow {\n 50% {\n opacity: 0.2;\n }\n}\n.placeholder-wave {\n -webkit-mask-image: linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);\n mask-image: linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);\n -webkit-mask-size: 200% 100%;\n mask-size: 200% 100%;\n animation: placeholder-wave 2s linear infinite;\n}\n\n@keyframes placeholder-wave {\n 100% {\n -webkit-mask-position: -200% 0%;\n mask-position: -200% 0%;\n }\n}\n.clearfix::after {\n display: block;\n clear: both;\n content: \"\";\n}\n\n.text-bg-primary {\n color: #fff !important;\n background-color: RGBA(var(--bs-primary-rgb), var(--bs-bg-opacity, 1)) !important;\n}\n\n.text-bg-secondary {\n color: #fff !important;\n background-color: RGBA(var(--bs-secondary-rgb), var(--bs-bg-opacity, 1)) !important;\n}\n\n.text-bg-success {\n color: #fff !important;\n background-color: RGBA(var(--bs-success-rgb), var(--bs-bg-opacity, 1)) !important;\n}\n\n.text-bg-info {\n color: #000 !important;\n background-color: RGBA(var(--bs-info-rgb), var(--bs-bg-opacity, 1)) !important;\n}\n\n.text-bg-warning {\n color: #000 !important;\n background-color: RGBA(var(--bs-warning-rgb), var(--bs-bg-opacity, 1)) !important;\n}\n\n.text-bg-danger {\n color: #fff !important;\n background-color: RGBA(var(--bs-danger-rgb), var(--bs-bg-opacity, 1)) !important;\n}\n\n.text-bg-light {\n color: #000 !important;\n background-color: RGBA(var(--bs-light-rgb), var(--bs-bg-opacity, 1)) !important;\n}\n\n.text-bg-dark {\n color: #fff !important;\n background-color: RGBA(var(--bs-dark-rgb), var(--bs-bg-opacity, 1)) !important;\n}\n\n.link-primary {\n color: RGBA(var(--bs-primary-rgb), var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-primary-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--bs-primary-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-primary:hover, .link-primary:focus {\n color: RGBA(10, 88, 202, var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(10, 88, 202, var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(10, 88, 202, var(--bs-link-underline-opacity, 1)) !important;\n}\n\n.link-secondary {\n color: RGBA(var(--bs-secondary-rgb), var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-secondary-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--bs-secondary-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-secondary:hover, .link-secondary:focus {\n color: RGBA(86, 94, 100, var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(86, 94, 100, var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(86, 94, 100, var(--bs-link-underline-opacity, 1)) !important;\n}\n\n.link-success {\n color: RGBA(var(--bs-success-rgb), var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-success-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--bs-success-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-success:hover, .link-success:focus {\n color: RGBA(20, 108, 67, var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(20, 108, 67, var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(20, 108, 67, var(--bs-link-underline-opacity, 1)) !important;\n}\n\n.link-info {\n color: RGBA(var(--bs-info-rgb), var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-info-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--bs-info-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-info:hover, .link-info:focus {\n color: RGBA(61, 213, 243, var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(61, 213, 243, var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(61, 213, 243, var(--bs-link-underline-opacity, 1)) !important;\n}\n\n.link-warning {\n color: RGBA(var(--bs-warning-rgb), var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-warning-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--bs-warning-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-warning:hover, .link-warning:focus {\n color: RGBA(255, 205, 57, var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(255, 205, 57, var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(255, 205, 57, var(--bs-link-underline-opacity, 1)) !important;\n}\n\n.link-danger {\n color: RGBA(var(--bs-danger-rgb), var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-danger-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--bs-danger-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-danger:hover, .link-danger:focus {\n color: RGBA(176, 42, 55, var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(176, 42, 55, var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(176, 42, 55, var(--bs-link-underline-opacity, 1)) !important;\n}\n\n.link-light {\n color: RGBA(var(--bs-light-rgb), var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-light-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--bs-light-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-light:hover, .link-light:focus {\n color: RGBA(249, 250, 251, var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(249, 250, 251, var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(249, 250, 251, var(--bs-link-underline-opacity, 1)) !important;\n}\n\n.link-dark {\n color: RGBA(var(--bs-dark-rgb), var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-dark-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--bs-dark-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-dark:hover, .link-dark:focus {\n color: RGBA(26, 30, 33, var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(26, 30, 33, var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(26, 30, 33, var(--bs-link-underline-opacity, 1)) !important;\n}\n\n.link-body-emphasis {\n color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-body-emphasis:hover, .link-body-emphasis:focus {\n color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 0.75)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 0.75)) !important;\n text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 0.75)) !important;\n}\n\n.focus-ring:focus {\n outline: 0;\n box-shadow: var(--bs-focus-ring-x, 0) var(--bs-focus-ring-y, 0) var(--bs-focus-ring-blur, 0) var(--bs-focus-ring-width) var(--bs-focus-ring-color);\n}\n\n.icon-link {\n display: inline-flex;\n gap: 0.375rem;\n align-items: center;\n -webkit-text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 0.5));\n text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 0.5));\n text-underline-offset: 0.25em;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n}\n.icon-link > .bi {\n flex-shrink: 0;\n width: 1em;\n height: 1em;\n fill: currentcolor;\n transition: 0.2s ease-in-out transform;\n}\n@media (prefers-reduced-motion: reduce) {\n .icon-link > .bi {\n transition: none;\n }\n}\n\n.icon-link-hover:hover > .bi, .icon-link-hover:focus-visible > .bi {\n transform: var(--bs-icon-link-transform, translate3d(0.25em, 0, 0));\n}\n\n.ratio {\n position: relative;\n width: 100%;\n}\n.ratio::before {\n display: block;\n padding-top: var(--bs-aspect-ratio);\n content: \"\";\n}\n.ratio > * {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n}\n\n.ratio-1x1 {\n --bs-aspect-ratio: 100%;\n}\n\n.ratio-4x3 {\n --bs-aspect-ratio: 75%;\n}\n\n.ratio-16x9 {\n --bs-aspect-ratio: 56.25%;\n}\n\n.ratio-21x9 {\n --bs-aspect-ratio: 42.8571428571%;\n}\n\n.fixed-top {\n position: fixed;\n top: 0;\n right: 0;\n left: 0;\n z-index: 1030;\n}\n\n.fixed-bottom {\n position: fixed;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1030;\n}\n\n.sticky-top {\n position: -webkit-sticky;\n position: sticky;\n top: 0;\n z-index: 1020;\n}\n\n.sticky-bottom {\n position: -webkit-sticky;\n position: sticky;\n bottom: 0;\n z-index: 1020;\n}\n\n@media (min-width: 576px) {\n .sticky-sm-top {\n position: -webkit-sticky;\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n .sticky-sm-bottom {\n position: -webkit-sticky;\n position: sticky;\n bottom: 0;\n z-index: 1020;\n }\n}\n@media (min-width: 768px) {\n .sticky-md-top {\n position: -webkit-sticky;\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n .sticky-md-bottom {\n position: -webkit-sticky;\n position: sticky;\n bottom: 0;\n z-index: 1020;\n }\n}\n@media (min-width: 992px) {\n .sticky-lg-top {\n position: -webkit-sticky;\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n .sticky-lg-bottom {\n position: -webkit-sticky;\n position: sticky;\n bottom: 0;\n z-index: 1020;\n }\n}\n@media (min-width: 1200px) {\n .sticky-xl-top {\n position: -webkit-sticky;\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n .sticky-xl-bottom {\n position: -webkit-sticky;\n position: sticky;\n bottom: 0;\n z-index: 1020;\n }\n}\n@media (min-width: 1400px) {\n .sticky-xxl-top {\n position: -webkit-sticky;\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n .sticky-xxl-bottom {\n position: -webkit-sticky;\n position: sticky;\n bottom: 0;\n z-index: 1020;\n }\n}\n.hstack {\n display: flex;\n flex-direction: row;\n align-items: center;\n align-self: stretch;\n}\n\n.vstack {\n display: flex;\n flex: 1 1 auto;\n flex-direction: column;\n align-self: stretch;\n}\n\n.visually-hidden,\n.visually-hidden-focusable:not(:focus):not(:focus-within) {\n width: 1px !important;\n height: 1px !important;\n padding: 0 !important;\n margin: -1px !important;\n overflow: hidden !important;\n clip: rect(0, 0, 0, 0) !important;\n white-space: nowrap !important;\n border: 0 !important;\n}\n.visually-hidden:not(caption),\n.visually-hidden-focusable:not(:focus):not(:focus-within):not(caption) {\n position: absolute !important;\n}\n.visually-hidden *,\n.visually-hidden-focusable:not(:focus):not(:focus-within) * {\n overflow: hidden !important;\n}\n\n.stretched-link::after {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1;\n content: \"\";\n}\n\n.text-truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.vr {\n display: inline-block;\n align-self: stretch;\n width: var(--bs-border-width);\n min-height: 1em;\n background-color: currentcolor;\n opacity: 0.25;\n}\n\n.align-baseline {\n vertical-align: baseline !important;\n}\n\n.align-top {\n vertical-align: top !important;\n}\n\n.align-middle {\n vertical-align: middle !important;\n}\n\n.align-bottom {\n vertical-align: bottom !important;\n}\n\n.align-text-bottom {\n vertical-align: text-bottom !important;\n}\n\n.align-text-top {\n vertical-align: text-top !important;\n}\n\n.float-start {\n float: left !important;\n}\n\n.float-end {\n float: right !important;\n}\n\n.float-none {\n float: none !important;\n}\n\n.object-fit-contain {\n -o-object-fit: contain !important;\n object-fit: contain !important;\n}\n\n.object-fit-cover {\n -o-object-fit: cover !important;\n object-fit: cover !important;\n}\n\n.object-fit-fill {\n -o-object-fit: fill !important;\n object-fit: fill !important;\n}\n\n.object-fit-scale {\n -o-object-fit: scale-down !important;\n object-fit: scale-down !important;\n}\n\n.object-fit-none {\n -o-object-fit: none !important;\n object-fit: none !important;\n}\n\n.opacity-0 {\n opacity: 0 !important;\n}\n\n.opacity-25 {\n opacity: 0.25 !important;\n}\n\n.opacity-50 {\n opacity: 0.5 !important;\n}\n\n.opacity-75 {\n opacity: 0.75 !important;\n}\n\n.opacity-100 {\n opacity: 1 !important;\n}\n\n.overflow-auto {\n overflow: auto !important;\n}\n\n.overflow-hidden {\n overflow: hidden !important;\n}\n\n.overflow-visible {\n overflow: visible !important;\n}\n\n.overflow-scroll {\n overflow: scroll !important;\n}\n\n.overflow-x-auto {\n overflow-x: auto !important;\n}\n\n.overflow-x-hidden {\n overflow-x: hidden !important;\n}\n\n.overflow-x-visible {\n overflow-x: visible !important;\n}\n\n.overflow-x-scroll {\n overflow-x: scroll !important;\n}\n\n.overflow-y-auto {\n overflow-y: auto !important;\n}\n\n.overflow-y-hidden {\n overflow-y: hidden !important;\n}\n\n.overflow-y-visible {\n overflow-y: visible !important;\n}\n\n.overflow-y-scroll {\n overflow-y: scroll !important;\n}\n\n.d-inline {\n display: inline !important;\n}\n\n.d-inline-block {\n display: inline-block !important;\n}\n\n.d-block {\n display: block !important;\n}\n\n.d-grid {\n display: grid !important;\n}\n\n.d-inline-grid {\n display: inline-grid !important;\n}\n\n.d-table {\n display: table !important;\n}\n\n.d-table-row {\n display: table-row !important;\n}\n\n.d-table-cell {\n display: table-cell !important;\n}\n\n.d-flex {\n display: flex !important;\n}\n\n.d-inline-flex {\n display: inline-flex !important;\n}\n\n.d-none {\n display: none !important;\n}\n\n.shadow {\n box-shadow: var(--bs-box-shadow) !important;\n}\n\n.shadow-sm {\n box-shadow: var(--bs-box-shadow-sm) !important;\n}\n\n.shadow-lg {\n box-shadow: var(--bs-box-shadow-lg) !important;\n}\n\n.shadow-none {\n box-shadow: none !important;\n}\n\n.focus-ring-primary {\n --bs-focus-ring-color: rgba(var(--bs-primary-rgb), var(--bs-focus-ring-opacity));\n}\n\n.focus-ring-secondary {\n --bs-focus-ring-color: rgba(var(--bs-secondary-rgb), var(--bs-focus-ring-opacity));\n}\n\n.focus-ring-success {\n --bs-focus-ring-color: rgba(var(--bs-success-rgb), var(--bs-focus-ring-opacity));\n}\n\n.focus-ring-info {\n --bs-focus-ring-color: rgba(var(--bs-info-rgb), var(--bs-focus-ring-opacity));\n}\n\n.focus-ring-warning {\n --bs-focus-ring-color: rgba(var(--bs-warning-rgb), var(--bs-focus-ring-opacity));\n}\n\n.focus-ring-danger {\n --bs-focus-ring-color: rgba(var(--bs-danger-rgb), var(--bs-focus-ring-opacity));\n}\n\n.focus-ring-light {\n --bs-focus-ring-color: rgba(var(--bs-light-rgb), var(--bs-focus-ring-opacity));\n}\n\n.focus-ring-dark {\n --bs-focus-ring-color: rgba(var(--bs-dark-rgb), var(--bs-focus-ring-opacity));\n}\n\n.position-static {\n position: static !important;\n}\n\n.position-relative {\n position: relative !important;\n}\n\n.position-absolute {\n position: absolute !important;\n}\n\n.position-fixed {\n position: fixed !important;\n}\n\n.position-sticky {\n position: -webkit-sticky !important;\n position: sticky !important;\n}\n\n.top-0 {\n top: 0 !important;\n}\n\n.top-50 {\n top: 50% !important;\n}\n\n.top-100 {\n top: 100% !important;\n}\n\n.bottom-0 {\n bottom: 0 !important;\n}\n\n.bottom-50 {\n bottom: 50% !important;\n}\n\n.bottom-100 {\n bottom: 100% !important;\n}\n\n.start-0 {\n left: 0 !important;\n}\n\n.start-50 {\n left: 50% !important;\n}\n\n.start-100 {\n left: 100% !important;\n}\n\n.end-0 {\n right: 0 !important;\n}\n\n.end-50 {\n right: 50% !important;\n}\n\n.end-100 {\n right: 100% !important;\n}\n\n.translate-middle {\n transform: translate(-50%, -50%) !important;\n}\n\n.translate-middle-x {\n transform: translateX(-50%) !important;\n}\n\n.translate-middle-y {\n transform: translateY(-50%) !important;\n}\n\n.border {\n border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;\n}\n\n.border-0 {\n border: 0 !important;\n}\n\n.border-top {\n border-top: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;\n}\n\n.border-top-0 {\n border-top: 0 !important;\n}\n\n.border-end {\n border-right: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;\n}\n\n.border-end-0 {\n border-right: 0 !important;\n}\n\n.border-bottom {\n border-bottom: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;\n}\n\n.border-bottom-0 {\n border-bottom: 0 !important;\n}\n\n.border-start {\n border-left: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;\n}\n\n.border-start-0 {\n border-left: 0 !important;\n}\n\n.border-primary {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-primary-rgb), var(--bs-border-opacity)) !important;\n}\n\n.border-secondary {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-secondary-rgb), var(--bs-border-opacity)) !important;\n}\n\n.border-success {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-success-rgb), var(--bs-border-opacity)) !important;\n}\n\n.border-info {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-info-rgb), var(--bs-border-opacity)) !important;\n}\n\n.border-warning {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-warning-rgb), var(--bs-border-opacity)) !important;\n}\n\n.border-danger {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-danger-rgb), var(--bs-border-opacity)) !important;\n}\n\n.border-light {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-light-rgb), var(--bs-border-opacity)) !important;\n}\n\n.border-dark {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-dark-rgb), var(--bs-border-opacity)) !important;\n}\n\n.border-black {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-black-rgb), var(--bs-border-opacity)) !important;\n}\n\n.border-white {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-white-rgb), var(--bs-border-opacity)) !important;\n}\n\n.border-primary-subtle {\n border-color: var(--bs-primary-border-subtle) !important;\n}\n\n.border-secondary-subtle {\n border-color: var(--bs-secondary-border-subtle) !important;\n}\n\n.border-success-subtle {\n border-color: var(--bs-success-border-subtle) !important;\n}\n\n.border-info-subtle {\n border-color: var(--bs-info-border-subtle) !important;\n}\n\n.border-warning-subtle {\n border-color: var(--bs-warning-border-subtle) !important;\n}\n\n.border-danger-subtle {\n border-color: var(--bs-danger-border-subtle) !important;\n}\n\n.border-light-subtle {\n border-color: var(--bs-light-border-subtle) !important;\n}\n\n.border-dark-subtle {\n border-color: var(--bs-dark-border-subtle) !important;\n}\n\n.border-1 {\n border-width: 1px !important;\n}\n\n.border-2 {\n border-width: 2px !important;\n}\n\n.border-3 {\n border-width: 3px !important;\n}\n\n.border-4 {\n border-width: 4px !important;\n}\n\n.border-5 {\n border-width: 5px !important;\n}\n\n.border-opacity-10 {\n --bs-border-opacity: 0.1;\n}\n\n.border-opacity-25 {\n --bs-border-opacity: 0.25;\n}\n\n.border-opacity-50 {\n --bs-border-opacity: 0.5;\n}\n\n.border-opacity-75 {\n --bs-border-opacity: 0.75;\n}\n\n.border-opacity-100 {\n --bs-border-opacity: 1;\n}\n\n.w-25 {\n width: 25% !important;\n}\n\n.w-50 {\n width: 50% !important;\n}\n\n.w-75 {\n width: 75% !important;\n}\n\n.w-100 {\n width: 100% !important;\n}\n\n.w-auto {\n width: auto !important;\n}\n\n.mw-100 {\n max-width: 100% !important;\n}\n\n.vw-100 {\n width: 100vw !important;\n}\n\n.min-vw-100 {\n min-width: 100vw !important;\n}\n\n.h-25 {\n height: 25% !important;\n}\n\n.h-50 {\n height: 50% !important;\n}\n\n.h-75 {\n height: 75% !important;\n}\n\n.h-100 {\n height: 100% !important;\n}\n\n.h-auto {\n height: auto !important;\n}\n\n.mh-100 {\n max-height: 100% !important;\n}\n\n.vh-100 {\n height: 100vh !important;\n}\n\n.min-vh-100 {\n min-height: 100vh !important;\n}\n\n.flex-fill {\n flex: 1 1 auto !important;\n}\n\n.flex-row {\n flex-direction: row !important;\n}\n\n.flex-column {\n flex-direction: column !important;\n}\n\n.flex-row-reverse {\n flex-direction: row-reverse !important;\n}\n\n.flex-column-reverse {\n flex-direction: column-reverse !important;\n}\n\n.flex-grow-0 {\n flex-grow: 0 !important;\n}\n\n.flex-grow-1 {\n flex-grow: 1 !important;\n}\n\n.flex-shrink-0 {\n flex-shrink: 0 !important;\n}\n\n.flex-shrink-1 {\n flex-shrink: 1 !important;\n}\n\n.flex-wrap {\n flex-wrap: wrap !important;\n}\n\n.flex-nowrap {\n flex-wrap: nowrap !important;\n}\n\n.flex-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n}\n\n.justify-content-start {\n justify-content: flex-start !important;\n}\n\n.justify-content-end {\n justify-content: flex-end !important;\n}\n\n.justify-content-center {\n justify-content: center !important;\n}\n\n.justify-content-between {\n justify-content: space-between !important;\n}\n\n.justify-content-around {\n justify-content: space-around !important;\n}\n\n.justify-content-evenly {\n justify-content: space-evenly !important;\n}\n\n.align-items-start {\n align-items: flex-start !important;\n}\n\n.align-items-end {\n align-items: flex-end !important;\n}\n\n.align-items-center {\n align-items: center !important;\n}\n\n.align-items-baseline {\n align-items: baseline !important;\n}\n\n.align-items-stretch {\n align-items: stretch !important;\n}\n\n.align-content-start {\n align-content: flex-start !important;\n}\n\n.align-content-end {\n align-content: flex-end !important;\n}\n\n.align-content-center {\n align-content: center !important;\n}\n\n.align-content-between {\n align-content: space-between !important;\n}\n\n.align-content-around {\n align-content: space-around !important;\n}\n\n.align-content-stretch {\n align-content: stretch !important;\n}\n\n.align-self-auto {\n align-self: auto !important;\n}\n\n.align-self-start {\n align-self: flex-start !important;\n}\n\n.align-self-end {\n align-self: flex-end !important;\n}\n\n.align-self-center {\n align-self: center !important;\n}\n\n.align-self-baseline {\n align-self: baseline !important;\n}\n\n.align-self-stretch {\n align-self: stretch !important;\n}\n\n.order-first {\n order: -1 !important;\n}\n\n.order-0 {\n order: 0 !important;\n}\n\n.order-1 {\n order: 1 !important;\n}\n\n.order-2 {\n order: 2 !important;\n}\n\n.order-3 {\n order: 3 !important;\n}\n\n.order-4 {\n order: 4 !important;\n}\n\n.order-5 {\n order: 5 !important;\n}\n\n.order-last {\n order: 6 !important;\n}\n\n.m-0 {\n margin: 0 !important;\n}\n\n.m-1 {\n margin: 0.25rem !important;\n}\n\n.m-2 {\n margin: 0.5rem !important;\n}\n\n.m-3 {\n margin: 1rem !important;\n}\n\n.m-4 {\n margin: 1.5rem !important;\n}\n\n.m-5 {\n margin: 3rem !important;\n}\n\n.m-auto {\n margin: auto !important;\n}\n\n.mx-0 {\n margin-right: 0 !important;\n margin-left: 0 !important;\n}\n\n.mx-1 {\n margin-right: 0.25rem !important;\n margin-left: 0.25rem !important;\n}\n\n.mx-2 {\n margin-right: 0.5rem !important;\n margin-left: 0.5rem !important;\n}\n\n.mx-3 {\n margin-right: 1rem !important;\n margin-left: 1rem !important;\n}\n\n.mx-4 {\n margin-right: 1.5rem !important;\n margin-left: 1.5rem !important;\n}\n\n.mx-5 {\n margin-right: 3rem !important;\n margin-left: 3rem !important;\n}\n\n.mx-auto {\n margin-right: auto !important;\n margin-left: auto !important;\n}\n\n.my-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n}\n\n.my-1 {\n margin-top: 0.25rem !important;\n margin-bottom: 0.25rem !important;\n}\n\n.my-2 {\n margin-top: 0.5rem !important;\n margin-bottom: 0.5rem !important;\n}\n\n.my-3 {\n margin-top: 1rem !important;\n margin-bottom: 1rem !important;\n}\n\n.my-4 {\n margin-top: 1.5rem !important;\n margin-bottom: 1.5rem !important;\n}\n\n.my-5 {\n margin-top: 3rem !important;\n margin-bottom: 3rem !important;\n}\n\n.my-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n}\n\n.mt-0 {\n margin-top: 0 !important;\n}\n\n.mt-1 {\n margin-top: 0.25rem !important;\n}\n\n.mt-2 {\n margin-top: 0.5rem !important;\n}\n\n.mt-3 {\n margin-top: 1rem !important;\n}\n\n.mt-4 {\n margin-top: 1.5rem !important;\n}\n\n.mt-5 {\n margin-top: 3rem !important;\n}\n\n.mt-auto {\n margin-top: auto !important;\n}\n\n.me-0 {\n margin-right: 0 !important;\n}\n\n.me-1 {\n margin-right: 0.25rem !important;\n}\n\n.me-2 {\n margin-right: 0.5rem !important;\n}\n\n.me-3 {\n margin-right: 1rem !important;\n}\n\n.me-4 {\n margin-right: 1.5rem !important;\n}\n\n.me-5 {\n margin-right: 3rem !important;\n}\n\n.me-auto {\n margin-right: auto !important;\n}\n\n.mb-0 {\n margin-bottom: 0 !important;\n}\n\n.mb-1 {\n margin-bottom: 0.25rem !important;\n}\n\n.mb-2 {\n margin-bottom: 0.5rem !important;\n}\n\n.mb-3 {\n margin-bottom: 1rem !important;\n}\n\n.mb-4 {\n margin-bottom: 1.5rem !important;\n}\n\n.mb-5 {\n margin-bottom: 3rem !important;\n}\n\n.mb-auto {\n margin-bottom: auto !important;\n}\n\n.ms-0 {\n margin-left: 0 !important;\n}\n\n.ms-1 {\n margin-left: 0.25rem !important;\n}\n\n.ms-2 {\n margin-left: 0.5rem !important;\n}\n\n.ms-3 {\n margin-left: 1rem !important;\n}\n\n.ms-4 {\n margin-left: 1.5rem !important;\n}\n\n.ms-5 {\n margin-left: 3rem !important;\n}\n\n.ms-auto {\n margin-left: auto !important;\n}\n\n.p-0 {\n padding: 0 !important;\n}\n\n.p-1 {\n padding: 0.25rem !important;\n}\n\n.p-2 {\n padding: 0.5rem !important;\n}\n\n.p-3 {\n padding: 1rem !important;\n}\n\n.p-4 {\n padding: 1.5rem !important;\n}\n\n.p-5 {\n padding: 3rem !important;\n}\n\n.px-0 {\n padding-right: 0 !important;\n padding-left: 0 !important;\n}\n\n.px-1 {\n padding-right: 0.25rem !important;\n padding-left: 0.25rem !important;\n}\n\n.px-2 {\n padding-right: 0.5rem !important;\n padding-left: 0.5rem !important;\n}\n\n.px-3 {\n padding-right: 1rem !important;\n padding-left: 1rem !important;\n}\n\n.px-4 {\n padding-right: 1.5rem !important;\n padding-left: 1.5rem !important;\n}\n\n.px-5 {\n padding-right: 3rem !important;\n padding-left: 3rem !important;\n}\n\n.py-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n}\n\n.py-1 {\n padding-top: 0.25rem !important;\n padding-bottom: 0.25rem !important;\n}\n\n.py-2 {\n padding-top: 0.5rem !important;\n padding-bottom: 0.5rem !important;\n}\n\n.py-3 {\n padding-top: 1rem !important;\n padding-bottom: 1rem !important;\n}\n\n.py-4 {\n padding-top: 1.5rem !important;\n padding-bottom: 1.5rem !important;\n}\n\n.py-5 {\n padding-top: 3rem !important;\n padding-bottom: 3rem !important;\n}\n\n.pt-0 {\n padding-top: 0 !important;\n}\n\n.pt-1 {\n padding-top: 0.25rem !important;\n}\n\n.pt-2 {\n padding-top: 0.5rem !important;\n}\n\n.pt-3 {\n padding-top: 1rem !important;\n}\n\n.pt-4 {\n padding-top: 1.5rem !important;\n}\n\n.pt-5 {\n padding-top: 3rem !important;\n}\n\n.pe-0 {\n padding-right: 0 !important;\n}\n\n.pe-1 {\n padding-right: 0.25rem !important;\n}\n\n.pe-2 {\n padding-right: 0.5rem !important;\n}\n\n.pe-3 {\n padding-right: 1rem !important;\n}\n\n.pe-4 {\n padding-right: 1.5rem !important;\n}\n\n.pe-5 {\n padding-right: 3rem !important;\n}\n\n.pb-0 {\n padding-bottom: 0 !important;\n}\n\n.pb-1 {\n padding-bottom: 0.25rem !important;\n}\n\n.pb-2 {\n padding-bottom: 0.5rem !important;\n}\n\n.pb-3 {\n padding-bottom: 1rem !important;\n}\n\n.pb-4 {\n padding-bottom: 1.5rem !important;\n}\n\n.pb-5 {\n padding-bottom: 3rem !important;\n}\n\n.ps-0 {\n padding-left: 0 !important;\n}\n\n.ps-1 {\n padding-left: 0.25rem !important;\n}\n\n.ps-2 {\n padding-left: 0.5rem !important;\n}\n\n.ps-3 {\n padding-left: 1rem !important;\n}\n\n.ps-4 {\n padding-left: 1.5rem !important;\n}\n\n.ps-5 {\n padding-left: 3rem !important;\n}\n\n.gap-0 {\n gap: 0 !important;\n}\n\n.gap-1 {\n gap: 0.25rem !important;\n}\n\n.gap-2 {\n gap: 0.5rem !important;\n}\n\n.gap-3 {\n gap: 1rem !important;\n}\n\n.gap-4 {\n gap: 1.5rem !important;\n}\n\n.gap-5 {\n gap: 3rem !important;\n}\n\n.row-gap-0 {\n row-gap: 0 !important;\n}\n\n.row-gap-1 {\n row-gap: 0.25rem !important;\n}\n\n.row-gap-2 {\n row-gap: 0.5rem !important;\n}\n\n.row-gap-3 {\n row-gap: 1rem !important;\n}\n\n.row-gap-4 {\n row-gap: 1.5rem !important;\n}\n\n.row-gap-5 {\n row-gap: 3rem !important;\n}\n\n.column-gap-0 {\n -moz-column-gap: 0 !important;\n column-gap: 0 !important;\n}\n\n.column-gap-1 {\n -moz-column-gap: 0.25rem !important;\n column-gap: 0.25rem !important;\n}\n\n.column-gap-2 {\n -moz-column-gap: 0.5rem !important;\n column-gap: 0.5rem !important;\n}\n\n.column-gap-3 {\n -moz-column-gap: 1rem !important;\n column-gap: 1rem !important;\n}\n\n.column-gap-4 {\n -moz-column-gap: 1.5rem !important;\n column-gap: 1.5rem !important;\n}\n\n.column-gap-5 {\n -moz-column-gap: 3rem !important;\n column-gap: 3rem !important;\n}\n\n.font-monospace {\n font-family: var(--bs-font-monospace) !important;\n}\n\n.fs-1 {\n font-size: calc(1.375rem + 1.5vw) !important;\n}\n\n.fs-2 {\n font-size: calc(1.325rem + 0.9vw) !important;\n}\n\n.fs-3 {\n font-size: calc(1.3rem + 0.6vw) !important;\n}\n\n.fs-4 {\n font-size: calc(1.275rem + 0.3vw) !important;\n}\n\n.fs-5 {\n font-size: 1.25rem !important;\n}\n\n.fs-6 {\n font-size: 1rem !important;\n}\n\n.fst-italic {\n font-style: italic !important;\n}\n\n.fst-normal {\n font-style: normal !important;\n}\n\n.fw-lighter {\n font-weight: lighter !important;\n}\n\n.fw-light {\n font-weight: 300 !important;\n}\n\n.fw-normal {\n font-weight: 400 !important;\n}\n\n.fw-medium {\n font-weight: 500 !important;\n}\n\n.fw-semibold {\n font-weight: 600 !important;\n}\n\n.fw-bold {\n font-weight: 700 !important;\n}\n\n.fw-bolder {\n font-weight: bolder !important;\n}\n\n.lh-1 {\n line-height: 1 !important;\n}\n\n.lh-sm {\n line-height: 1.25 !important;\n}\n\n.lh-base {\n line-height: 1.5 !important;\n}\n\n.lh-lg {\n line-height: 2 !important;\n}\n\n.text-start {\n text-align: left !important;\n}\n\n.text-end {\n text-align: right !important;\n}\n\n.text-center {\n text-align: center !important;\n}\n\n.text-decoration-none {\n text-decoration: none !important;\n}\n\n.text-decoration-underline {\n text-decoration: underline !important;\n}\n\n.text-decoration-line-through {\n text-decoration: line-through !important;\n}\n\n.text-lowercase {\n text-transform: lowercase !important;\n}\n\n.text-uppercase {\n text-transform: uppercase !important;\n}\n\n.text-capitalize {\n text-transform: capitalize !important;\n}\n\n.text-wrap {\n white-space: normal !important;\n}\n\n.text-nowrap {\n white-space: nowrap !important;\n}\n\n/* rtl:begin:remove */\n.text-break {\n word-wrap: break-word !important;\n word-break: break-word !important;\n}\n\n/* rtl:end:remove */\n.text-primary {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-primary-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-secondary {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-secondary-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-success {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-success-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-info {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-info-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-warning {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-warning-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-danger {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-danger-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-light {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-light-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-dark {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-dark-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-black {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-black-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-white {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-white-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-body {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-body-color-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-muted {\n --bs-text-opacity: 1;\n color: var(--bs-secondary-color) !important;\n}\n\n.text-black-50 {\n --bs-text-opacity: 1;\n color: rgba(0, 0, 0, 0.5) !important;\n}\n\n.text-white-50 {\n --bs-text-opacity: 1;\n color: rgba(255, 255, 255, 0.5) !important;\n}\n\n.text-body-secondary {\n --bs-text-opacity: 1;\n color: var(--bs-secondary-color) !important;\n}\n\n.text-body-tertiary {\n --bs-text-opacity: 1;\n color: var(--bs-tertiary-color) !important;\n}\n\n.text-body-emphasis {\n --bs-text-opacity: 1;\n color: var(--bs-emphasis-color) !important;\n}\n\n.text-reset {\n --bs-text-opacity: 1;\n color: inherit !important;\n}\n\n.text-opacity-25 {\n --bs-text-opacity: 0.25;\n}\n\n.text-opacity-50 {\n --bs-text-opacity: 0.5;\n}\n\n.text-opacity-75 {\n --bs-text-opacity: 0.75;\n}\n\n.text-opacity-100 {\n --bs-text-opacity: 1;\n}\n\n.text-primary-emphasis {\n color: var(--bs-primary-text-emphasis) !important;\n}\n\n.text-secondary-emphasis {\n color: var(--bs-secondary-text-emphasis) !important;\n}\n\n.text-success-emphasis {\n color: var(--bs-success-text-emphasis) !important;\n}\n\n.text-info-emphasis {\n color: var(--bs-info-text-emphasis) !important;\n}\n\n.text-warning-emphasis {\n color: var(--bs-warning-text-emphasis) !important;\n}\n\n.text-danger-emphasis {\n color: var(--bs-danger-text-emphasis) !important;\n}\n\n.text-light-emphasis {\n color: var(--bs-light-text-emphasis) !important;\n}\n\n.text-dark-emphasis {\n color: var(--bs-dark-text-emphasis) !important;\n}\n\n.link-opacity-10 {\n --bs-link-opacity: 0.1;\n}\n\n.link-opacity-10-hover:hover {\n --bs-link-opacity: 0.1;\n}\n\n.link-opacity-25 {\n --bs-link-opacity: 0.25;\n}\n\n.link-opacity-25-hover:hover {\n --bs-link-opacity: 0.25;\n}\n\n.link-opacity-50 {\n --bs-link-opacity: 0.5;\n}\n\n.link-opacity-50-hover:hover {\n --bs-link-opacity: 0.5;\n}\n\n.link-opacity-75 {\n --bs-link-opacity: 0.75;\n}\n\n.link-opacity-75-hover:hover {\n --bs-link-opacity: 0.75;\n}\n\n.link-opacity-100 {\n --bs-link-opacity: 1;\n}\n\n.link-opacity-100-hover:hover {\n --bs-link-opacity: 1;\n}\n\n.link-offset-1 {\n text-underline-offset: 0.125em !important;\n}\n\n.link-offset-1-hover:hover {\n text-underline-offset: 0.125em !important;\n}\n\n.link-offset-2 {\n text-underline-offset: 0.25em !important;\n}\n\n.link-offset-2-hover:hover {\n text-underline-offset: 0.25em !important;\n}\n\n.link-offset-3 {\n text-underline-offset: 0.375em !important;\n}\n\n.link-offset-3-hover:hover {\n text-underline-offset: 0.375em !important;\n}\n\n.link-underline-primary {\n --bs-link-underline-opacity: 1;\n -webkit-text-decoration-color: rgba(var(--bs-primary-rgb), var(--bs-link-underline-opacity)) !important;\n text-decoration-color: rgba(var(--bs-primary-rgb), var(--bs-link-underline-opacity)) !important;\n}\n\n.link-underline-secondary {\n --bs-link-underline-opacity: 1;\n -webkit-text-decoration-color: rgba(var(--bs-secondary-rgb), var(--bs-link-underline-opacity)) !important;\n text-decoration-color: rgba(var(--bs-secondary-rgb), var(--bs-link-underline-opacity)) !important;\n}\n\n.link-underline-success {\n --bs-link-underline-opacity: 1;\n -webkit-text-decoration-color: rgba(var(--bs-success-rgb), var(--bs-link-underline-opacity)) !important;\n text-decoration-color: rgba(var(--bs-success-rgb), var(--bs-link-underline-opacity)) !important;\n}\n\n.link-underline-info {\n --bs-link-underline-opacity: 1;\n -webkit-text-decoration-color: rgba(var(--bs-info-rgb), var(--bs-link-underline-opacity)) !important;\n text-decoration-color: rgba(var(--bs-info-rgb), var(--bs-link-underline-opacity)) !important;\n}\n\n.link-underline-warning {\n --bs-link-underline-opacity: 1;\n -webkit-text-decoration-color: rgba(var(--bs-warning-rgb), var(--bs-link-underline-opacity)) !important;\n text-decoration-color: rgba(var(--bs-warning-rgb), var(--bs-link-underline-opacity)) !important;\n}\n\n.link-underline-danger {\n --bs-link-underline-opacity: 1;\n -webkit-text-decoration-color: rgba(var(--bs-danger-rgb), var(--bs-link-underline-opacity)) !important;\n text-decoration-color: rgba(var(--bs-danger-rgb), var(--bs-link-underline-opacity)) !important;\n}\n\n.link-underline-light {\n --bs-link-underline-opacity: 1;\n -webkit-text-decoration-color: rgba(var(--bs-light-rgb), var(--bs-link-underline-opacity)) !important;\n text-decoration-color: rgba(var(--bs-light-rgb), var(--bs-link-underline-opacity)) !important;\n}\n\n.link-underline-dark {\n --bs-link-underline-opacity: 1;\n -webkit-text-decoration-color: rgba(var(--bs-dark-rgb), var(--bs-link-underline-opacity)) !important;\n text-decoration-color: rgba(var(--bs-dark-rgb), var(--bs-link-underline-opacity)) !important;\n}\n\n.link-underline {\n --bs-link-underline-opacity: 1;\n -webkit-text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n\n.link-underline-opacity-0 {\n --bs-link-underline-opacity: 0;\n}\n\n.link-underline-opacity-0-hover:hover {\n --bs-link-underline-opacity: 0;\n}\n\n.link-underline-opacity-10 {\n --bs-link-underline-opacity: 0.1;\n}\n\n.link-underline-opacity-10-hover:hover {\n --bs-link-underline-opacity: 0.1;\n}\n\n.link-underline-opacity-25 {\n --bs-link-underline-opacity: 0.25;\n}\n\n.link-underline-opacity-25-hover:hover {\n --bs-link-underline-opacity: 0.25;\n}\n\n.link-underline-opacity-50 {\n --bs-link-underline-opacity: 0.5;\n}\n\n.link-underline-opacity-50-hover:hover {\n --bs-link-underline-opacity: 0.5;\n}\n\n.link-underline-opacity-75 {\n --bs-link-underline-opacity: 0.75;\n}\n\n.link-underline-opacity-75-hover:hover {\n --bs-link-underline-opacity: 0.75;\n}\n\n.link-underline-opacity-100 {\n --bs-link-underline-opacity: 1;\n}\n\n.link-underline-opacity-100-hover:hover {\n --bs-link-underline-opacity: 1;\n}\n\n.bg-primary {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-primary-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-secondary {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-secondary-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-success {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-success-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-info {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-info-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-warning {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-warning-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-danger {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-danger-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-light {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-light-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-dark {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-dark-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-black {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-black-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-white {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-white-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-body {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-body-bg-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-transparent {\n --bs-bg-opacity: 1;\n background-color: transparent !important;\n}\n\n.bg-body-secondary {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-secondary-bg-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-body-tertiary {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-tertiary-bg-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-opacity-10 {\n --bs-bg-opacity: 0.1;\n}\n\n.bg-opacity-25 {\n --bs-bg-opacity: 0.25;\n}\n\n.bg-opacity-50 {\n --bs-bg-opacity: 0.5;\n}\n\n.bg-opacity-75 {\n --bs-bg-opacity: 0.75;\n}\n\n.bg-opacity-100 {\n --bs-bg-opacity: 1;\n}\n\n.bg-primary-subtle {\n background-color: var(--bs-primary-bg-subtle) !important;\n}\n\n.bg-secondary-subtle {\n background-color: var(--bs-secondary-bg-subtle) !important;\n}\n\n.bg-success-subtle {\n background-color: var(--bs-success-bg-subtle) !important;\n}\n\n.bg-info-subtle {\n background-color: var(--bs-info-bg-subtle) !important;\n}\n\n.bg-warning-subtle {\n background-color: var(--bs-warning-bg-subtle) !important;\n}\n\n.bg-danger-subtle {\n background-color: var(--bs-danger-bg-subtle) !important;\n}\n\n.bg-light-subtle {\n background-color: var(--bs-light-bg-subtle) !important;\n}\n\n.bg-dark-subtle {\n background-color: var(--bs-dark-bg-subtle) !important;\n}\n\n.bg-gradient {\n background-image: var(--bs-gradient) !important;\n}\n\n.user-select-all {\n -webkit-user-select: all !important;\n -moz-user-select: all !important;\n user-select: all !important;\n}\n\n.user-select-auto {\n -webkit-user-select: auto !important;\n -moz-user-select: auto !important;\n user-select: auto !important;\n}\n\n.user-select-none {\n -webkit-user-select: none !important;\n -moz-user-select: none !important;\n user-select: none !important;\n}\n\n.pe-none {\n pointer-events: none !important;\n}\n\n.pe-auto {\n pointer-events: auto !important;\n}\n\n.rounded {\n border-radius: var(--bs-border-radius) !important;\n}\n\n.rounded-0 {\n border-radius: 0 !important;\n}\n\n.rounded-1 {\n border-radius: var(--bs-border-radius-sm) !important;\n}\n\n.rounded-2 {\n border-radius: var(--bs-border-radius) !important;\n}\n\n.rounded-3 {\n border-radius: var(--bs-border-radius-lg) !important;\n}\n\n.rounded-4 {\n border-radius: var(--bs-border-radius-xl) !important;\n}\n\n.rounded-5 {\n border-radius: var(--bs-border-radius-xxl) !important;\n}\n\n.rounded-circle {\n border-radius: 50% !important;\n}\n\n.rounded-pill {\n border-radius: var(--bs-border-radius-pill) !important;\n}\n\n.rounded-top {\n border-top-left-radius: var(--bs-border-radius) !important;\n border-top-right-radius: var(--bs-border-radius) !important;\n}\n\n.rounded-top-0 {\n border-top-left-radius: 0 !important;\n border-top-right-radius: 0 !important;\n}\n\n.rounded-top-1 {\n border-top-left-radius: var(--bs-border-radius-sm) !important;\n border-top-right-radius: var(--bs-border-radius-sm) !important;\n}\n\n.rounded-top-2 {\n border-top-left-radius: var(--bs-border-radius) !important;\n border-top-right-radius: var(--bs-border-radius) !important;\n}\n\n.rounded-top-3 {\n border-top-left-radius: var(--bs-border-radius-lg) !important;\n border-top-right-radius: var(--bs-border-radius-lg) !important;\n}\n\n.rounded-top-4 {\n border-top-left-radius: var(--bs-border-radius-xl) !important;\n border-top-right-radius: var(--bs-border-radius-xl) !important;\n}\n\n.rounded-top-5 {\n border-top-left-radius: var(--bs-border-radius-xxl) !important;\n border-top-right-radius: var(--bs-border-radius-xxl) !important;\n}\n\n.rounded-top-circle {\n border-top-left-radius: 50% !important;\n border-top-right-radius: 50% !important;\n}\n\n.rounded-top-pill {\n border-top-left-radius: var(--bs-border-radius-pill) !important;\n border-top-right-radius: var(--bs-border-radius-pill) !important;\n}\n\n.rounded-end {\n border-top-right-radius: var(--bs-border-radius) !important;\n border-bottom-right-radius: var(--bs-border-radius) !important;\n}\n\n.rounded-end-0 {\n border-top-right-radius: 0 !important;\n border-bottom-right-radius: 0 !important;\n}\n\n.rounded-end-1 {\n border-top-right-radius: var(--bs-border-radius-sm) !important;\n border-bottom-right-radius: var(--bs-border-radius-sm) !important;\n}\n\n.rounded-end-2 {\n border-top-right-radius: var(--bs-border-radius) !important;\n border-bottom-right-radius: var(--bs-border-radius) !important;\n}\n\n.rounded-end-3 {\n border-top-right-radius: var(--bs-border-radius-lg) !important;\n border-bottom-right-radius: var(--bs-border-radius-lg) !important;\n}\n\n.rounded-end-4 {\n border-top-right-radius: var(--bs-border-radius-xl) !important;\n border-bottom-right-radius: var(--bs-border-radius-xl) !important;\n}\n\n.rounded-end-5 {\n border-top-right-radius: var(--bs-border-radius-xxl) !important;\n border-bottom-right-radius: var(--bs-border-radius-xxl) !important;\n}\n\n.rounded-end-circle {\n border-top-right-radius: 50% !important;\n border-bottom-right-radius: 50% !important;\n}\n\n.rounded-end-pill {\n border-top-right-radius: var(--bs-border-radius-pill) !important;\n border-bottom-right-radius: var(--bs-border-radius-pill) !important;\n}\n\n.rounded-bottom {\n border-bottom-right-radius: var(--bs-border-radius) !important;\n border-bottom-left-radius: var(--bs-border-radius) !important;\n}\n\n.rounded-bottom-0 {\n border-bottom-right-radius: 0 !important;\n border-bottom-left-radius: 0 !important;\n}\n\n.rounded-bottom-1 {\n border-bottom-right-radius: var(--bs-border-radius-sm) !important;\n border-bottom-left-radius: var(--bs-border-radius-sm) !important;\n}\n\n.rounded-bottom-2 {\n border-bottom-right-radius: var(--bs-border-radius) !important;\n border-bottom-left-radius: var(--bs-border-radius) !important;\n}\n\n.rounded-bottom-3 {\n border-bottom-right-radius: var(--bs-border-radius-lg) !important;\n border-bottom-left-radius: var(--bs-border-radius-lg) !important;\n}\n\n.rounded-bottom-4 {\n border-bottom-right-radius: var(--bs-border-radius-xl) !important;\n border-bottom-left-radius: var(--bs-border-radius-xl) !important;\n}\n\n.rounded-bottom-5 {\n border-bottom-right-radius: var(--bs-border-radius-xxl) !important;\n border-bottom-left-radius: var(--bs-border-radius-xxl) !important;\n}\n\n.rounded-bottom-circle {\n border-bottom-right-radius: 50% !important;\n border-bottom-left-radius: 50% !important;\n}\n\n.rounded-bottom-pill {\n border-bottom-right-radius: var(--bs-border-radius-pill) !important;\n border-bottom-left-radius: var(--bs-border-radius-pill) !important;\n}\n\n.rounded-start {\n border-bottom-left-radius: var(--bs-border-radius) !important;\n border-top-left-radius: var(--bs-border-radius) !important;\n}\n\n.rounded-start-0 {\n border-bottom-left-radius: 0 !important;\n border-top-left-radius: 0 !important;\n}\n\n.rounded-start-1 {\n border-bottom-left-radius: var(--bs-border-radius-sm) !important;\n border-top-left-radius: var(--bs-border-radius-sm) !important;\n}\n\n.rounded-start-2 {\n border-bottom-left-radius: var(--bs-border-radius) !important;\n border-top-left-radius: var(--bs-border-radius) !important;\n}\n\n.rounded-start-3 {\n border-bottom-left-radius: var(--bs-border-radius-lg) !important;\n border-top-left-radius: var(--bs-border-radius-lg) !important;\n}\n\n.rounded-start-4 {\n border-bottom-left-radius: var(--bs-border-radius-xl) !important;\n border-top-left-radius: var(--bs-border-radius-xl) !important;\n}\n\n.rounded-start-5 {\n border-bottom-left-radius: var(--bs-border-radius-xxl) !important;\n border-top-left-radius: var(--bs-border-radius-xxl) !important;\n}\n\n.rounded-start-circle {\n border-bottom-left-radius: 50% !important;\n border-top-left-radius: 50% !important;\n}\n\n.rounded-start-pill {\n border-bottom-left-radius: var(--bs-border-radius-pill) !important;\n border-top-left-radius: var(--bs-border-radius-pill) !important;\n}\n\n.visible {\n visibility: visible !important;\n}\n\n.invisible {\n visibility: hidden !important;\n}\n\n.z-n1 {\n z-index: -1 !important;\n}\n\n.z-0 {\n z-index: 0 !important;\n}\n\n.z-1 {\n z-index: 1 !important;\n}\n\n.z-2 {\n z-index: 2 !important;\n}\n\n.z-3 {\n z-index: 3 !important;\n}\n\n@media (min-width: 576px) {\n .float-sm-start {\n float: left !important;\n }\n .float-sm-end {\n float: right !important;\n }\n .float-sm-none {\n float: none !important;\n }\n .object-fit-sm-contain {\n -o-object-fit: contain !important;\n object-fit: contain !important;\n }\n .object-fit-sm-cover {\n -o-object-fit: cover !important;\n object-fit: cover !important;\n }\n .object-fit-sm-fill {\n -o-object-fit: fill !important;\n object-fit: fill !important;\n }\n .object-fit-sm-scale {\n -o-object-fit: scale-down !important;\n object-fit: scale-down !important;\n }\n .object-fit-sm-none {\n -o-object-fit: none !important;\n object-fit: none !important;\n }\n .d-sm-inline {\n display: inline !important;\n }\n .d-sm-inline-block {\n display: inline-block !important;\n }\n .d-sm-block {\n display: block !important;\n }\n .d-sm-grid {\n display: grid !important;\n }\n .d-sm-inline-grid {\n display: inline-grid !important;\n }\n .d-sm-table {\n display: table !important;\n }\n .d-sm-table-row {\n display: table-row !important;\n }\n .d-sm-table-cell {\n display: table-cell !important;\n }\n .d-sm-flex {\n display: flex !important;\n }\n .d-sm-inline-flex {\n display: inline-flex !important;\n }\n .d-sm-none {\n display: none !important;\n }\n .flex-sm-fill {\n flex: 1 1 auto !important;\n }\n .flex-sm-row {\n flex-direction: row !important;\n }\n .flex-sm-column {\n flex-direction: column !important;\n }\n .flex-sm-row-reverse {\n flex-direction: row-reverse !important;\n }\n .flex-sm-column-reverse {\n flex-direction: column-reverse !important;\n }\n .flex-sm-grow-0 {\n flex-grow: 0 !important;\n }\n .flex-sm-grow-1 {\n flex-grow: 1 !important;\n }\n .flex-sm-shrink-0 {\n flex-shrink: 0 !important;\n }\n .flex-sm-shrink-1 {\n flex-shrink: 1 !important;\n }\n .flex-sm-wrap {\n flex-wrap: wrap !important;\n }\n .flex-sm-nowrap {\n flex-wrap: nowrap !important;\n }\n .flex-sm-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n .justify-content-sm-start {\n justify-content: flex-start !important;\n }\n .justify-content-sm-end {\n justify-content: flex-end !important;\n }\n .justify-content-sm-center {\n justify-content: center !important;\n }\n .justify-content-sm-between {\n justify-content: space-between !important;\n }\n .justify-content-sm-around {\n justify-content: space-around !important;\n }\n .justify-content-sm-evenly {\n justify-content: space-evenly !important;\n }\n .align-items-sm-start {\n align-items: flex-start !important;\n }\n .align-items-sm-end {\n align-items: flex-end !important;\n }\n .align-items-sm-center {\n align-items: center !important;\n }\n .align-items-sm-baseline {\n align-items: baseline !important;\n }\n .align-items-sm-stretch {\n align-items: stretch !important;\n }\n .align-content-sm-start {\n align-content: flex-start !important;\n }\n .align-content-sm-end {\n align-content: flex-end !important;\n }\n .align-content-sm-center {\n align-content: center !important;\n }\n .align-content-sm-between {\n align-content: space-between !important;\n }\n .align-content-sm-around {\n align-content: space-around !important;\n }\n .align-content-sm-stretch {\n align-content: stretch !important;\n }\n .align-self-sm-auto {\n align-self: auto !important;\n }\n .align-self-sm-start {\n align-self: flex-start !important;\n }\n .align-self-sm-end {\n align-self: flex-end !important;\n }\n .align-self-sm-center {\n align-self: center !important;\n }\n .align-self-sm-baseline {\n align-self: baseline !important;\n }\n .align-self-sm-stretch {\n align-self: stretch !important;\n }\n .order-sm-first {\n order: -1 !important;\n }\n .order-sm-0 {\n order: 0 !important;\n }\n .order-sm-1 {\n order: 1 !important;\n }\n .order-sm-2 {\n order: 2 !important;\n }\n .order-sm-3 {\n order: 3 !important;\n }\n .order-sm-4 {\n order: 4 !important;\n }\n .order-sm-5 {\n order: 5 !important;\n }\n .order-sm-last {\n order: 6 !important;\n }\n .m-sm-0 {\n margin: 0 !important;\n }\n .m-sm-1 {\n margin: 0.25rem !important;\n }\n .m-sm-2 {\n margin: 0.5rem !important;\n }\n .m-sm-3 {\n margin: 1rem !important;\n }\n .m-sm-4 {\n margin: 1.5rem !important;\n }\n .m-sm-5 {\n margin: 3rem !important;\n }\n .m-sm-auto {\n margin: auto !important;\n }\n .mx-sm-0 {\n margin-right: 0 !important;\n margin-left: 0 !important;\n }\n .mx-sm-1 {\n margin-right: 0.25rem !important;\n margin-left: 0.25rem !important;\n }\n .mx-sm-2 {\n margin-right: 0.5rem !important;\n margin-left: 0.5rem !important;\n }\n .mx-sm-3 {\n margin-right: 1rem !important;\n margin-left: 1rem !important;\n }\n .mx-sm-4 {\n margin-right: 1.5rem !important;\n margin-left: 1.5rem !important;\n }\n .mx-sm-5 {\n margin-right: 3rem !important;\n margin-left: 3rem !important;\n }\n .mx-sm-auto {\n margin-right: auto !important;\n margin-left: auto !important;\n }\n .my-sm-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n }\n .my-sm-1 {\n margin-top: 0.25rem !important;\n margin-bottom: 0.25rem !important;\n }\n .my-sm-2 {\n margin-top: 0.5rem !important;\n margin-bottom: 0.5rem !important;\n }\n .my-sm-3 {\n margin-top: 1rem !important;\n margin-bottom: 1rem !important;\n }\n .my-sm-4 {\n margin-top: 1.5rem !important;\n margin-bottom: 1.5rem !important;\n }\n .my-sm-5 {\n margin-top: 3rem !important;\n margin-bottom: 3rem !important;\n }\n .my-sm-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n }\n .mt-sm-0 {\n margin-top: 0 !important;\n }\n .mt-sm-1 {\n margin-top: 0.25rem !important;\n }\n .mt-sm-2 {\n margin-top: 0.5rem !important;\n }\n .mt-sm-3 {\n margin-top: 1rem !important;\n }\n .mt-sm-4 {\n margin-top: 1.5rem !important;\n }\n .mt-sm-5 {\n margin-top: 3rem !important;\n }\n .mt-sm-auto {\n margin-top: auto !important;\n }\n .me-sm-0 {\n margin-right: 0 !important;\n }\n .me-sm-1 {\n margin-right: 0.25rem !important;\n }\n .me-sm-2 {\n margin-right: 0.5rem !important;\n }\n .me-sm-3 {\n margin-right: 1rem !important;\n }\n .me-sm-4 {\n margin-right: 1.5rem !important;\n }\n .me-sm-5 {\n margin-right: 3rem !important;\n }\n .me-sm-auto {\n margin-right: auto !important;\n }\n .mb-sm-0 {\n margin-bottom: 0 !important;\n }\n .mb-sm-1 {\n margin-bottom: 0.25rem !important;\n }\n .mb-sm-2 {\n margin-bottom: 0.5rem !important;\n }\n .mb-sm-3 {\n margin-bottom: 1rem !important;\n }\n .mb-sm-4 {\n margin-bottom: 1.5rem !important;\n }\n .mb-sm-5 {\n margin-bottom: 3rem !important;\n }\n .mb-sm-auto {\n margin-bottom: auto !important;\n }\n .ms-sm-0 {\n margin-left: 0 !important;\n }\n .ms-sm-1 {\n margin-left: 0.25rem !important;\n }\n .ms-sm-2 {\n margin-left: 0.5rem !important;\n }\n .ms-sm-3 {\n margin-left: 1rem !important;\n }\n .ms-sm-4 {\n margin-left: 1.5rem !important;\n }\n .ms-sm-5 {\n margin-left: 3rem !important;\n }\n .ms-sm-auto {\n margin-left: auto !important;\n }\n .p-sm-0 {\n padding: 0 !important;\n }\n .p-sm-1 {\n padding: 0.25rem !important;\n }\n .p-sm-2 {\n padding: 0.5rem !important;\n }\n .p-sm-3 {\n padding: 1rem !important;\n }\n .p-sm-4 {\n padding: 1.5rem !important;\n }\n .p-sm-5 {\n padding: 3rem !important;\n }\n .px-sm-0 {\n padding-right: 0 !important;\n padding-left: 0 !important;\n }\n .px-sm-1 {\n padding-right: 0.25rem !important;\n padding-left: 0.25rem !important;\n }\n .px-sm-2 {\n padding-right: 0.5rem !important;\n padding-left: 0.5rem !important;\n }\n .px-sm-3 {\n padding-right: 1rem !important;\n padding-left: 1rem !important;\n }\n .px-sm-4 {\n padding-right: 1.5rem !important;\n padding-left: 1.5rem !important;\n }\n .px-sm-5 {\n padding-right: 3rem !important;\n padding-left: 3rem !important;\n }\n .py-sm-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n }\n .py-sm-1 {\n padding-top: 0.25rem !important;\n padding-bottom: 0.25rem !important;\n }\n .py-sm-2 {\n padding-top: 0.5rem !important;\n padding-bottom: 0.5rem !important;\n }\n .py-sm-3 {\n padding-top: 1rem !important;\n padding-bottom: 1rem !important;\n }\n .py-sm-4 {\n padding-top: 1.5rem !important;\n padding-bottom: 1.5rem !important;\n }\n .py-sm-5 {\n padding-top: 3rem !important;\n padding-bottom: 3rem !important;\n }\n .pt-sm-0 {\n padding-top: 0 !important;\n }\n .pt-sm-1 {\n padding-top: 0.25rem !important;\n }\n .pt-sm-2 {\n padding-top: 0.5rem !important;\n }\n .pt-sm-3 {\n padding-top: 1rem !important;\n }\n .pt-sm-4 {\n padding-top: 1.5rem !important;\n }\n .pt-sm-5 {\n padding-top: 3rem !important;\n }\n .pe-sm-0 {\n padding-right: 0 !important;\n }\n .pe-sm-1 {\n padding-right: 0.25rem !important;\n }\n .pe-sm-2 {\n padding-right: 0.5rem !important;\n }\n .pe-sm-3 {\n padding-right: 1rem !important;\n }\n .pe-sm-4 {\n padding-right: 1.5rem !important;\n }\n .pe-sm-5 {\n padding-right: 3rem !important;\n }\n .pb-sm-0 {\n padding-bottom: 0 !important;\n }\n .pb-sm-1 {\n padding-bottom: 0.25rem !important;\n }\n .pb-sm-2 {\n padding-bottom: 0.5rem !important;\n }\n .pb-sm-3 {\n padding-bottom: 1rem !important;\n }\n .pb-sm-4 {\n padding-bottom: 1.5rem !important;\n }\n .pb-sm-5 {\n padding-bottom: 3rem !important;\n }\n .ps-sm-0 {\n padding-left: 0 !important;\n }\n .ps-sm-1 {\n padding-left: 0.25rem !important;\n }\n .ps-sm-2 {\n padding-left: 0.5rem !important;\n }\n .ps-sm-3 {\n padding-left: 1rem !important;\n }\n .ps-sm-4 {\n padding-left: 1.5rem !important;\n }\n .ps-sm-5 {\n padding-left: 3rem !important;\n }\n .gap-sm-0 {\n gap: 0 !important;\n }\n .gap-sm-1 {\n gap: 0.25rem !important;\n }\n .gap-sm-2 {\n gap: 0.5rem !important;\n }\n .gap-sm-3 {\n gap: 1rem !important;\n }\n .gap-sm-4 {\n gap: 1.5rem !important;\n }\n .gap-sm-5 {\n gap: 3rem !important;\n }\n .row-gap-sm-0 {\n row-gap: 0 !important;\n }\n .row-gap-sm-1 {\n row-gap: 0.25rem !important;\n }\n .row-gap-sm-2 {\n row-gap: 0.5rem !important;\n }\n .row-gap-sm-3 {\n row-gap: 1rem !important;\n }\n .row-gap-sm-4 {\n row-gap: 1.5rem !important;\n }\n .row-gap-sm-5 {\n row-gap: 3rem !important;\n }\n .column-gap-sm-0 {\n -moz-column-gap: 0 !important;\n column-gap: 0 !important;\n }\n .column-gap-sm-1 {\n -moz-column-gap: 0.25rem !important;\n column-gap: 0.25rem !important;\n }\n .column-gap-sm-2 {\n -moz-column-gap: 0.5rem !important;\n column-gap: 0.5rem !important;\n }\n .column-gap-sm-3 {\n -moz-column-gap: 1rem !important;\n column-gap: 1rem !important;\n }\n .column-gap-sm-4 {\n -moz-column-gap: 1.5rem !important;\n column-gap: 1.5rem !important;\n }\n .column-gap-sm-5 {\n -moz-column-gap: 3rem !important;\n column-gap: 3rem !important;\n }\n .text-sm-start {\n text-align: left !important;\n }\n .text-sm-end {\n text-align: right !important;\n }\n .text-sm-center {\n text-align: center !important;\n }\n}\n@media (min-width: 768px) {\n .float-md-start {\n float: left !important;\n }\n .float-md-end {\n float: right !important;\n }\n .float-md-none {\n float: none !important;\n }\n .object-fit-md-contain {\n -o-object-fit: contain !important;\n object-fit: contain !important;\n }\n .object-fit-md-cover {\n -o-object-fit: cover !important;\n object-fit: cover !important;\n }\n .object-fit-md-fill {\n -o-object-fit: fill !important;\n object-fit: fill !important;\n }\n .object-fit-md-scale {\n -o-object-fit: scale-down !important;\n object-fit: scale-down !important;\n }\n .object-fit-md-none {\n -o-object-fit: none !important;\n object-fit: none !important;\n }\n .d-md-inline {\n display: inline !important;\n }\n .d-md-inline-block {\n display: inline-block !important;\n }\n .d-md-block {\n display: block !important;\n }\n .d-md-grid {\n display: grid !important;\n }\n .d-md-inline-grid {\n display: inline-grid !important;\n }\n .d-md-table {\n display: table !important;\n }\n .d-md-table-row {\n display: table-row !important;\n }\n .d-md-table-cell {\n display: table-cell !important;\n }\n .d-md-flex {\n display: flex !important;\n }\n .d-md-inline-flex {\n display: inline-flex !important;\n }\n .d-md-none {\n display: none !important;\n }\n .flex-md-fill {\n flex: 1 1 auto !important;\n }\n .flex-md-row {\n flex-direction: row !important;\n }\n .flex-md-column {\n flex-direction: column !important;\n }\n .flex-md-row-reverse {\n flex-direction: row-reverse !important;\n }\n .flex-md-column-reverse {\n flex-direction: column-reverse !important;\n }\n .flex-md-grow-0 {\n flex-grow: 0 !important;\n }\n .flex-md-grow-1 {\n flex-grow: 1 !important;\n }\n .flex-md-shrink-0 {\n flex-shrink: 0 !important;\n }\n .flex-md-shrink-1 {\n flex-shrink: 1 !important;\n }\n .flex-md-wrap {\n flex-wrap: wrap !important;\n }\n .flex-md-nowrap {\n flex-wrap: nowrap !important;\n }\n .flex-md-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n .justify-content-md-start {\n justify-content: flex-start !important;\n }\n .justify-content-md-end {\n justify-content: flex-end !important;\n }\n .justify-content-md-center {\n justify-content: center !important;\n }\n .justify-content-md-between {\n justify-content: space-between !important;\n }\n .justify-content-md-around {\n justify-content: space-around !important;\n }\n .justify-content-md-evenly {\n justify-content: space-evenly !important;\n }\n .align-items-md-start {\n align-items: flex-start !important;\n }\n .align-items-md-end {\n align-items: flex-end !important;\n }\n .align-items-md-center {\n align-items: center !important;\n }\n .align-items-md-baseline {\n align-items: baseline !important;\n }\n .align-items-md-stretch {\n align-items: stretch !important;\n }\n .align-content-md-start {\n align-content: flex-start !important;\n }\n .align-content-md-end {\n align-content: flex-end !important;\n }\n .align-content-md-center {\n align-content: center !important;\n }\n .align-content-md-between {\n align-content: space-between !important;\n }\n .align-content-md-around {\n align-content: space-around !important;\n }\n .align-content-md-stretch {\n align-content: stretch !important;\n }\n .align-self-md-auto {\n align-self: auto !important;\n }\n .align-self-md-start {\n align-self: flex-start !important;\n }\n .align-self-md-end {\n align-self: flex-end !important;\n }\n .align-self-md-center {\n align-self: center !important;\n }\n .align-self-md-baseline {\n align-self: baseline !important;\n }\n .align-self-md-stretch {\n align-self: stretch !important;\n }\n .order-md-first {\n order: -1 !important;\n }\n .order-md-0 {\n order: 0 !important;\n }\n .order-md-1 {\n order: 1 !important;\n }\n .order-md-2 {\n order: 2 !important;\n }\n .order-md-3 {\n order: 3 !important;\n }\n .order-md-4 {\n order: 4 !important;\n }\n .order-md-5 {\n order: 5 !important;\n }\n .order-md-last {\n order: 6 !important;\n }\n .m-md-0 {\n margin: 0 !important;\n }\n .m-md-1 {\n margin: 0.25rem !important;\n }\n .m-md-2 {\n margin: 0.5rem !important;\n }\n .m-md-3 {\n margin: 1rem !important;\n }\n .m-md-4 {\n margin: 1.5rem !important;\n }\n .m-md-5 {\n margin: 3rem !important;\n }\n .m-md-auto {\n margin: auto !important;\n }\n .mx-md-0 {\n margin-right: 0 !important;\n margin-left: 0 !important;\n }\n .mx-md-1 {\n margin-right: 0.25rem !important;\n margin-left: 0.25rem !important;\n }\n .mx-md-2 {\n margin-right: 0.5rem !important;\n margin-left: 0.5rem !important;\n }\n .mx-md-3 {\n margin-right: 1rem !important;\n margin-left: 1rem !important;\n }\n .mx-md-4 {\n margin-right: 1.5rem !important;\n margin-left: 1.5rem !important;\n }\n .mx-md-5 {\n margin-right: 3rem !important;\n margin-left: 3rem !important;\n }\n .mx-md-auto {\n margin-right: auto !important;\n margin-left: auto !important;\n }\n .my-md-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n }\n .my-md-1 {\n margin-top: 0.25rem !important;\n margin-bottom: 0.25rem !important;\n }\n .my-md-2 {\n margin-top: 0.5rem !important;\n margin-bottom: 0.5rem !important;\n }\n .my-md-3 {\n margin-top: 1rem !important;\n margin-bottom: 1rem !important;\n }\n .my-md-4 {\n margin-top: 1.5rem !important;\n margin-bottom: 1.5rem !important;\n }\n .my-md-5 {\n margin-top: 3rem !important;\n margin-bottom: 3rem !important;\n }\n .my-md-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n }\n .mt-md-0 {\n margin-top: 0 !important;\n }\n .mt-md-1 {\n margin-top: 0.25rem !important;\n }\n .mt-md-2 {\n margin-top: 0.5rem !important;\n }\n .mt-md-3 {\n margin-top: 1rem !important;\n }\n .mt-md-4 {\n margin-top: 1.5rem !important;\n }\n .mt-md-5 {\n margin-top: 3rem !important;\n }\n .mt-md-auto {\n margin-top: auto !important;\n }\n .me-md-0 {\n margin-right: 0 !important;\n }\n .me-md-1 {\n margin-right: 0.25rem !important;\n }\n .me-md-2 {\n margin-right: 0.5rem !important;\n }\n .me-md-3 {\n margin-right: 1rem !important;\n }\n .me-md-4 {\n margin-right: 1.5rem !important;\n }\n .me-md-5 {\n margin-right: 3rem !important;\n }\n .me-md-auto {\n margin-right: auto !important;\n }\n .mb-md-0 {\n margin-bottom: 0 !important;\n }\n .mb-md-1 {\n margin-bottom: 0.25rem !important;\n }\n .mb-md-2 {\n margin-bottom: 0.5rem !important;\n }\n .mb-md-3 {\n margin-bottom: 1rem !important;\n }\n .mb-md-4 {\n margin-bottom: 1.5rem !important;\n }\n .mb-md-5 {\n margin-bottom: 3rem !important;\n }\n .mb-md-auto {\n margin-bottom: auto !important;\n }\n .ms-md-0 {\n margin-left: 0 !important;\n }\n .ms-md-1 {\n margin-left: 0.25rem !important;\n }\n .ms-md-2 {\n margin-left: 0.5rem !important;\n }\n .ms-md-3 {\n margin-left: 1rem !important;\n }\n .ms-md-4 {\n margin-left: 1.5rem !important;\n }\n .ms-md-5 {\n margin-left: 3rem !important;\n }\n .ms-md-auto {\n margin-left: auto !important;\n }\n .p-md-0 {\n padding: 0 !important;\n }\n .p-md-1 {\n padding: 0.25rem !important;\n }\n .p-md-2 {\n padding: 0.5rem !important;\n }\n .p-md-3 {\n padding: 1rem !important;\n }\n .p-md-4 {\n padding: 1.5rem !important;\n }\n .p-md-5 {\n padding: 3rem !important;\n }\n .px-md-0 {\n padding-right: 0 !important;\n padding-left: 0 !important;\n }\n .px-md-1 {\n padding-right: 0.25rem !important;\n padding-left: 0.25rem !important;\n }\n .px-md-2 {\n padding-right: 0.5rem !important;\n padding-left: 0.5rem !important;\n }\n .px-md-3 {\n padding-right: 1rem !important;\n padding-left: 1rem !important;\n }\n .px-md-4 {\n padding-right: 1.5rem !important;\n padding-left: 1.5rem !important;\n }\n .px-md-5 {\n padding-right: 3rem !important;\n padding-left: 3rem !important;\n }\n .py-md-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n }\n .py-md-1 {\n padding-top: 0.25rem !important;\n padding-bottom: 0.25rem !important;\n }\n .py-md-2 {\n padding-top: 0.5rem !important;\n padding-bottom: 0.5rem !important;\n }\n .py-md-3 {\n padding-top: 1rem !important;\n padding-bottom: 1rem !important;\n }\n .py-md-4 {\n padding-top: 1.5rem !important;\n padding-bottom: 1.5rem !important;\n }\n .py-md-5 {\n padding-top: 3rem !important;\n padding-bottom: 3rem !important;\n }\n .pt-md-0 {\n padding-top: 0 !important;\n }\n .pt-md-1 {\n padding-top: 0.25rem !important;\n }\n .pt-md-2 {\n padding-top: 0.5rem !important;\n }\n .pt-md-3 {\n padding-top: 1rem !important;\n }\n .pt-md-4 {\n padding-top: 1.5rem !important;\n }\n .pt-md-5 {\n padding-top: 3rem !important;\n }\n .pe-md-0 {\n padding-right: 0 !important;\n }\n .pe-md-1 {\n padding-right: 0.25rem !important;\n }\n .pe-md-2 {\n padding-right: 0.5rem !important;\n }\n .pe-md-3 {\n padding-right: 1rem !important;\n }\n .pe-md-4 {\n padding-right: 1.5rem !important;\n }\n .pe-md-5 {\n padding-right: 3rem !important;\n }\n .pb-md-0 {\n padding-bottom: 0 !important;\n }\n .pb-md-1 {\n padding-bottom: 0.25rem !important;\n }\n .pb-md-2 {\n padding-bottom: 0.5rem !important;\n }\n .pb-md-3 {\n padding-bottom: 1rem !important;\n }\n .pb-md-4 {\n padding-bottom: 1.5rem !important;\n }\n .pb-md-5 {\n padding-bottom: 3rem !important;\n }\n .ps-md-0 {\n padding-left: 0 !important;\n }\n .ps-md-1 {\n padding-left: 0.25rem !important;\n }\n .ps-md-2 {\n padding-left: 0.5rem !important;\n }\n .ps-md-3 {\n padding-left: 1rem !important;\n }\n .ps-md-4 {\n padding-left: 1.5rem !important;\n }\n .ps-md-5 {\n padding-left: 3rem !important;\n }\n .gap-md-0 {\n gap: 0 !important;\n }\n .gap-md-1 {\n gap: 0.25rem !important;\n }\n .gap-md-2 {\n gap: 0.5rem !important;\n }\n .gap-md-3 {\n gap: 1rem !important;\n }\n .gap-md-4 {\n gap: 1.5rem !important;\n }\n .gap-md-5 {\n gap: 3rem !important;\n }\n .row-gap-md-0 {\n row-gap: 0 !important;\n }\n .row-gap-md-1 {\n row-gap: 0.25rem !important;\n }\n .row-gap-md-2 {\n row-gap: 0.5rem !important;\n }\n .row-gap-md-3 {\n row-gap: 1rem !important;\n }\n .row-gap-md-4 {\n row-gap: 1.5rem !important;\n }\n .row-gap-md-5 {\n row-gap: 3rem !important;\n }\n .column-gap-md-0 {\n -moz-column-gap: 0 !important;\n column-gap: 0 !important;\n }\n .column-gap-md-1 {\n -moz-column-gap: 0.25rem !important;\n column-gap: 0.25rem !important;\n }\n .column-gap-md-2 {\n -moz-column-gap: 0.5rem !important;\n column-gap: 0.5rem !important;\n }\n .column-gap-md-3 {\n -moz-column-gap: 1rem !important;\n column-gap: 1rem !important;\n }\n .column-gap-md-4 {\n -moz-column-gap: 1.5rem !important;\n column-gap: 1.5rem !important;\n }\n .column-gap-md-5 {\n -moz-column-gap: 3rem !important;\n column-gap: 3rem !important;\n }\n .text-md-start {\n text-align: left !important;\n }\n .text-md-end {\n text-align: right !important;\n }\n .text-md-center {\n text-align: center !important;\n }\n}\n@media (min-width: 992px) {\n .float-lg-start {\n float: left !important;\n }\n .float-lg-end {\n float: right !important;\n }\n .float-lg-none {\n float: none !important;\n }\n .object-fit-lg-contain {\n -o-object-fit: contain !important;\n object-fit: contain !important;\n }\n .object-fit-lg-cover {\n -o-object-fit: cover !important;\n object-fit: cover !important;\n }\n .object-fit-lg-fill {\n -o-object-fit: fill !important;\n object-fit: fill !important;\n }\n .object-fit-lg-scale {\n -o-object-fit: scale-down !important;\n object-fit: scale-down !important;\n }\n .object-fit-lg-none {\n -o-object-fit: none !important;\n object-fit: none !important;\n }\n .d-lg-inline {\n display: inline !important;\n }\n .d-lg-inline-block {\n display: inline-block !important;\n }\n .d-lg-block {\n display: block !important;\n }\n .d-lg-grid {\n display: grid !important;\n }\n .d-lg-inline-grid {\n display: inline-grid !important;\n }\n .d-lg-table {\n display: table !important;\n }\n .d-lg-table-row {\n display: table-row !important;\n }\n .d-lg-table-cell {\n display: table-cell !important;\n }\n .d-lg-flex {\n display: flex !important;\n }\n .d-lg-inline-flex {\n display: inline-flex !important;\n }\n .d-lg-none {\n display: none !important;\n }\n .flex-lg-fill {\n flex: 1 1 auto !important;\n }\n .flex-lg-row {\n flex-direction: row !important;\n }\n .flex-lg-column {\n flex-direction: column !important;\n }\n .flex-lg-row-reverse {\n flex-direction: row-reverse !important;\n }\n .flex-lg-column-reverse {\n flex-direction: column-reverse !important;\n }\n .flex-lg-grow-0 {\n flex-grow: 0 !important;\n }\n .flex-lg-grow-1 {\n flex-grow: 1 !important;\n }\n .flex-lg-shrink-0 {\n flex-shrink: 0 !important;\n }\n .flex-lg-shrink-1 {\n flex-shrink: 1 !important;\n }\n .flex-lg-wrap {\n flex-wrap: wrap !important;\n }\n .flex-lg-nowrap {\n flex-wrap: nowrap !important;\n }\n .flex-lg-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n .justify-content-lg-start {\n justify-content: flex-start !important;\n }\n .justify-content-lg-end {\n justify-content: flex-end !important;\n }\n .justify-content-lg-center {\n justify-content: center !important;\n }\n .justify-content-lg-between {\n justify-content: space-between !important;\n }\n .justify-content-lg-around {\n justify-content: space-around !important;\n }\n .justify-content-lg-evenly {\n justify-content: space-evenly !important;\n }\n .align-items-lg-start {\n align-items: flex-start !important;\n }\n .align-items-lg-end {\n align-items: flex-end !important;\n }\n .align-items-lg-center {\n align-items: center !important;\n }\n .align-items-lg-baseline {\n align-items: baseline !important;\n }\n .align-items-lg-stretch {\n align-items: stretch !important;\n }\n .align-content-lg-start {\n align-content: flex-start !important;\n }\n .align-content-lg-end {\n align-content: flex-end !important;\n }\n .align-content-lg-center {\n align-content: center !important;\n }\n .align-content-lg-between {\n align-content: space-between !important;\n }\n .align-content-lg-around {\n align-content: space-around !important;\n }\n .align-content-lg-stretch {\n align-content: stretch !important;\n }\n .align-self-lg-auto {\n align-self: auto !important;\n }\n .align-self-lg-start {\n align-self: flex-start !important;\n }\n .align-self-lg-end {\n align-self: flex-end !important;\n }\n .align-self-lg-center {\n align-self: center !important;\n }\n .align-self-lg-baseline {\n align-self: baseline !important;\n }\n .align-self-lg-stretch {\n align-self: stretch !important;\n }\n .order-lg-first {\n order: -1 !important;\n }\n .order-lg-0 {\n order: 0 !important;\n }\n .order-lg-1 {\n order: 1 !important;\n }\n .order-lg-2 {\n order: 2 !important;\n }\n .order-lg-3 {\n order: 3 !important;\n }\n .order-lg-4 {\n order: 4 !important;\n }\n .order-lg-5 {\n order: 5 !important;\n }\n .order-lg-last {\n order: 6 !important;\n }\n .m-lg-0 {\n margin: 0 !important;\n }\n .m-lg-1 {\n margin: 0.25rem !important;\n }\n .m-lg-2 {\n margin: 0.5rem !important;\n }\n .m-lg-3 {\n margin: 1rem !important;\n }\n .m-lg-4 {\n margin: 1.5rem !important;\n }\n .m-lg-5 {\n margin: 3rem !important;\n }\n .m-lg-auto {\n margin: auto !important;\n }\n .mx-lg-0 {\n margin-right: 0 !important;\n margin-left: 0 !important;\n }\n .mx-lg-1 {\n margin-right: 0.25rem !important;\n margin-left: 0.25rem !important;\n }\n .mx-lg-2 {\n margin-right: 0.5rem !important;\n margin-left: 0.5rem !important;\n }\n .mx-lg-3 {\n margin-right: 1rem !important;\n margin-left: 1rem !important;\n }\n .mx-lg-4 {\n margin-right: 1.5rem !important;\n margin-left: 1.5rem !important;\n }\n .mx-lg-5 {\n margin-right: 3rem !important;\n margin-left: 3rem !important;\n }\n .mx-lg-auto {\n margin-right: auto !important;\n margin-left: auto !important;\n }\n .my-lg-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n }\n .my-lg-1 {\n margin-top: 0.25rem !important;\n margin-bottom: 0.25rem !important;\n }\n .my-lg-2 {\n margin-top: 0.5rem !important;\n margin-bottom: 0.5rem !important;\n }\n .my-lg-3 {\n margin-top: 1rem !important;\n margin-bottom: 1rem !important;\n }\n .my-lg-4 {\n margin-top: 1.5rem !important;\n margin-bottom: 1.5rem !important;\n }\n .my-lg-5 {\n margin-top: 3rem !important;\n margin-bottom: 3rem !important;\n }\n .my-lg-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n }\n .mt-lg-0 {\n margin-top: 0 !important;\n }\n .mt-lg-1 {\n margin-top: 0.25rem !important;\n }\n .mt-lg-2 {\n margin-top: 0.5rem !important;\n }\n .mt-lg-3 {\n margin-top: 1rem !important;\n }\n .mt-lg-4 {\n margin-top: 1.5rem !important;\n }\n .mt-lg-5 {\n margin-top: 3rem !important;\n }\n .mt-lg-auto {\n margin-top: auto !important;\n }\n .me-lg-0 {\n margin-right: 0 !important;\n }\n .me-lg-1 {\n margin-right: 0.25rem !important;\n }\n .me-lg-2 {\n margin-right: 0.5rem !important;\n }\n .me-lg-3 {\n margin-right: 1rem !important;\n }\n .me-lg-4 {\n margin-right: 1.5rem !important;\n }\n .me-lg-5 {\n margin-right: 3rem !important;\n }\n .me-lg-auto {\n margin-right: auto !important;\n }\n .mb-lg-0 {\n margin-bottom: 0 !important;\n }\n .mb-lg-1 {\n margin-bottom: 0.25rem !important;\n }\n .mb-lg-2 {\n margin-bottom: 0.5rem !important;\n }\n .mb-lg-3 {\n margin-bottom: 1rem !important;\n }\n .mb-lg-4 {\n margin-bottom: 1.5rem !important;\n }\n .mb-lg-5 {\n margin-bottom: 3rem !important;\n }\n .mb-lg-auto {\n margin-bottom: auto !important;\n }\n .ms-lg-0 {\n margin-left: 0 !important;\n }\n .ms-lg-1 {\n margin-left: 0.25rem !important;\n }\n .ms-lg-2 {\n margin-left: 0.5rem !important;\n }\n .ms-lg-3 {\n margin-left: 1rem !important;\n }\n .ms-lg-4 {\n margin-left: 1.5rem !important;\n }\n .ms-lg-5 {\n margin-left: 3rem !important;\n }\n .ms-lg-auto {\n margin-left: auto !important;\n }\n .p-lg-0 {\n padding: 0 !important;\n }\n .p-lg-1 {\n padding: 0.25rem !important;\n }\n .p-lg-2 {\n padding: 0.5rem !important;\n }\n .p-lg-3 {\n padding: 1rem !important;\n }\n .p-lg-4 {\n padding: 1.5rem !important;\n }\n .p-lg-5 {\n padding: 3rem !important;\n }\n .px-lg-0 {\n padding-right: 0 !important;\n padding-left: 0 !important;\n }\n .px-lg-1 {\n padding-right: 0.25rem !important;\n padding-left: 0.25rem !important;\n }\n .px-lg-2 {\n padding-right: 0.5rem !important;\n padding-left: 0.5rem !important;\n }\n .px-lg-3 {\n padding-right: 1rem !important;\n padding-left: 1rem !important;\n }\n .px-lg-4 {\n padding-right: 1.5rem !important;\n padding-left: 1.5rem !important;\n }\n .px-lg-5 {\n padding-right: 3rem !important;\n padding-left: 3rem !important;\n }\n .py-lg-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n }\n .py-lg-1 {\n padding-top: 0.25rem !important;\n padding-bottom: 0.25rem !important;\n }\n .py-lg-2 {\n padding-top: 0.5rem !important;\n padding-bottom: 0.5rem !important;\n }\n .py-lg-3 {\n padding-top: 1rem !important;\n padding-bottom: 1rem !important;\n }\n .py-lg-4 {\n padding-top: 1.5rem !important;\n padding-bottom: 1.5rem !important;\n }\n .py-lg-5 {\n padding-top: 3rem !important;\n padding-bottom: 3rem !important;\n }\n .pt-lg-0 {\n padding-top: 0 !important;\n }\n .pt-lg-1 {\n padding-top: 0.25rem !important;\n }\n .pt-lg-2 {\n padding-top: 0.5rem !important;\n }\n .pt-lg-3 {\n padding-top: 1rem !important;\n }\n .pt-lg-4 {\n padding-top: 1.5rem !important;\n }\n .pt-lg-5 {\n padding-top: 3rem !important;\n }\n .pe-lg-0 {\n padding-right: 0 !important;\n }\n .pe-lg-1 {\n padding-right: 0.25rem !important;\n }\n .pe-lg-2 {\n padding-right: 0.5rem !important;\n }\n .pe-lg-3 {\n padding-right: 1rem !important;\n }\n .pe-lg-4 {\n padding-right: 1.5rem !important;\n }\n .pe-lg-5 {\n padding-right: 3rem !important;\n }\n .pb-lg-0 {\n padding-bottom: 0 !important;\n }\n .pb-lg-1 {\n padding-bottom: 0.25rem !important;\n }\n .pb-lg-2 {\n padding-bottom: 0.5rem !important;\n }\n .pb-lg-3 {\n padding-bottom: 1rem !important;\n }\n .pb-lg-4 {\n padding-bottom: 1.5rem !important;\n }\n .pb-lg-5 {\n padding-bottom: 3rem !important;\n }\n .ps-lg-0 {\n padding-left: 0 !important;\n }\n .ps-lg-1 {\n padding-left: 0.25rem !important;\n }\n .ps-lg-2 {\n padding-left: 0.5rem !important;\n }\n .ps-lg-3 {\n padding-left: 1rem !important;\n }\n .ps-lg-4 {\n padding-left: 1.5rem !important;\n }\n .ps-lg-5 {\n padding-left: 3rem !important;\n }\n .gap-lg-0 {\n gap: 0 !important;\n }\n .gap-lg-1 {\n gap: 0.25rem !important;\n }\n .gap-lg-2 {\n gap: 0.5rem !important;\n }\n .gap-lg-3 {\n gap: 1rem !important;\n }\n .gap-lg-4 {\n gap: 1.5rem !important;\n }\n .gap-lg-5 {\n gap: 3rem !important;\n }\n .row-gap-lg-0 {\n row-gap: 0 !important;\n }\n .row-gap-lg-1 {\n row-gap: 0.25rem !important;\n }\n .row-gap-lg-2 {\n row-gap: 0.5rem !important;\n }\n .row-gap-lg-3 {\n row-gap: 1rem !important;\n }\n .row-gap-lg-4 {\n row-gap: 1.5rem !important;\n }\n .row-gap-lg-5 {\n row-gap: 3rem !important;\n }\n .column-gap-lg-0 {\n -moz-column-gap: 0 !important;\n column-gap: 0 !important;\n }\n .column-gap-lg-1 {\n -moz-column-gap: 0.25rem !important;\n column-gap: 0.25rem !important;\n }\n .column-gap-lg-2 {\n -moz-column-gap: 0.5rem !important;\n column-gap: 0.5rem !important;\n }\n .column-gap-lg-3 {\n -moz-column-gap: 1rem !important;\n column-gap: 1rem !important;\n }\n .column-gap-lg-4 {\n -moz-column-gap: 1.5rem !important;\n column-gap: 1.5rem !important;\n }\n .column-gap-lg-5 {\n -moz-column-gap: 3rem !important;\n column-gap: 3rem !important;\n }\n .text-lg-start {\n text-align: left !important;\n }\n .text-lg-end {\n text-align: right !important;\n }\n .text-lg-center {\n text-align: center !important;\n }\n}\n@media (min-width: 1200px) {\n .float-xl-start {\n float: left !important;\n }\n .float-xl-end {\n float: right !important;\n }\n .float-xl-none {\n float: none !important;\n }\n .object-fit-xl-contain {\n -o-object-fit: contain !important;\n object-fit: contain !important;\n }\n .object-fit-xl-cover {\n -o-object-fit: cover !important;\n object-fit: cover !important;\n }\n .object-fit-xl-fill {\n -o-object-fit: fill !important;\n object-fit: fill !important;\n }\n .object-fit-xl-scale {\n -o-object-fit: scale-down !important;\n object-fit: scale-down !important;\n }\n .object-fit-xl-none {\n -o-object-fit: none !important;\n object-fit: none !important;\n }\n .d-xl-inline {\n display: inline !important;\n }\n .d-xl-inline-block {\n display: inline-block !important;\n }\n .d-xl-block {\n display: block !important;\n }\n .d-xl-grid {\n display: grid !important;\n }\n .d-xl-inline-grid {\n display: inline-grid !important;\n }\n .d-xl-table {\n display: table !important;\n }\n .d-xl-table-row {\n display: table-row !important;\n }\n .d-xl-table-cell {\n display: table-cell !important;\n }\n .d-xl-flex {\n display: flex !important;\n }\n .d-xl-inline-flex {\n display: inline-flex !important;\n }\n .d-xl-none {\n display: none !important;\n }\n .flex-xl-fill {\n flex: 1 1 auto !important;\n }\n .flex-xl-row {\n flex-direction: row !important;\n }\n .flex-xl-column {\n flex-direction: column !important;\n }\n .flex-xl-row-reverse {\n flex-direction: row-reverse !important;\n }\n .flex-xl-column-reverse {\n flex-direction: column-reverse !important;\n }\n .flex-xl-grow-0 {\n flex-grow: 0 !important;\n }\n .flex-xl-grow-1 {\n flex-grow: 1 !important;\n }\n .flex-xl-shrink-0 {\n flex-shrink: 0 !important;\n }\n .flex-xl-shrink-1 {\n flex-shrink: 1 !important;\n }\n .flex-xl-wrap {\n flex-wrap: wrap !important;\n }\n .flex-xl-nowrap {\n flex-wrap: nowrap !important;\n }\n .flex-xl-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n .justify-content-xl-start {\n justify-content: flex-start !important;\n }\n .justify-content-xl-end {\n justify-content: flex-end !important;\n }\n .justify-content-xl-center {\n justify-content: center !important;\n }\n .justify-content-xl-between {\n justify-content: space-between !important;\n }\n .justify-content-xl-around {\n justify-content: space-around !important;\n }\n .justify-content-xl-evenly {\n justify-content: space-evenly !important;\n }\n .align-items-xl-start {\n align-items: flex-start !important;\n }\n .align-items-xl-end {\n align-items: flex-end !important;\n }\n .align-items-xl-center {\n align-items: center !important;\n }\n .align-items-xl-baseline {\n align-items: baseline !important;\n }\n .align-items-xl-stretch {\n align-items: stretch !important;\n }\n .align-content-xl-start {\n align-content: flex-start !important;\n }\n .align-content-xl-end {\n align-content: flex-end !important;\n }\n .align-content-xl-center {\n align-content: center !important;\n }\n .align-content-xl-between {\n align-content: space-between !important;\n }\n .align-content-xl-around {\n align-content: space-around !important;\n }\n .align-content-xl-stretch {\n align-content: stretch !important;\n }\n .align-self-xl-auto {\n align-self: auto !important;\n }\n .align-self-xl-start {\n align-self: flex-start !important;\n }\n .align-self-xl-end {\n align-self: flex-end !important;\n }\n .align-self-xl-center {\n align-self: center !important;\n }\n .align-self-xl-baseline {\n align-self: baseline !important;\n }\n .align-self-xl-stretch {\n align-self: stretch !important;\n }\n .order-xl-first {\n order: -1 !important;\n }\n .order-xl-0 {\n order: 0 !important;\n }\n .order-xl-1 {\n order: 1 !important;\n }\n .order-xl-2 {\n order: 2 !important;\n }\n .order-xl-3 {\n order: 3 !important;\n }\n .order-xl-4 {\n order: 4 !important;\n }\n .order-xl-5 {\n order: 5 !important;\n }\n .order-xl-last {\n order: 6 !important;\n }\n .m-xl-0 {\n margin: 0 !important;\n }\n .m-xl-1 {\n margin: 0.25rem !important;\n }\n .m-xl-2 {\n margin: 0.5rem !important;\n }\n .m-xl-3 {\n margin: 1rem !important;\n }\n .m-xl-4 {\n margin: 1.5rem !important;\n }\n .m-xl-5 {\n margin: 3rem !important;\n }\n .m-xl-auto {\n margin: auto !important;\n }\n .mx-xl-0 {\n margin-right: 0 !important;\n margin-left: 0 !important;\n }\n .mx-xl-1 {\n margin-right: 0.25rem !important;\n margin-left: 0.25rem !important;\n }\n .mx-xl-2 {\n margin-right: 0.5rem !important;\n margin-left: 0.5rem !important;\n }\n .mx-xl-3 {\n margin-right: 1rem !important;\n margin-left: 1rem !important;\n }\n .mx-xl-4 {\n margin-right: 1.5rem !important;\n margin-left: 1.5rem !important;\n }\n .mx-xl-5 {\n margin-right: 3rem !important;\n margin-left: 3rem !important;\n }\n .mx-xl-auto {\n margin-right: auto !important;\n margin-left: auto !important;\n }\n .my-xl-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n }\n .my-xl-1 {\n margin-top: 0.25rem !important;\n margin-bottom: 0.25rem !important;\n }\n .my-xl-2 {\n margin-top: 0.5rem !important;\n margin-bottom: 0.5rem !important;\n }\n .my-xl-3 {\n margin-top: 1rem !important;\n margin-bottom: 1rem !important;\n }\n .my-xl-4 {\n margin-top: 1.5rem !important;\n margin-bottom: 1.5rem !important;\n }\n .my-xl-5 {\n margin-top: 3rem !important;\n margin-bottom: 3rem !important;\n }\n .my-xl-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n }\n .mt-xl-0 {\n margin-top: 0 !important;\n }\n .mt-xl-1 {\n margin-top: 0.25rem !important;\n }\n .mt-xl-2 {\n margin-top: 0.5rem !important;\n }\n .mt-xl-3 {\n margin-top: 1rem !important;\n }\n .mt-xl-4 {\n margin-top: 1.5rem !important;\n }\n .mt-xl-5 {\n margin-top: 3rem !important;\n }\n .mt-xl-auto {\n margin-top: auto !important;\n }\n .me-xl-0 {\n margin-right: 0 !important;\n }\n .me-xl-1 {\n margin-right: 0.25rem !important;\n }\n .me-xl-2 {\n margin-right: 0.5rem !important;\n }\n .me-xl-3 {\n margin-right: 1rem !important;\n }\n .me-xl-4 {\n margin-right: 1.5rem !important;\n }\n .me-xl-5 {\n margin-right: 3rem !important;\n }\n .me-xl-auto {\n margin-right: auto !important;\n }\n .mb-xl-0 {\n margin-bottom: 0 !important;\n }\n .mb-xl-1 {\n margin-bottom: 0.25rem !important;\n }\n .mb-xl-2 {\n margin-bottom: 0.5rem !important;\n }\n .mb-xl-3 {\n margin-bottom: 1rem !important;\n }\n .mb-xl-4 {\n margin-bottom: 1.5rem !important;\n }\n .mb-xl-5 {\n margin-bottom: 3rem !important;\n }\n .mb-xl-auto {\n margin-bottom: auto !important;\n }\n .ms-xl-0 {\n margin-left: 0 !important;\n }\n .ms-xl-1 {\n margin-left: 0.25rem !important;\n }\n .ms-xl-2 {\n margin-left: 0.5rem !important;\n }\n .ms-xl-3 {\n margin-left: 1rem !important;\n }\n .ms-xl-4 {\n margin-left: 1.5rem !important;\n }\n .ms-xl-5 {\n margin-left: 3rem !important;\n }\n .ms-xl-auto {\n margin-left: auto !important;\n }\n .p-xl-0 {\n padding: 0 !important;\n }\n .p-xl-1 {\n padding: 0.25rem !important;\n }\n .p-xl-2 {\n padding: 0.5rem !important;\n }\n .p-xl-3 {\n padding: 1rem !important;\n }\n .p-xl-4 {\n padding: 1.5rem !important;\n }\n .p-xl-5 {\n padding: 3rem !important;\n }\n .px-xl-0 {\n padding-right: 0 !important;\n padding-left: 0 !important;\n }\n .px-xl-1 {\n padding-right: 0.25rem !important;\n padding-left: 0.25rem !important;\n }\n .px-xl-2 {\n padding-right: 0.5rem !important;\n padding-left: 0.5rem !important;\n }\n .px-xl-3 {\n padding-right: 1rem !important;\n padding-left: 1rem !important;\n }\n .px-xl-4 {\n padding-right: 1.5rem !important;\n padding-left: 1.5rem !important;\n }\n .px-xl-5 {\n padding-right: 3rem !important;\n padding-left: 3rem !important;\n }\n .py-xl-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n }\n .py-xl-1 {\n padding-top: 0.25rem !important;\n padding-bottom: 0.25rem !important;\n }\n .py-xl-2 {\n padding-top: 0.5rem !important;\n padding-bottom: 0.5rem !important;\n }\n .py-xl-3 {\n padding-top: 1rem !important;\n padding-bottom: 1rem !important;\n }\n .py-xl-4 {\n padding-top: 1.5rem !important;\n padding-bottom: 1.5rem !important;\n }\n .py-xl-5 {\n padding-top: 3rem !important;\n padding-bottom: 3rem !important;\n }\n .pt-xl-0 {\n padding-top: 0 !important;\n }\n .pt-xl-1 {\n padding-top: 0.25rem !important;\n }\n .pt-xl-2 {\n padding-top: 0.5rem !important;\n }\n .pt-xl-3 {\n padding-top: 1rem !important;\n }\n .pt-xl-4 {\n padding-top: 1.5rem !important;\n }\n .pt-xl-5 {\n padding-top: 3rem !important;\n }\n .pe-xl-0 {\n padding-right: 0 !important;\n }\n .pe-xl-1 {\n padding-right: 0.25rem !important;\n }\n .pe-xl-2 {\n padding-right: 0.5rem !important;\n }\n .pe-xl-3 {\n padding-right: 1rem !important;\n }\n .pe-xl-4 {\n padding-right: 1.5rem !important;\n }\n .pe-xl-5 {\n padding-right: 3rem !important;\n }\n .pb-xl-0 {\n padding-bottom: 0 !important;\n }\n .pb-xl-1 {\n padding-bottom: 0.25rem !important;\n }\n .pb-xl-2 {\n padding-bottom: 0.5rem !important;\n }\n .pb-xl-3 {\n padding-bottom: 1rem !important;\n }\n .pb-xl-4 {\n padding-bottom: 1.5rem !important;\n }\n .pb-xl-5 {\n padding-bottom: 3rem !important;\n }\n .ps-xl-0 {\n padding-left: 0 !important;\n }\n .ps-xl-1 {\n padding-left: 0.25rem !important;\n }\n .ps-xl-2 {\n padding-left: 0.5rem !important;\n }\n .ps-xl-3 {\n padding-left: 1rem !important;\n }\n .ps-xl-4 {\n padding-left: 1.5rem !important;\n }\n .ps-xl-5 {\n padding-left: 3rem !important;\n }\n .gap-xl-0 {\n gap: 0 !important;\n }\n .gap-xl-1 {\n gap: 0.25rem !important;\n }\n .gap-xl-2 {\n gap: 0.5rem !important;\n }\n .gap-xl-3 {\n gap: 1rem !important;\n }\n .gap-xl-4 {\n gap: 1.5rem !important;\n }\n .gap-xl-5 {\n gap: 3rem !important;\n }\n .row-gap-xl-0 {\n row-gap: 0 !important;\n }\n .row-gap-xl-1 {\n row-gap: 0.25rem !important;\n }\n .row-gap-xl-2 {\n row-gap: 0.5rem !important;\n }\n .row-gap-xl-3 {\n row-gap: 1rem !important;\n }\n .row-gap-xl-4 {\n row-gap: 1.5rem !important;\n }\n .row-gap-xl-5 {\n row-gap: 3rem !important;\n }\n .column-gap-xl-0 {\n -moz-column-gap: 0 !important;\n column-gap: 0 !important;\n }\n .column-gap-xl-1 {\n -moz-column-gap: 0.25rem !important;\n column-gap: 0.25rem !important;\n }\n .column-gap-xl-2 {\n -moz-column-gap: 0.5rem !important;\n column-gap: 0.5rem !important;\n }\n .column-gap-xl-3 {\n -moz-column-gap: 1rem !important;\n column-gap: 1rem !important;\n }\n .column-gap-xl-4 {\n -moz-column-gap: 1.5rem !important;\n column-gap: 1.5rem !important;\n }\n .column-gap-xl-5 {\n -moz-column-gap: 3rem !important;\n column-gap: 3rem !important;\n }\n .text-xl-start {\n text-align: left !important;\n }\n .text-xl-end {\n text-align: right !important;\n }\n .text-xl-center {\n text-align: center !important;\n }\n}\n@media (min-width: 1400px) {\n .float-xxl-start {\n float: left !important;\n }\n .float-xxl-end {\n float: right !important;\n }\n .float-xxl-none {\n float: none !important;\n }\n .object-fit-xxl-contain {\n -o-object-fit: contain !important;\n object-fit: contain !important;\n }\n .object-fit-xxl-cover {\n -o-object-fit: cover !important;\n object-fit: cover !important;\n }\n .object-fit-xxl-fill {\n -o-object-fit: fill !important;\n object-fit: fill !important;\n }\n .object-fit-xxl-scale {\n -o-object-fit: scale-down !important;\n object-fit: scale-down !important;\n }\n .object-fit-xxl-none {\n -o-object-fit: none !important;\n object-fit: none !important;\n }\n .d-xxl-inline {\n display: inline !important;\n }\n .d-xxl-inline-block {\n display: inline-block !important;\n }\n .d-xxl-block {\n display: block !important;\n }\n .d-xxl-grid {\n display: grid !important;\n }\n .d-xxl-inline-grid {\n display: inline-grid !important;\n }\n .d-xxl-table {\n display: table !important;\n }\n .d-xxl-table-row {\n display: table-row !important;\n }\n .d-xxl-table-cell {\n display: table-cell !important;\n }\n .d-xxl-flex {\n display: flex !important;\n }\n .d-xxl-inline-flex {\n display: inline-flex !important;\n }\n .d-xxl-none {\n display: none !important;\n }\n .flex-xxl-fill {\n flex: 1 1 auto !important;\n }\n .flex-xxl-row {\n flex-direction: row !important;\n }\n .flex-xxl-column {\n flex-direction: column !important;\n }\n .flex-xxl-row-reverse {\n flex-direction: row-reverse !important;\n }\n .flex-xxl-column-reverse {\n flex-direction: column-reverse !important;\n }\n .flex-xxl-grow-0 {\n flex-grow: 0 !important;\n }\n .flex-xxl-grow-1 {\n flex-grow: 1 !important;\n }\n .flex-xxl-shrink-0 {\n flex-shrink: 0 !important;\n }\n .flex-xxl-shrink-1 {\n flex-shrink: 1 !important;\n }\n .flex-xxl-wrap {\n flex-wrap: wrap !important;\n }\n .flex-xxl-nowrap {\n flex-wrap: nowrap !important;\n }\n .flex-xxl-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n .justify-content-xxl-start {\n justify-content: flex-start !important;\n }\n .justify-content-xxl-end {\n justify-content: flex-end !important;\n }\n .justify-content-xxl-center {\n justify-content: center !important;\n }\n .justify-content-xxl-between {\n justify-content: space-between !important;\n }\n .justify-content-xxl-around {\n justify-content: space-around !important;\n }\n .justify-content-xxl-evenly {\n justify-content: space-evenly !important;\n }\n .align-items-xxl-start {\n align-items: flex-start !important;\n }\n .align-items-xxl-end {\n align-items: flex-end !important;\n }\n .align-items-xxl-center {\n align-items: center !important;\n }\n .align-items-xxl-baseline {\n align-items: baseline !important;\n }\n .align-items-xxl-stretch {\n align-items: stretch !important;\n }\n .align-content-xxl-start {\n align-content: flex-start !important;\n }\n .align-content-xxl-end {\n align-content: flex-end !important;\n }\n .align-content-xxl-center {\n align-content: center !important;\n }\n .align-content-xxl-between {\n align-content: space-between !important;\n }\n .align-content-xxl-around {\n align-content: space-around !important;\n }\n .align-content-xxl-stretch {\n align-content: stretch !important;\n }\n .align-self-xxl-auto {\n align-self: auto !important;\n }\n .align-self-xxl-start {\n align-self: flex-start !important;\n }\n .align-self-xxl-end {\n align-self: flex-end !important;\n }\n .align-self-xxl-center {\n align-self: center !important;\n }\n .align-self-xxl-baseline {\n align-self: baseline !important;\n }\n .align-self-xxl-stretch {\n align-self: stretch !important;\n }\n .order-xxl-first {\n order: -1 !important;\n }\n .order-xxl-0 {\n order: 0 !important;\n }\n .order-xxl-1 {\n order: 1 !important;\n }\n .order-xxl-2 {\n order: 2 !important;\n }\n .order-xxl-3 {\n order: 3 !important;\n }\n .order-xxl-4 {\n order: 4 !important;\n }\n .order-xxl-5 {\n order: 5 !important;\n }\n .order-xxl-last {\n order: 6 !important;\n }\n .m-xxl-0 {\n margin: 0 !important;\n }\n .m-xxl-1 {\n margin: 0.25rem !important;\n }\n .m-xxl-2 {\n margin: 0.5rem !important;\n }\n .m-xxl-3 {\n margin: 1rem !important;\n }\n .m-xxl-4 {\n margin: 1.5rem !important;\n }\n .m-xxl-5 {\n margin: 3rem !important;\n }\n .m-xxl-auto {\n margin: auto !important;\n }\n .mx-xxl-0 {\n margin-right: 0 !important;\n margin-left: 0 !important;\n }\n .mx-xxl-1 {\n margin-right: 0.25rem !important;\n margin-left: 0.25rem !important;\n }\n .mx-xxl-2 {\n margin-right: 0.5rem !important;\n margin-left: 0.5rem !important;\n }\n .mx-xxl-3 {\n margin-right: 1rem !important;\n margin-left: 1rem !important;\n }\n .mx-xxl-4 {\n margin-right: 1.5rem !important;\n margin-left: 1.5rem !important;\n }\n .mx-xxl-5 {\n margin-right: 3rem !important;\n margin-left: 3rem !important;\n }\n .mx-xxl-auto {\n margin-right: auto !important;\n margin-left: auto !important;\n }\n .my-xxl-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n }\n .my-xxl-1 {\n margin-top: 0.25rem !important;\n margin-bottom: 0.25rem !important;\n }\n .my-xxl-2 {\n margin-top: 0.5rem !important;\n margin-bottom: 0.5rem !important;\n }\n .my-xxl-3 {\n margin-top: 1rem !important;\n margin-bottom: 1rem !important;\n }\n .my-xxl-4 {\n margin-top: 1.5rem !important;\n margin-bottom: 1.5rem !important;\n }\n .my-xxl-5 {\n margin-top: 3rem !important;\n margin-bottom: 3rem !important;\n }\n .my-xxl-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n }\n .mt-xxl-0 {\n margin-top: 0 !important;\n }\n .mt-xxl-1 {\n margin-top: 0.25rem !important;\n }\n .mt-xxl-2 {\n margin-top: 0.5rem !important;\n }\n .mt-xxl-3 {\n margin-top: 1rem !important;\n }\n .mt-xxl-4 {\n margin-top: 1.5rem !important;\n }\n .mt-xxl-5 {\n margin-top: 3rem !important;\n }\n .mt-xxl-auto {\n margin-top: auto !important;\n }\n .me-xxl-0 {\n margin-right: 0 !important;\n }\n .me-xxl-1 {\n margin-right: 0.25rem !important;\n }\n .me-xxl-2 {\n margin-right: 0.5rem !important;\n }\n .me-xxl-3 {\n margin-right: 1rem !important;\n }\n .me-xxl-4 {\n margin-right: 1.5rem !important;\n }\n .me-xxl-5 {\n margin-right: 3rem !important;\n }\n .me-xxl-auto {\n margin-right: auto !important;\n }\n .mb-xxl-0 {\n margin-bottom: 0 !important;\n }\n .mb-xxl-1 {\n margin-bottom: 0.25rem !important;\n }\n .mb-xxl-2 {\n margin-bottom: 0.5rem !important;\n }\n .mb-xxl-3 {\n margin-bottom: 1rem !important;\n }\n .mb-xxl-4 {\n margin-bottom: 1.5rem !important;\n }\n .mb-xxl-5 {\n margin-bottom: 3rem !important;\n }\n .mb-xxl-auto {\n margin-bottom: auto !important;\n }\n .ms-xxl-0 {\n margin-left: 0 !important;\n }\n .ms-xxl-1 {\n margin-left: 0.25rem !important;\n }\n .ms-xxl-2 {\n margin-left: 0.5rem !important;\n }\n .ms-xxl-3 {\n margin-left: 1rem !important;\n }\n .ms-xxl-4 {\n margin-left: 1.5rem !important;\n }\n .ms-xxl-5 {\n margin-left: 3rem !important;\n }\n .ms-xxl-auto {\n margin-left: auto !important;\n }\n .p-xxl-0 {\n padding: 0 !important;\n }\n .p-xxl-1 {\n padding: 0.25rem !important;\n }\n .p-xxl-2 {\n padding: 0.5rem !important;\n }\n .p-xxl-3 {\n padding: 1rem !important;\n }\n .p-xxl-4 {\n padding: 1.5rem !important;\n }\n .p-xxl-5 {\n padding: 3rem !important;\n }\n .px-xxl-0 {\n padding-right: 0 !important;\n padding-left: 0 !important;\n }\n .px-xxl-1 {\n padding-right: 0.25rem !important;\n padding-left: 0.25rem !important;\n }\n .px-xxl-2 {\n padding-right: 0.5rem !important;\n padding-left: 0.5rem !important;\n }\n .px-xxl-3 {\n padding-right: 1rem !important;\n padding-left: 1rem !important;\n }\n .px-xxl-4 {\n padding-right: 1.5rem !important;\n padding-left: 1.5rem !important;\n }\n .px-xxl-5 {\n padding-right: 3rem !important;\n padding-left: 3rem !important;\n }\n .py-xxl-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n }\n .py-xxl-1 {\n padding-top: 0.25rem !important;\n padding-bottom: 0.25rem !important;\n }\n .py-xxl-2 {\n padding-top: 0.5rem !important;\n padding-bottom: 0.5rem !important;\n }\n .py-xxl-3 {\n padding-top: 1rem !important;\n padding-bottom: 1rem !important;\n }\n .py-xxl-4 {\n padding-top: 1.5rem !important;\n padding-bottom: 1.5rem !important;\n }\n .py-xxl-5 {\n padding-top: 3rem !important;\n padding-bottom: 3rem !important;\n }\n .pt-xxl-0 {\n padding-top: 0 !important;\n }\n .pt-xxl-1 {\n padding-top: 0.25rem !important;\n }\n .pt-xxl-2 {\n padding-top: 0.5rem !important;\n }\n .pt-xxl-3 {\n padding-top: 1rem !important;\n }\n .pt-xxl-4 {\n padding-top: 1.5rem !important;\n }\n .pt-xxl-5 {\n padding-top: 3rem !important;\n }\n .pe-xxl-0 {\n padding-right: 0 !important;\n }\n .pe-xxl-1 {\n padding-right: 0.25rem !important;\n }\n .pe-xxl-2 {\n padding-right: 0.5rem !important;\n }\n .pe-xxl-3 {\n padding-right: 1rem !important;\n }\n .pe-xxl-4 {\n padding-right: 1.5rem !important;\n }\n .pe-xxl-5 {\n padding-right: 3rem !important;\n }\n .pb-xxl-0 {\n padding-bottom: 0 !important;\n }\n .pb-xxl-1 {\n padding-bottom: 0.25rem !important;\n }\n .pb-xxl-2 {\n padding-bottom: 0.5rem !important;\n }\n .pb-xxl-3 {\n padding-bottom: 1rem !important;\n }\n .pb-xxl-4 {\n padding-bottom: 1.5rem !important;\n }\n .pb-xxl-5 {\n padding-bottom: 3rem !important;\n }\n .ps-xxl-0 {\n padding-left: 0 !important;\n }\n .ps-xxl-1 {\n padding-left: 0.25rem !important;\n }\n .ps-xxl-2 {\n padding-left: 0.5rem !important;\n }\n .ps-xxl-3 {\n padding-left: 1rem !important;\n }\n .ps-xxl-4 {\n padding-left: 1.5rem !important;\n }\n .ps-xxl-5 {\n padding-left: 3rem !important;\n }\n .gap-xxl-0 {\n gap: 0 !important;\n }\n .gap-xxl-1 {\n gap: 0.25rem !important;\n }\n .gap-xxl-2 {\n gap: 0.5rem !important;\n }\n .gap-xxl-3 {\n gap: 1rem !important;\n }\n .gap-xxl-4 {\n gap: 1.5rem !important;\n }\n .gap-xxl-5 {\n gap: 3rem !important;\n }\n .row-gap-xxl-0 {\n row-gap: 0 !important;\n }\n .row-gap-xxl-1 {\n row-gap: 0.25rem !important;\n }\n .row-gap-xxl-2 {\n row-gap: 0.5rem !important;\n }\n .row-gap-xxl-3 {\n row-gap: 1rem !important;\n }\n .row-gap-xxl-4 {\n row-gap: 1.5rem !important;\n }\n .row-gap-xxl-5 {\n row-gap: 3rem !important;\n }\n .column-gap-xxl-0 {\n -moz-column-gap: 0 !important;\n column-gap: 0 !important;\n }\n .column-gap-xxl-1 {\n -moz-column-gap: 0.25rem !important;\n column-gap: 0.25rem !important;\n }\n .column-gap-xxl-2 {\n -moz-column-gap: 0.5rem !important;\n column-gap: 0.5rem !important;\n }\n .column-gap-xxl-3 {\n -moz-column-gap: 1rem !important;\n column-gap: 1rem !important;\n }\n .column-gap-xxl-4 {\n -moz-column-gap: 1.5rem !important;\n column-gap: 1.5rem !important;\n }\n .column-gap-xxl-5 {\n -moz-column-gap: 3rem !important;\n column-gap: 3rem !important;\n }\n .text-xxl-start {\n text-align: left !important;\n }\n .text-xxl-end {\n text-align: right !important;\n }\n .text-xxl-center {\n text-align: center !important;\n }\n}\n@media (min-width: 1200px) {\n .fs-1 {\n font-size: 2.5rem !important;\n }\n .fs-2 {\n font-size: 2rem !important;\n }\n .fs-3 {\n font-size: 1.75rem !important;\n }\n .fs-4 {\n font-size: 1.5rem !important;\n }\n}\n@media print {\n .d-print-inline {\n display: inline !important;\n }\n .d-print-inline-block {\n display: inline-block !important;\n }\n .d-print-block {\n display: block !important;\n }\n .d-print-grid {\n display: grid !important;\n }\n .d-print-inline-grid {\n display: inline-grid !important;\n }\n .d-print-table {\n display: table !important;\n }\n .d-print-table-row {\n display: table-row !important;\n }\n .d-print-table-cell {\n display: table-cell !important;\n }\n .d-print-flex {\n display: flex !important;\n }\n .d-print-inline-flex {\n display: inline-flex !important;\n }\n .d-print-none {\n display: none !important;\n }\n}");a(".tabsGutter {\n display: flex;\n flex-direction: row;\n width: 100%;\n height: 40px;\n background-color: #252526;\n}\n\n.tabsContainer {\n display: flex;\n flex-direction: row;\n height: 100%;\n flex-grow: 1;\n overflow-x: auto;\n scrollbar-gutter: stable;\n scrollbar-color: rgba(71, 71, 71, 0.4) #1e1e1e;\n scrollbar-width: thin;\n}\n\n.tabsDropdown {\n float: right;\n display: flex;\n align-items: center;\n color: rgb(138, 138, 138);\n padding: 0 10px;\n cursor: pointer;\n height: 100%;\n}\n\n.chevron {\n color: rgb(177, 177, 177);\n}\n\n.chevron:hover {\n color: rgb(255, 255, 255);\n}\n\n.dropdown-menu {\n border-radius: 0 !important;\n padding: 0 !important;\n}\n\n.dropdown-item {\n font-size: 11px;\n}\n\n.dropdown-header {\n font-size: 12px !important;\n padding-bottom: 5px !important;\n}");var So=e.forwardRef(function(e,t){var r=e.children,o=e.onClick;return n.jsx("a",{ref:t,onClick:function(n){n.preventDefault(),o(n)},children:r})}),Oo=function(t){var r=t.files,o=t.selectFile,a=t.systemTree,i=G(e.useState(null),2),s=i[0],l=i[1],d=G(e.useState([]),2),c=d[0],p=d[1],u=function(n,e){l(e.key),o(e.key)},b=function(n){var e=X(c);e.find(function(e){return e.key===n})?(l(n),o(n)):r.forEach(function(t,r){t.key===n&&(e.push(t),l(t.key),o(t.key),p(e))})},m=function(n,e){n.stopPropagation();var t=c.indexOf(e),r=X(c);if(r.splice(t,1),p(r),0===r.length)o(null),l(null);else{var a=t>=r.length?r.length-1:t;l(r[a].key),o(r[a].key)}};return e.useEffect(function(){if(r&&r.length>0){var n=Math.floor(Math.random()*r.length)+1,e=r.slice(0,n);p(e);var t=Math.floor(Math.random()*e.length);l(e[t].key),o(e[t].key)}},[r]),n.jsxs("div",{className:"tabsGutter",children:[n.jsx("div",{className:"tabsContainer",children:c.map(function(e){return n.jsx(xe,{file:e,activeTab:s,selectTab:u,closeTab:m},e.key)})}),n.jsx("div",{className:"tabsDropdown",children:r&&r.length>0&&n.jsxs(_o,{"data-bs-theme":"dark",children:[n.jsx(_o.Toggle,{as:So,children:n.jsx(Qn,{className:"chevron"})}),n.jsx(_o.Menu,{children:function(){var e=[];if(!a)return e;for(var t in a){e.push(n.jsx(_o.Header,{children:t},"header-".concat(t)));var r=function(){var r=t+"_"+o;e.push(n.jsx(_o.Item,{onClick:function(){return b(r)},children:o},r))};for(var o in a[t])r();e.push(n.jsx(_o.Divider,{},"divider-".concat(t)))}return e.pop(),e}()})]})})]})};Oo.propTypes={files:A.array,selectFile:A.func,systemTree:A.object};var Co=function(t){var r=t.systemTree,o=t.onFileSelect,a=G(e.useState(),2),i=a[0],s=a[1],l=G(e.useState(),2),d=l[0],c=l[1],p=G(e.useState(),2),u=p[0],b=p[1];e.useEffect(function(){var n=[],e={};for(var t in r)for(var o in r[t]){var a=r[t][o],i=t+"_"+o,l={program:t,key:i,fileName:o.split("/").slice(-1)[0],path:o};e[i]=a.source,n.push(l)}0===n.length?(b("Select file using file navigator or drop down on top right."),c({}),s([])):(c(e),s(n))},[r]);return n.jsxs("div",{className:"viewerContainer",children:[n.jsx("div",{className:"tabContainer",children:n.jsx(Oo,{files:i,selectFile:function(n){if(n){if(i&&d){var e=i.find(function(e){return e.key===n});b(d[n]),o&&e&&o(e)}}else b("Select file using drop down on top right.")},systemTree:r})}),n.jsx("div",{className:"monacoContainer",children:n.jsx(Xn,{editorContent:u})})]})};function No(n){if("string"==typeof n||"number"==typeof n)return""+n;let e="";if(Array.isArray(n))for(let t,r=0;r<n.length;r++)""!==(t=No(n[r]))&&(e+=(e&&" ")+t);else for(let t in n)n[t]&&(e+=(e&&" ")+t);return e}Co.propTypes={systemTree:A.object,onFileSelect:A.func};var jo={value:()=>{}};function zo(){for(var n,e=0,t=arguments.length,r={};e<t;++e){if(!(n=arguments[e]+"")||n in r||/[\s.]/.test(n))throw new Error("illegal type: "+n);r[n]=[]}return new Mo(r)}function Mo(n){this._=n}function Po(n,e){for(var t,r=0,o=n.length;r<o;++r)if((t=n[r]).name===e)return t.value}function Ro(n,e,t){for(var r=0,o=n.length;r<o;++r)if(n[r].name===e){n[r]=jo,n=n.slice(0,r).concat(n.slice(r+1));break}return null!=t&&n.push({name:e,value:t}),n}Mo.prototype=zo.prototype={constructor:Mo,on:function(n,e){var t,r,o=this._,a=(r=o,(n+"").trim().split(/^|\s+/).map(function(n){var e="",t=n.indexOf(".");if(t>=0&&(e=n.slice(t+1),n=n.slice(0,t)),n&&!r.hasOwnProperty(n))throw new Error("unknown type: "+n);return{type:n,name:e}})),i=-1,s=a.length;if(!(arguments.length<2)){if(null!=e&&"function"!=typeof e)throw new Error("invalid callback: "+e);for(;++i<s;)if(t=(n=a[i]).type)o[t]=Ro(o[t],n.name,e);else if(null==e)for(t in o)o[t]=Ro(o[t],n.name,null);return this}for(;++i<s;)if((t=(n=a[i]).type)&&(t=Po(o[t],n.name)))return t},copy:function(){var n={},e=this._;for(var t in e)n[t]=e[t].slice();return new Mo(n)},call:function(n,e){if((t=arguments.length-2)>0)for(var t,r,o=new Array(t),a=0;a<t;++a)o[a]=arguments[a+2];if(!this._.hasOwnProperty(n))throw new Error("unknown type: "+n);for(a=0,t=(r=this._[n]).length;a<t;++a)r[a].value.apply(e,o)},apply:function(n,e,t){if(!this._.hasOwnProperty(n))throw new Error("unknown type: "+n);for(var r=this._[n],o=0,a=r.length;o<a;++o)r[o].value.apply(e,t)}};var Io="http://www.w3.org/1999/xhtml",Ao={svg:"http://www.w3.org/2000/svg",xhtml:Io,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function Do(n){var e=n+="",t=e.indexOf(":");return t>=0&&"xmlns"!==(e=n.slice(0,t))&&(n=n.slice(t+1)),Ao.hasOwnProperty(e)?{space:Ao[e],local:n}:n}function To(n){return function(){var e=this.ownerDocument,t=this.namespaceURI;return t===Io&&e.documentElement.namespaceURI===Io?e.createElement(n):e.createElementNS(t,n)}}function Lo(n){return function(){return this.ownerDocument.createElementNS(n.space,n.local)}}function Bo(n){var e=Do(n);return(e.local?Lo:To)(e)}function Vo(){}function $o(n){return null==n?Vo:function(){return this.querySelector(n)}}function Ho(){return[]}function Fo(n){return null==n?Ho:function(){return this.querySelectorAll(n)}}function Yo(n){return function(){return null==(e=n.apply(this,arguments))?[]:Array.isArray(e)?e:Array.from(e);var e}}function Go(n){return function(){return this.matches(n)}}function Xo(n){return function(e){return e.matches(n)}}var qo=Array.prototype.find;function Wo(){return this.firstElementChild}var Zo=Array.prototype.filter;function Ko(){return Array.from(this.children)}function Uo(n){return new Array(n.length)}function Qo(n,e){this.ownerDocument=n.ownerDocument,this.namespaceURI=n.namespaceURI,this._next=null,this._parent=n,this.__data__=e}function Jo(n,e,t,r,o,a){for(var i,s=0,l=e.length,d=a.length;s<d;++s)(i=e[s])?(i.__data__=a[s],r[s]=i):t[s]=new Qo(n,a[s]);for(;s<l;++s)(i=e[s])&&(o[s]=i)}function na(n,e,t,r,o,a,i){var s,l,d,c=new Map,p=e.length,u=a.length,b=new Array(p);for(s=0;s<p;++s)(l=e[s])&&(b[s]=d=i.call(l,l.__data__,s,e)+"",c.has(d)?o[s]=l:c.set(d,l));for(s=0;s<u;++s)d=i.call(n,a[s],s,a)+"",(l=c.get(d))?(r[s]=l,l.__data__=a[s],c.delete(d)):t[s]=new Qo(n,a[s]);for(s=0;s<p;++s)(l=e[s])&&c.get(b[s])===l&&(o[s]=l)}function ea(n){return n.__data__}function ta(n){return"object"==typeof n&&"length"in n?n:Array.from(n)}function ra(n,e){return n<e?-1:n>e?1:n>=e?0:NaN}function oa(n){return function(){this.removeAttribute(n)}}function aa(n){return function(){this.removeAttributeNS(n.space,n.local)}}function ia(n,e){return function(){this.setAttribute(n,e)}}function sa(n,e){return function(){this.setAttributeNS(n.space,n.local,e)}}function la(n,e){return function(){var t=e.apply(this,arguments);null==t?this.removeAttribute(n):this.setAttribute(n,t)}}function da(n,e){return function(){var t=e.apply(this,arguments);null==t?this.removeAttributeNS(n.space,n.local):this.setAttributeNS(n.space,n.local,t)}}function ca(n){return n.ownerDocument&&n.ownerDocument.defaultView||n.document&&n||n.defaultView}function pa(n){return function(){this.style.removeProperty(n)}}function ua(n,e,t){return function(){this.style.setProperty(n,e,t)}}function ba(n,e,t){return function(){var r=e.apply(this,arguments);null==r?this.style.removeProperty(n):this.style.setProperty(n,r,t)}}function ma(n,e){return n.style.getPropertyValue(e)||ca(n).getComputedStyle(n,null).getPropertyValue(e)}function fa(n){return function(){delete this[n]}}function ga(n,e){return function(){this[n]=e}}function ha(n,e){return function(){var t=e.apply(this,arguments);null==t?delete this[n]:this[n]=t}}function va(n){return n.trim().split(/^|\s+/)}function xa(n){return n.classList||new wa(n)}function wa(n){this._node=n,this._names=va(n.getAttribute("class")||"")}function ya(n,e){for(var t=xa(n),r=-1,o=e.length;++r<o;)t.add(e[r])}function ka(n,e){for(var t=xa(n),r=-1,o=e.length;++r<o;)t.remove(e[r])}function Ea(n){return function(){ya(this,n)}}function _a(n){return function(){ka(this,n)}}function Sa(n,e){return function(){(e.apply(this,arguments)?ya:ka)(this,n)}}function Oa(){this.textContent=""}function Ca(n){return function(){this.textContent=n}}function Na(n){return function(){var e=n.apply(this,arguments);this.textContent=null==e?"":e}}function ja(){this.innerHTML=""}function za(n){return function(){this.innerHTML=n}}function Ma(n){return function(){var e=n.apply(this,arguments);this.innerHTML=null==e?"":e}}function Pa(){this.nextSibling&&this.parentNode.appendChild(this)}function Ra(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function Ia(){return null}function Aa(){var n=this.parentNode;n&&n.removeChild(this)}function Da(){var n=this.cloneNode(!1),e=this.parentNode;return e?e.insertBefore(n,this.nextSibling):n}function Ta(){var n=this.cloneNode(!0),e=this.parentNode;return e?e.insertBefore(n,this.nextSibling):n}function La(n){return function(){var e=this.__on;if(e){for(var t,r=0,o=-1,a=e.length;r<a;++r)t=e[r],n.type&&t.type!==n.type||t.name!==n.name?e[++o]=t:this.removeEventListener(t.type,t.listener,t.options);++o?e.length=o:delete this.__on}}}function Ba(n,e,t){return function(){var r,o=this.__on,a=function(n){return function(e){n.call(this,e,this.__data__)}}(e);if(o)for(var i=0,s=o.length;i<s;++i)if((r=o[i]).type===n.type&&r.name===n.name)return this.removeEventListener(r.type,r.listener,r.options),this.addEventListener(r.type,r.listener=a,r.options=t),void(r.value=e);this.addEventListener(n.type,a,t),r={type:n.type,name:n.name,value:e,listener:a,options:t},o?o.push(r):this.__on=[r]}}function Va(n,e,t){var r=ca(n),o=r.CustomEvent;"function"==typeof o?o=new o(e,t):(o=r.document.createEvent("Event"),t?(o.initEvent(e,t.bubbles,t.cancelable),o.detail=t.detail):o.initEvent(e,!1,!1)),n.dispatchEvent(o)}function $a(n,e){return function(){return Va(this,n,e)}}function Ha(n,e){return function(){return Va(this,n,e.apply(this,arguments))}}Qo.prototype={constructor:Qo,appendChild:function(n){return this._parent.insertBefore(n,this._next)},insertBefore:function(n,e){return this._parent.insertBefore(n,e)},querySelector:function(n){return this._parent.querySelector(n)},querySelectorAll:function(n){return this._parent.querySelectorAll(n)}},wa.prototype={add:function(n){this._names.indexOf(n)<0&&(this._names.push(n),this._node.setAttribute("class",this._names.join(" ")))},remove:function(n){var e=this._names.indexOf(n);e>=0&&(this._names.splice(e,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(n){return this._names.indexOf(n)>=0}};var Fa=[null];function Ya(n,e){this._groups=n,this._parents=e}function Ga(){return new Ya([[document.documentElement]],Fa)}function Xa(n){return"string"==typeof n?new Ya([[document.querySelector(n)]],[document.documentElement]):new Ya([[n]],Fa)}function qa(n,e){if(n=function(n){let e;for(;e=n.sourceEvent;)n=e;return n}(n),void 0===e&&(e=n.currentTarget),e){var t=e.ownerSVGElement||e;if(t.createSVGPoint){var r=t.createSVGPoint();return r.x=n.clientX,r.y=n.clientY,[(r=r.matrixTransform(e.getScreenCTM().inverse())).x,r.y]}if(e.getBoundingClientRect){var o=e.getBoundingClientRect();return[n.clientX-o.left-e.clientLeft,n.clientY-o.top-e.clientTop]}}return[n.pageX,n.pageY]}Ya.prototype=Ga.prototype={constructor:Ya,select:function(n){"function"!=typeof n&&(n=$o(n));for(var e=this._groups,t=e.length,r=new Array(t),o=0;o<t;++o)for(var a,i,s=e[o],l=s.length,d=r[o]=new Array(l),c=0;c<l;++c)(a=s[c])&&(i=n.call(a,a.__data__,c,s))&&("__data__"in a&&(i.__data__=a.__data__),d[c]=i);return new Ya(r,this._parents)},selectAll:function(n){n="function"==typeof n?Yo(n):Fo(n);for(var e=this._groups,t=e.length,r=[],o=[],a=0;a<t;++a)for(var i,s=e[a],l=s.length,d=0;d<l;++d)(i=s[d])&&(r.push(n.call(i,i.__data__,d,s)),o.push(i));return new Ya(r,o)},selectChild:function(n){return this.select(null==n?Wo:function(n){return function(){return qo.call(this.children,n)}}("function"==typeof n?n:Xo(n)))},selectChildren:function(n){return this.selectAll(null==n?Ko:function(n){return function(){return Zo.call(this.children,n)}}("function"==typeof n?n:Xo(n)))},filter:function(n){"function"!=typeof n&&(n=Go(n));for(var e=this._groups,t=e.length,r=new Array(t),o=0;o<t;++o)for(var a,i=e[o],s=i.length,l=r[o]=[],d=0;d<s;++d)(a=i[d])&&n.call(a,a.__data__,d,i)&&l.push(a);return new Ya(r,this._parents)},data:function(n,e){if(!arguments.length)return Array.from(this,ea);var t,r=e?na:Jo,o=this._parents,a=this._groups;"function"!=typeof n&&(t=n,n=function(){return t});for(var i=a.length,s=new Array(i),l=new Array(i),d=new Array(i),c=0;c<i;++c){var p=o[c],u=a[c],b=u.length,m=ta(n.call(p,p&&p.__data__,c,o)),f=m.length,g=l[c]=new Array(f),h=s[c]=new Array(f);r(p,u,g,h,d[c]=new Array(b),m,e);for(var v,x,w=0,y=0;w<f;++w)if(v=g[w]){for(w>=y&&(y=w+1);!(x=h[y])&&++y<f;);v._next=x||null}}return(s=new Ya(s,o))._enter=l,s._exit=d,s},enter:function(){return new Ya(this._enter||this._groups.map(Uo),this._parents)},exit:function(){return new Ya(this._exit||this._groups.map(Uo),this._parents)},join:function(n,e,t){var r=this.enter(),o=this,a=this.exit();return"function"==typeof n?(r=n(r))&&(r=r.selection()):r=r.append(n+""),null!=e&&(o=e(o))&&(o=o.selection()),null==t?a.remove():t(a),r&&o?r.merge(o).order():o},merge:function(n){for(var e=n.selection?n.selection():n,t=this._groups,r=e._groups,o=t.length,a=r.length,i=Math.min(o,a),s=new Array(o),l=0;l<i;++l)for(var d,c=t[l],p=r[l],u=c.length,b=s[l]=new Array(u),m=0;m<u;++m)(d=c[m]||p[m])&&(b[m]=d);for(;l<o;++l)s[l]=t[l];return new Ya(s,this._parents)},selection:function(){return this},order:function(){for(var n=this._groups,e=-1,t=n.length;++e<t;)for(var r,o=n[e],a=o.length-1,i=o[a];--a>=0;)(r=o[a])&&(i&&4^r.compareDocumentPosition(i)&&i.parentNode.insertBefore(r,i),i=r);return this},sort:function(n){function e(e,t){return e&&t?n(e.__data__,t.__data__):!e-!t}n||(n=ra);for(var t=this._groups,r=t.length,o=new Array(r),a=0;a<r;++a){for(var i,s=t[a],l=s.length,d=o[a]=new Array(l),c=0;c<l;++c)(i=s[c])&&(d[c]=i);d.sort(e)}return new Ya(o,this._parents).order()},call:function(){var n=arguments[0];return arguments[0]=this,n.apply(null,arguments),this},nodes:function(){return Array.from(this)},node:function(){for(var n=this._groups,e=0,t=n.length;e<t;++e)for(var r=n[e],o=0,a=r.length;o<a;++o){var i=r[o];if(i)return i}return null},size:function(){let n=0;for(const e of this)++n;return n},empty:function(){return!this.node()},each:function(n){for(var e=this._groups,t=0,r=e.length;t<r;++t)for(var o,a=e[t],i=0,s=a.length;i<s;++i)(o=a[i])&&n.call(o,o.__data__,i,a);return this},attr:function(n,e){var t=Do(n);if(arguments.length<2){var r=this.node();return t.local?r.getAttributeNS(t.space,t.local):r.getAttribute(t)}return this.each((null==e?t.local?aa:oa:"function"==typeof e?t.local?da:la:t.local?sa:ia)(t,e))},style:function(n,e,t){return arguments.length>1?this.each((null==e?pa:"function"==typeof e?ba:ua)(n,e,null==t?"":t)):ma(this.node(),n)},property:function(n,e){return arguments.length>1?this.each((null==e?fa:"function"==typeof e?ha:ga)(n,e)):this.node()[n]},classed:function(n,e){var t=va(n+"");if(arguments.length<2){for(var r=xa(this.node()),o=-1,a=t.length;++o<a;)if(!r.contains(t[o]))return!1;return!0}return this.each(("function"==typeof e?Sa:e?Ea:_a)(t,e))},text:function(n){return arguments.length?this.each(null==n?Oa:("function"==typeof n?Na:Ca)(n)):this.node().textContent},html:function(n){return arguments.length?this.each(null==n?ja:("function"==typeof n?Ma:za)(n)):this.node().innerHTML},raise:function(){return this.each(Pa)},lower:function(){return this.each(Ra)},append:function(n){var e="function"==typeof n?n:Bo(n);return this.select(function(){return this.appendChild(e.apply(this,arguments))})},insert:function(n,e){var t="function"==typeof n?n:Bo(n),r=null==e?Ia:"function"==typeof e?e:$o(e);return this.select(function(){return this.insertBefore(t.apply(this,arguments),r.apply(this,arguments)||null)})},remove:function(){return this.each(Aa)},clone:function(n){return this.select(n?Ta:Da)},datum:function(n){return arguments.length?this.property("__data__",n):this.node().__data__},on:function(n,e,t){var r,o,a=function(n){return n.trim().split(/^|\s+/).map(function(n){var e="",t=n.indexOf(".");return t>=0&&(e=n.slice(t+1),n=n.slice(0,t)),{type:n,name:e}})}(n+""),i=a.length;if(!(arguments.length<2)){for(s=e?Ba:La,r=0;r<i;++r)this.each(s(a[r],e,t));return this}var s=this.node().__on;if(s)for(var l,d=0,c=s.length;d<c;++d)for(r=0,l=s[d];r<i;++r)if((o=a[r]).type===l.type&&o.name===l.name)return l.value},dispatch:function(n,e){return this.each(("function"==typeof e?Ha:$a)(n,e))},[Symbol.iterator]:function*(){for(var n=this._groups,e=0,t=n.length;e<t;++e)for(var r,o=n[e],a=0,i=o.length;a<i;++a)(r=o[a])&&(yield r)}};const Wa={passive:!1},Za={capture:!0,passive:!1};function Ka(n){n.stopImmediatePropagation()}function Ua(n){n.preventDefault(),n.stopImmediatePropagation()}function Qa(n){var e=n.document.documentElement,t=Xa(n).on("dragstart.drag",Ua,Za);"onselectstart"in e?t.on("selectstart.drag",Ua,Za):(e.__noselect=e.style.MozUserSelect,e.style.MozUserSelect="none")}function Ja(n,e){var t=n.document.documentElement,r=Xa(n).on("dragstart.drag",null);e&&(r.on("click.drag",Ua,Za),setTimeout(function(){r.on("click.drag",null)},0)),"onselectstart"in t?r.on("selectstart.drag",null):(t.style.MozUserSelect=t.__noselect,delete t.__noselect)}var ni=n=>()=>n;function ei(n,{sourceEvent:e,subject:t,target:r,identifier:o,active:a,x:i,y:s,dx:l,dy:d,dispatch:c}){Object.defineProperties(this,{type:{value:n,enumerable:!0,configurable:!0},sourceEvent:{value:e,enumerable:!0,configurable:!0},subject:{value:t,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},identifier:{value:o,enumerable:!0,configurable:!0},active:{value:a,enumerable:!0,configurable:!0},x:{value:i,enumerable:!0,configurable:!0},y:{value:s,enumerable:!0,configurable:!0},dx:{value:l,enumerable:!0,configurable:!0},dy:{value:d,enumerable:!0,configurable:!0},_:{value:c}})}function ti(n){return!n.ctrlKey&&!n.button}function ri(){return this.parentNode}function oi(n,e){return null==e?{x:n.x,y:n.y}:e}function ai(){return navigator.maxTouchPoints||"ontouchstart"in this}function ii(){var n,e,t,r,o=ti,a=ri,i=oi,s=ai,l={},d=zo("start","drag","end"),c=0,p=0;function u(n){n.on("mousedown.drag",b).filter(s).on("touchstart.drag",g).on("touchmove.drag",h,Wa).on("touchend.drag touchcancel.drag",v).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function b(i,s){if(!r&&o.call(this,i,s)){var l=x(this,a.call(this,i,s),i,s,"mouse");l&&(Xa(i.view).on("mousemove.drag",m,Za).on("mouseup.drag",f,Za),Qa(i.view),Ka(i),t=!1,n=i.clientX,e=i.clientY,l("start",i))}}function m(r){if(Ua(r),!t){var o=r.clientX-n,a=r.clientY-e;t=o*o+a*a>p}l.mouse("drag",r)}function f(n){Xa(n.view).on("mousemove.drag mouseup.drag",null),Ja(n.view,t),Ua(n),l.mouse("end",n)}function g(n,e){if(o.call(this,n,e)){var t,r,i=n.changedTouches,s=a.call(this,n,e),l=i.length;for(t=0;t<l;++t)(r=x(this,s,n,e,i[t].identifier,i[t]))&&(Ka(n),r("start",n,i[t]))}}function h(n){var e,t,r=n.changedTouches,o=r.length;for(e=0;e<o;++e)(t=l[r[e].identifier])&&(Ua(n),t("drag",n,r[e]))}function v(n){var e,t,o=n.changedTouches,a=o.length;for(r&&clearTimeout(r),r=setTimeout(function(){r=null},500),e=0;e<a;++e)(t=l[o[e].identifier])&&(Ka(n),t("end",n,o[e]))}function x(n,e,t,r,o,a){var s,p,b,m=d.copy(),f=qa(a||t,e);if(null!=(b=i.call(n,new ei("beforestart",{sourceEvent:t,target:u,identifier:o,active:c,x:f[0],y:f[1],dx:0,dy:0,dispatch:m}),r)))return s=b.x-f[0]||0,p=b.y-f[1]||0,function t(a,i,d){var g,h=f;switch(a){case"start":l[o]=t,g=c++;break;case"end":delete l[o],--c;case"drag":f=qa(d||i,e),g=c}m.call(a,n,new ei(a,{sourceEvent:i,subject:b,target:u,identifier:o,active:g,x:f[0]+s,y:f[1]+p,dx:f[0]-h[0],dy:f[1]-h[1],dispatch:m}),r)}}return u.filter=function(n){return arguments.length?(o="function"==typeof n?n:ni(!!n),u):o},u.container=function(n){return arguments.length?(a="function"==typeof n?n:ni(n),u):a},u.subject=function(n){return arguments.length?(i="function"==typeof n?n:ni(n),u):i},u.touchable=function(n){return arguments.length?(s="function"==typeof n?n:ni(!!n),u):s},u.on=function(){var n=d.on.apply(d,arguments);return n===d?u:n},u.clickDistance=function(n){return arguments.length?(p=(n=+n)*n,u):Math.sqrt(p)},u}function si(n,e,t){n.prototype=e.prototype=t,t.constructor=n}function li(n,e){var t=Object.create(n.prototype);for(var r in e)t[r]=e[r];return t}function di(){}ei.prototype.on=function(){var n=this._.on.apply(this._,arguments);return n===this._?this:n};var ci=.7,pi=1/ci,ui="\\s*([+-]?\\d+)\\s*",bi="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",mi="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",fi=/^#([0-9a-f]{3,8})$/,gi=new RegExp(`^rgb\\(${ui},${ui},${ui}\\)$`),hi=new RegExp(`^rgb\\(${mi},${mi},${mi}\\)$`),vi=new RegExp(`^rgba\\(${ui},${ui},${ui},${bi}\\)$`),xi=new RegExp(`^rgba\\(${mi},${mi},${mi},${bi}\\)$`),wi=new RegExp(`^hsl\\(${bi},${mi},${mi}\\)$`),yi=new RegExp(`^hsla\\(${bi},${mi},${mi},${bi}\\)$`),ki={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};function Ei(){return this.rgb().formatHex()}function _i(){return this.rgb().formatRgb()}function Si(n){var e,t;return n=(n+"").trim().toLowerCase(),(e=fi.exec(n))?(t=e[1].length,e=parseInt(e[1],16),6===t?Oi(e):3===t?new ji(e>>8&15|e>>4&240,e>>4&15|240&e,(15&e)<<4|15&e,1):8===t?Ci(e>>24&255,e>>16&255,e>>8&255,(255&e)/255):4===t?Ci(e>>12&15|e>>8&240,e>>8&15|e>>4&240,e>>4&15|240&e,((15&e)<<4|15&e)/255):null):(e=gi.exec(n))?new ji(e[1],e[2],e[3],1):(e=hi.exec(n))?new ji(255*e[1]/100,255*e[2]/100,255*e[3]/100,1):(e=vi.exec(n))?Ci(e[1],e[2],e[3],e[4]):(e=xi.exec(n))?Ci(255*e[1]/100,255*e[2]/100,255*e[3]/100,e[4]):(e=wi.exec(n))?Ai(e[1],e[2]/100,e[3]/100,1):(e=yi.exec(n))?Ai(e[1],e[2]/100,e[3]/100,e[4]):ki.hasOwnProperty(n)?Oi(ki[n]):"transparent"===n?new ji(NaN,NaN,NaN,0):null}function Oi(n){return new ji(n>>16&255,n>>8&255,255&n,1)}function Ci(n,e,t,r){return r<=0&&(n=e=t=NaN),new ji(n,e,t,r)}function Ni(n,e,t,r){return 1===arguments.length?((o=n)instanceof di||(o=Si(o)),o?new ji((o=o.rgb()).r,o.g,o.b,o.opacity):new ji):new ji(n,e,t,null==r?1:r);var o}function ji(n,e,t,r){this.r=+n,this.g=+e,this.b=+t,this.opacity=+r}function zi(){return`#${Ii(this.r)}${Ii(this.g)}${Ii(this.b)}`}function Mi(){const n=Pi(this.opacity);return`${1===n?"rgb(":"rgba("}${Ri(this.r)}, ${Ri(this.g)}, ${Ri(this.b)}${1===n?")":`, ${n})`}`}function Pi(n){return isNaN(n)?1:Math.max(0,Math.min(1,n))}function Ri(n){return Math.max(0,Math.min(255,Math.round(n)||0))}function Ii(n){return((n=Ri(n))<16?"0":"")+n.toString(16)}function Ai(n,e,t,r){return r<=0?n=e=t=NaN:t<=0||t>=1?n=e=NaN:e<=0&&(n=NaN),new Ti(n,e,t,r)}function Di(n){if(n instanceof Ti)return new Ti(n.h,n.s,n.l,n.opacity);if(n instanceof di||(n=Si(n)),!n)return new Ti;if(n instanceof Ti)return n;var e=(n=n.rgb()).r/255,t=n.g/255,r=n.b/255,o=Math.min(e,t,r),a=Math.max(e,t,r),i=NaN,s=a-o,l=(a+o)/2;return s?(i=e===a?(t-r)/s+6*(t<r):t===a?(r-e)/s+2:(e-t)/s+4,s/=l<.5?a+o:2-a-o,i*=60):s=l>0&&l<1?0:i,new Ti(i,s,l,n.opacity)}function Ti(n,e,t,r){this.h=+n,this.s=+e,this.l=+t,this.opacity=+r}function Li(n){return(n=(n||0)%360)<0?n+360:n}function Bi(n){return Math.max(0,Math.min(1,n||0))}function Vi(n,e,t){return 255*(n<60?e+(t-e)*n/60:n<180?t:n<240?e+(t-e)*(240-n)/60:e)}si(di,Si,{copy(n){return Object.assign(new this.constructor,this,n)},displayable(){return this.rgb().displayable()},hex:Ei,formatHex:Ei,formatHex8:function(){return this.rgb().formatHex8()},formatHsl:function(){return Di(this).formatHsl()},formatRgb:_i,toString:_i}),si(ji,Ni,li(di,{brighter(n){return n=null==n?pi:Math.pow(pi,n),new ji(this.r*n,this.g*n,this.b*n,this.opacity)},darker(n){return n=null==n?ci:Math.pow(ci,n),new ji(this.r*n,this.g*n,this.b*n,this.opacity)},rgb(){return this},clamp(){return new ji(Ri(this.r),Ri(this.g),Ri(this.b),Pi(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:zi,formatHex:zi,formatHex8:function(){return`#${Ii(this.r)}${Ii(this.g)}${Ii(this.b)}${Ii(255*(isNaN(this.opacity)?1:this.opacity))}`},formatRgb:Mi,toString:Mi})),si(Ti,function(n,e,t,r){return 1===arguments.length?Di(n):new Ti(n,e,t,null==r?1:r)},li(di,{brighter(n){return n=null==n?pi:Math.pow(pi,n),new Ti(this.h,this.s,this.l*n,this.opacity)},darker(n){return n=null==n?ci:Math.pow(ci,n),new Ti(this.h,this.s,this.l*n,this.opacity)},rgb(){var n=this.h%360+360*(this.h<0),e=isNaN(n)||isNaN(this.s)?0:this.s,t=this.l,r=t+(t<.5?t:1-t)*e,o=2*t-r;return new ji(Vi(n>=240?n-240:n+120,o,r),Vi(n,o,r),Vi(n<120?n+240:n-120,o,r),this.opacity)},clamp(){return new Ti(Li(this.h),Bi(this.s),Bi(this.l),Pi(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const n=Pi(this.opacity);return`${1===n?"hsl(":"hsla("}${Li(this.h)}, ${100*Bi(this.s)}%, ${100*Bi(this.l)}%${1===n?")":`, ${n})`}`}}));var $i=n=>()=>n;function Hi(n){return 1===(n=+n)?Fi:function(e,t){return t-e?function(n,e,t){return n=Math.pow(n,t),e=Math.pow(e,t)-n,t=1/t,function(r){return Math.pow(n+r*e,t)}}(e,t,n):$i(isNaN(e)?t:e)}}function Fi(n,e){var t=e-n;return t?function(n,e){return function(t){return n+t*e}}(n,t):$i(isNaN(n)?e:n)}var Yi=function n(e){var t=Hi(e);function r(n,e){var r=t((n=Ni(n)).r,(e=Ni(e)).r),o=t(n.g,e.g),a=t(n.b,e.b),i=Fi(n.opacity,e.opacity);return function(e){return n.r=r(e),n.g=o(e),n.b=a(e),n.opacity=i(e),n+""}}return r.gamma=n,r}(1);function Gi(n,e){e||(e=[]);var t,r=n?Math.min(e.length,n.length):0,o=e.slice();return function(a){for(t=0;t<r;++t)o[t]=n[t]*(1-a)+e[t]*a;return o}}function Xi(n,e){var t,r=e?e.length:0,o=n?Math.min(r,n.length):0,a=new Array(o),i=new Array(r);for(t=0;t<o;++t)a[t]=Ji(n[t],e[t]);for(;t<r;++t)i[t]=e[t];return function(n){for(t=0;t<o;++t)i[t]=a[t](n);return i}}function qi(n,e){var t=new Date;return n=+n,e=+e,function(r){return t.setTime(n*(1-r)+e*r),t}}function Wi(n,e){return n=+n,e=+e,function(t){return n*(1-t)+e*t}}function Zi(n,e){var t,r={},o={};for(t in null!==n&&"object"==typeof n||(n={}),null!==e&&"object"==typeof e||(e={}),e)t in n?r[t]=Ji(n[t],e[t]):o[t]=e[t];return function(n){for(t in r)o[t]=r[t](n);return o}}var Ki=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,Ui=new RegExp(Ki.source,"g");function Qi(n,e){var t,r,o,a=Ki.lastIndex=Ui.lastIndex=0,i=-1,s=[],l=[];for(n+="",e+="";(t=Ki.exec(n))&&(r=Ui.exec(e));)(o=r.index)>a&&(o=e.slice(a,o),s[i]?s[i]+=o:s[++i]=o),(t=t[0])===(r=r[0])?s[i]?s[i]+=r:s[++i]=r:(s[++i]=null,l.push({i:i,x:Wi(t,r)})),a=Ui.lastIndex;return a<e.length&&(o=e.slice(a),s[i]?s[i]+=o:s[++i]=o),s.length<2?l[0]?function(n){return function(e){return n(e)+""}}(l[0].x):function(n){return function(){return n}}(e):(e=l.length,function(n){for(var t,r=0;r<e;++r)s[(t=l[r]).i]=t.x(n);return s.join("")})}function Ji(n,e){var t,r,o=typeof e;return null==e||"boolean"===o?$i(e):("number"===o?Wi:"string"===o?(t=Si(e))?(e=t,Yi):Qi:e instanceof Si?Yi:e instanceof Date?qi:(r=e,!ArrayBuffer.isView(r)||r instanceof DataView?Array.isArray(e)?Xi:"function"!=typeof e.valueOf&&"function"!=typeof e.toString||isNaN(e)?Zi:Wi:Gi))(n,e)}var ns,es=180/Math.PI,ts={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function rs(n,e,t,r,o,a){var i,s,l;return(i=Math.sqrt(n*n+e*e))&&(n/=i,e/=i),(l=n*t+e*r)&&(t-=n*l,r-=e*l),(s=Math.sqrt(t*t+r*r))&&(t/=s,r/=s,l/=s),n*r<e*t&&(n=-n,e=-e,l=-l,i=-i),{translateX:o,translateY:a,rotate:Math.atan2(e,n)*es,skewX:Math.atan(l)*es,scaleX:i,scaleY:s}}function os(n,e,t,r){function o(n){return n.length?n.pop()+" ":""}return function(a,i){var s=[],l=[];return a=n(a),i=n(i),function(n,r,o,a,i,s){if(n!==o||r!==a){var l=i.push("translate(",null,e,null,t);s.push({i:l-4,x:Wi(n,o)},{i:l-2,x:Wi(r,a)})}else(o||a)&&i.push("translate("+o+e+a+t)}(a.translateX,a.translateY,i.translateX,i.translateY,s,l),function(n,e,t,a){n!==e?(n-e>180?e+=360:e-n>180&&(n+=360),a.push({i:t.push(o(t)+"rotate(",null,r)-2,x:Wi(n,e)})):e&&t.push(o(t)+"rotate("+e+r)}(a.rotate,i.rotate,s,l),function(n,e,t,a){n!==e?a.push({i:t.push(o(t)+"skewX(",null,r)-2,x:Wi(n,e)}):e&&t.push(o(t)+"skewX("+e+r)}(a.skewX,i.skewX,s,l),function(n,e,t,r,a,i){if(n!==t||e!==r){var s=a.push(o(a)+"scale(",null,",",null,")");i.push({i:s-4,x:Wi(n,t)},{i:s-2,x:Wi(e,r)})}else 1===t&&1===r||a.push(o(a)+"scale("+t+","+r+")")}(a.scaleX,a.scaleY,i.scaleX,i.scaleY,s,l),a=i=null,function(n){for(var e,t=-1,r=l.length;++t<r;)s[(e=l[t]).i]=e.x(n);return s.join("")}}}var as=os(function(n){const e=new("function"==typeof DOMMatrix?DOMMatrix:WebKitCSSMatrix)(n+"");return e.isIdentity?ts:rs(e.a,e.b,e.c,e.d,e.e,e.f)},"px, ","px)","deg)"),is=os(function(n){return null==n?ts:(ns||(ns=document.createElementNS("http://www.w3.org/2000/svg","g")),ns.setAttribute("transform",n),(n=ns.transform.baseVal.consolidate())?rs((n=n.matrix).a,n.b,n.c,n.d,n.e,n.f):ts)},", ",")",")");function ss(n){return((n=Math.exp(n))+1/n)/2}var ls,ds,cs=function n(e,t,r){function o(n,o){var a,i,s=n[0],l=n[1],d=n[2],c=o[0],p=o[1],u=o[2],b=c-s,m=p-l,f=b*b+m*m;if(f<1e-12)i=Math.log(u/d)/e,a=function(n){return[s+n*b,l+n*m,d*Math.exp(e*n*i)]};else{var g=Math.sqrt(f),h=(u*u-d*d+r*f)/(2*d*t*g),v=(u*u-d*d-r*f)/(2*u*t*g),x=Math.log(Math.sqrt(h*h+1)-h),w=Math.log(Math.sqrt(v*v+1)-v);i=(w-x)/e,a=function(n){var r,o=n*i,a=ss(x),c=d/(t*g)*(a*(r=e*o+x,((r=Math.exp(2*r))-1)/(r+1))-function(n){return((n=Math.exp(n))-1/n)/2}(x));return[s+c*b,l+c*m,d*a/ss(e*o+x)]}}return a.duration=1e3*i*e/Math.SQRT2,a}return o.rho=function(e){var t=Math.max(.001,+e),r=t*t;return n(t,r,r*r)},o}(Math.SQRT2,2,4),ps=0,us=0,bs=0,ms=0,fs=0,gs=0,hs="object"==typeof performance&&performance.now?performance:Date,vs="object"==typeof window&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(n){setTimeout(n,17)};function xs(){return fs||(vs(ws),fs=hs.now()+gs)}function ws(){fs=0}function ys(){this._call=this._time=this._next=null}function ks(n,e,t){var r=new ys;return r.restart(n,e,t),r}function Es(){fs=(ms=hs.now())+gs,ps=us=0;try{!function(){xs(),++ps;for(var n,e=ls;e;)(n=fs-e._time)>=0&&e._call.call(void 0,n),e=e._next;--ps}()}finally{ps=0,function(){var n,e,t=ls,r=1/0;for(;t;)t._call?(r>t._time&&(r=t._time),n=t,t=t._next):(e=t._next,t._next=null,t=n?n._next=e:ls=e);ds=n,Ss(r)}(),fs=0}}function _s(){var n=hs.now(),e=n-ms;e>1e3&&(gs-=e,ms=n)}function Ss(n){ps||(us&&(us=clearTimeout(us)),n-fs>24?(n<1/0&&(us=setTimeout(Es,n-hs.now()-gs)),bs&&(bs=clearInterval(bs))):(bs||(ms=hs.now(),bs=setInterval(_s,1e3)),ps=1,vs(Es)))}function Os(n,e,t){var r=new ys;return e=null==e?0:+e,r.restart(t=>{r.stop(),n(t+e)},e,t),r}ys.prototype=ks.prototype={constructor:ys,restart:function(n,e,t){if("function"!=typeof n)throw new TypeError("callback is not a function");t=(null==t?xs():+t)+(null==e?0:+e),this._next||ds===this||(ds?ds._next=this:ls=this,ds=this),this._call=n,this._time=t,Ss()},stop:function(){this._call&&(this._call=null,this._time=1/0,Ss())}};var Cs=zo("start","end","cancel","interrupt"),Ns=[];function js(n,e,t,r,o,a){var i=n.__transition;if(i){if(t in i)return}else n.__transition={};!function(n,e,t){var r,o=n.__transition;function a(n){t.state=1,t.timer.restart(i,t.delay,t.time),t.delay<=n&&i(n-t.delay)}function i(a){var d,c,p,u;if(1!==t.state)return l();for(d in o)if((u=o[d]).name===t.name){if(3===u.state)return Os(i);4===u.state?(u.state=6,u.timer.stop(),u.on.call("interrupt",n,n.__data__,u.index,u.group),delete o[d]):+d<e&&(u.state=6,u.timer.stop(),u.on.call("cancel",n,n.__data__,u.index,u.group),delete o[d])}if(Os(function(){3===t.state&&(t.state=4,t.timer.restart(s,t.delay,t.time),s(a))}),t.state=2,t.on.call("start",n,n.__data__,t.index,t.group),2===t.state){for(t.state=3,r=new Array(p=t.tween.length),d=0,c=-1;d<p;++d)(u=t.tween[d].value.call(n,n.__data__,t.index,t.group))&&(r[++c]=u);r.length=c+1}}function s(e){for(var o=e<t.duration?t.ease.call(null,e/t.duration):(t.timer.restart(l),t.state=5,1),a=-1,i=r.length;++a<i;)r[a].call(n,o);5===t.state&&(t.on.call("end",n,n.__data__,t.index,t.group),l())}function l(){for(var r in t.state=6,t.timer.stop(),delete o[e],o)return;delete n.__transition}o[e]=t,t.timer=ks(a,0,t.time)}(n,t,{name:e,index:r,group:o,on:Cs,tween:Ns,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:0})}function zs(n,e){var t=Ps(n,e);if(t.state>0)throw new Error("too late; already scheduled");return t}function Ms(n,e){var t=Ps(n,e);if(t.state>3)throw new Error("too late; already running");return t}function Ps(n,e){var t=n.__transition;if(!t||!(t=t[e]))throw new Error("transition not found");return t}function Rs(n,e){var t,r,o,a=n.__transition,i=!0;if(a){for(o in e=null==e?null:e+"",a)(t=a[o]).name===e?(r=t.state>2&&t.state<5,t.state=6,t.timer.stop(),t.on.call(r?"interrupt":"cancel",n,n.__data__,t.index,t.group),delete a[o]):i=!1;i&&delete n.__transition}}function Is(n,e){var t,r;return function(){var o=Ms(this,n),a=o.tween;if(a!==t)for(var i=0,s=(r=t=a).length;i<s;++i)if(r[i].name===e){(r=r.slice()).splice(i,1);break}o.tween=r}}function As(n,e,t){var r,o;if("function"!=typeof t)throw new Error;return function(){var a=Ms(this,n),i=a.tween;if(i!==r){o=(r=i).slice();for(var s={name:e,value:t},l=0,d=o.length;l<d;++l)if(o[l].name===e){o[l]=s;break}l===d&&o.push(s)}a.tween=o}}function Ds(n,e,t){var r=n._id;return n.each(function(){var n=Ms(this,r);(n.value||(n.value={}))[e]=t.apply(this,arguments)}),function(n){return Ps(n,r).value[e]}}function Ts(n,e){var t;return("number"==typeof e?Wi:e instanceof Si?Yi:(t=Si(e))?(e=t,Yi):Qi)(n,e)}function Ls(n){return function(){this.removeAttribute(n)}}function Bs(n){return function(){this.removeAttributeNS(n.space,n.local)}}function Vs(n,e,t){var r,o,a=t+"";return function(){var i=this.getAttribute(n);return i===a?null:i===r?o:o=e(r=i,t)}}function $s(n,e,t){var r,o,a=t+"";return function(){var i=this.getAttributeNS(n.space,n.local);return i===a?null:i===r?o:o=e(r=i,t)}}function Hs(n,e,t){var r,o,a;return function(){var i,s,l=t(this);if(null!=l)return(i=this.getAttribute(n))===(s=l+"")?null:i===r&&s===o?a:(o=s,a=e(r=i,l));this.removeAttribute(n)}}function Fs(n,e,t){var r,o,a;return function(){var i,s,l=t(this);if(null!=l)return(i=this.getAttributeNS(n.space,n.local))===(s=l+"")?null:i===r&&s===o?a:(o=s,a=e(r=i,l));this.removeAttributeNS(n.space,n.local)}}function Ys(n,e){var t,r;function o(){var o=e.apply(this,arguments);return o!==r&&(t=(r=o)&&function(n,e){return function(t){this.setAttributeNS(n.space,n.local,e.call(this,t))}}(n,o)),t}return o._value=e,o}function Gs(n,e){var t,r;function o(){var o=e.apply(this,arguments);return o!==r&&(t=(r=o)&&function(n,e){return function(t){this.setAttribute(n,e.call(this,t))}}(n,o)),t}return o._value=e,o}function Xs(n,e){return function(){zs(this,n).delay=+e.apply(this,arguments)}}function qs(n,e){return e=+e,function(){zs(this,n).delay=e}}function Ws(n,e){return function(){Ms(this,n).duration=+e.apply(this,arguments)}}function Zs(n,e){return e=+e,function(){Ms(this,n).duration=e}}var Ks=Ga.prototype.constructor;function Us(n){return function(){this.style.removeProperty(n)}}var Qs=0;function Js(n,e,t,r){this._groups=n,this._parents=e,this._name=t,this._id=r}function nl(){return++Qs}var el=Ga.prototype;Js.prototype={constructor:Js,select:function(n){var e=this._name,t=this._id;"function"!=typeof n&&(n=$o(n));for(var r=this._groups,o=r.length,a=new Array(o),i=0;i<o;++i)for(var s,l,d=r[i],c=d.length,p=a[i]=new Array(c),u=0;u<c;++u)(s=d[u])&&(l=n.call(s,s.__data__,u,d))&&("__data__"in s&&(l.__data__=s.__data__),p[u]=l,js(p[u],e,t,u,p,Ps(s,t)));return new Js(a,this._parents,e,t)},selectAll:function(n){var e=this._name,t=this._id;"function"!=typeof n&&(n=Fo(n));for(var r=this._groups,o=r.length,a=[],i=[],s=0;s<o;++s)for(var l,d=r[s],c=d.length,p=0;p<c;++p)if(l=d[p]){for(var u,b=n.call(l,l.__data__,p,d),m=Ps(l,t),f=0,g=b.length;f<g;++f)(u=b[f])&&js(u,e,t,f,b,m);a.push(b),i.push(l)}return new Js(a,i,e,t)},selectChild:el.selectChild,selectChildren:el.selectChildren,filter:function(n){"function"!=typeof n&&(n=Go(n));for(var e=this._groups,t=e.length,r=new Array(t),o=0;o<t;++o)for(var a,i=e[o],s=i.length,l=r[o]=[],d=0;d<s;++d)(a=i[d])&&n.call(a,a.__data__,d,i)&&l.push(a);return new Js(r,this._parents,this._name,this._id)},merge:function(n){if(n._id!==this._id)throw new Error;for(var e=this._groups,t=n._groups,r=e.length,o=t.length,a=Math.min(r,o),i=new Array(r),s=0;s<a;++s)for(var l,d=e[s],c=t[s],p=d.length,u=i[s]=new Array(p),b=0;b<p;++b)(l=d[b]||c[b])&&(u[b]=l);for(;s<r;++s)i[s]=e[s];return new Js(i,this._parents,this._name,this._id)},selection:function(){return new Ks(this._groups,this._parents)},transition:function(){for(var n=this._name,e=this._id,t=nl(),r=this._groups,o=r.length,a=0;a<o;++a)for(var i,s=r[a],l=s.length,d=0;d<l;++d)if(i=s[d]){var c=Ps(i,e);js(i,n,t,d,s,{time:c.time+c.delay+c.duration,delay:0,duration:c.duration,ease:c.ease})}return new Js(r,this._parents,n,t)},call:el.call,nodes:el.nodes,node:el.node,size:el.size,empty:el.empty,each:el.each,on:function(n,e){var t=this._id;return arguments.length<2?Ps(this.node(),t).on.on(n):this.each(function(n,e,t){var r,o,a=function(n){return(n+"").trim().split(/^|\s+/).every(function(n){var e=n.indexOf(".");return e>=0&&(n=n.slice(0,e)),!n||"start"===n})}(e)?zs:Ms;return function(){var i=a(this,n),s=i.on;s!==r&&(o=(r=s).copy()).on(e,t),i.on=o}}(t,n,e))},attr:function(n,e){var t=Do(n),r="transform"===t?is:Ts;return this.attrTween(n,"function"==typeof e?(t.local?Fs:Hs)(t,r,Ds(this,"attr."+n,e)):null==e?(t.local?Bs:Ls)(t):(t.local?$s:Vs)(t,r,e))},attrTween:function(n,e){var t="attr."+n;if(arguments.length<2)return(t=this.tween(t))&&t._value;if(null==e)return this.tween(t,null);if("function"!=typeof e)throw new Error;var r=Do(n);return this.tween(t,(r.local?Ys:Gs)(r,e))},style:function(n,e,t){var r="transform"==(n+="")?as:Ts;return null==e?this.styleTween(n,function(n,e){var t,r,o;return function(){var a=ma(this,n),i=(this.style.removeProperty(n),ma(this,n));return a===i?null:a===t&&i===r?o:o=e(t=a,r=i)}}(n,r)).on("end.style."+n,Us(n)):"function"==typeof e?this.styleTween(n,function(n,e,t){var r,o,a;return function(){var i=ma(this,n),s=t(this),l=s+"";return null==s&&(this.style.removeProperty(n),l=s=ma(this,n)),i===l?null:i===r&&l===o?a:(o=l,a=e(r=i,s))}}(n,r,Ds(this,"style."+n,e))).each(function(n,e){var t,r,o,a,i="style."+e,s="end."+i;return function(){var l=Ms(this,n),d=l.on,c=null==l.value[i]?a||(a=Us(e)):void 0;d===t&&o===c||(r=(t=d).copy()).on(s,o=c),l.on=r}}(this._id,n)):this.styleTween(n,function(n,e,t){var r,o,a=t+"";return function(){var i=ma(this,n);return i===a?null:i===r?o:o=e(r=i,t)}}(n,r,e),t).on("end.style."+n,null)},styleTween:function(n,e,t){var r="style."+(n+="");if(arguments.length<2)return(r=this.tween(r))&&r._value;if(null==e)return this.tween(r,null);if("function"!=typeof e)throw new Error;return this.tween(r,function(n,e,t){var r,o;function a(){var a=e.apply(this,arguments);return a!==o&&(r=(o=a)&&function(n,e,t){return function(r){this.style.setProperty(n,e.call(this,r),t)}}(n,a,t)),r}return a._value=e,a}(n,e,null==t?"":t))},text:function(n){return this.tween("text","function"==typeof n?function(n){return function(){var e=n(this);this.textContent=null==e?"":e}}(Ds(this,"text",n)):function(n){return function(){this.textContent=n}}(null==n?"":n+""))},textTween:function(n){var e="text";if(arguments.length<1)return(e=this.tween(e))&&e._value;if(null==n)return this.tween(e,null);if("function"!=typeof n)throw new Error;return this.tween(e,function(n){var e,t;function r(){var r=n.apply(this,arguments);return r!==t&&(e=(t=r)&&function(n){return function(e){this.textContent=n.call(this,e)}}(r)),e}return r._value=n,r}(n))},remove:function(){return this.on("end.remove",function(n){return function(){var e=this.parentNode;for(var t in this.__transition)if(+t!==n)return;e&&e.removeChild(this)}}(this._id))},tween:function(n,e){var t=this._id;if(n+="",arguments.length<2){for(var r,o=Ps(this.node(),t).tween,a=0,i=o.length;a<i;++a)if((r=o[a]).name===n)return r.value;return null}return this.each((null==e?Is:As)(t,n,e))},delay:function(n){var e=this._id;return arguments.length?this.each(("function"==typeof n?Xs:qs)(e,n)):Ps(this.node(),e).delay},duration:function(n){var e=this._id;return arguments.length?this.each(("function"==typeof n?Ws:Zs)(e,n)):Ps(this.node(),e).duration},ease:function(n){var e=this._id;return arguments.length?this.each(function(n,e){if("function"!=typeof e)throw new Error;return function(){Ms(this,n).ease=e}}(e,n)):Ps(this.node(),e).ease},easeVarying:function(n){if("function"!=typeof n)throw new Error;return this.each(function(n,e){return function(){var t=e.apply(this,arguments);if("function"!=typeof t)throw new Error;Ms(this,n).ease=t}}(this._id,n))},end:function(){var n,e,t=this,r=t._id,o=t.size();return new Promise(function(a,i){var s={value:i},l={value:function(){0===--o&&a()}};t.each(function(){var t=Ms(this,r),o=t.on;o!==n&&((e=(n=o).copy())._.cancel.push(s),e._.interrupt.push(s),e._.end.push(l)),t.on=e}),0===o&&a()})},[Symbol.iterator]:el[Symbol.iterator]};var tl={time:null,delay:0,duration:250,ease:function(n){return((n*=2)<=1?n*n*n:(n-=2)*n*n+2)/2}};function rl(n,e){for(var t;!(t=n.__transition)||!(t=t[e]);)if(!(n=n.parentNode))throw new Error(`transition ${e} not found`);return t}Ga.prototype.interrupt=function(n){return this.each(function(){Rs(this,n)})},Ga.prototype.transition=function(n){var e,t;n instanceof Js?(e=n._id,n=n._name):(e=nl(),(t=tl).time=xs(),n=null==n?null:n+"");for(var r=this._groups,o=r.length,a=0;a<o;++a)for(var i,s=r[a],l=s.length,d=0;d<l;++d)(i=s[d])&&js(i,n,e,d,s,t||rl(i,e));return new Js(r,this._parents,n,e)};var ol=n=>()=>n;function al(n,{sourceEvent:e,target:t,transform:r,dispatch:o}){Object.defineProperties(this,{type:{value:n,enumerable:!0,configurable:!0},sourceEvent:{value:e,enumerable:!0,configurable:!0},target:{value:t,enumerable:!0,configurable:!0},transform:{value:r,enumerable:!0,configurable:!0},_:{value:o}})}function il(n,e,t){this.k=n,this.x=e,this.y=t}il.prototype={constructor:il,scale:function(n){return 1===n?this:new il(this.k*n,this.x,this.y)},translate:function(n,e){return 0===n&0===e?this:new il(this.k,this.x+this.k*n,this.y+this.k*e)},apply:function(n){return[n[0]*this.k+this.x,n[1]*this.k+this.y]},applyX:function(n){return n*this.k+this.x},applyY:function(n){return n*this.k+this.y},invert:function(n){return[(n[0]-this.x)/this.k,(n[1]-this.y)/this.k]},invertX:function(n){return(n-this.x)/this.k},invertY:function(n){return(n-this.y)/this.k},rescaleX:function(n){return n.copy().domain(n.range().map(this.invertX,this).map(n.invert,n))},rescaleY:function(n){return n.copy().domain(n.range().map(this.invertY,this).map(n.invert,n))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var sl=new il(1,0,0);function ll(n){for(;!n.__zoom;)if(!(n=n.parentNode))return sl;return n.__zoom}function dl(n){n.stopImmediatePropagation()}function cl(n){n.preventDefault(),n.stopImmediatePropagation()}function pl(n){return!(n.ctrlKey&&"wheel"!==n.type||n.button)}function ul(){var n=this;return n instanceof SVGElement?(n=n.ownerSVGElement||n).hasAttribute("viewBox")?[[(n=n.viewBox.baseVal).x,n.y],[n.x+n.width,n.y+n.height]]:[[0,0],[n.width.baseVal.value,n.height.baseVal.value]]:[[0,0],[n.clientWidth,n.clientHeight]]}function bl(){return this.__zoom||sl}function ml(n){return-n.deltaY*(1===n.deltaMode?.05:n.deltaMode?1:.002)*(n.ctrlKey?10:1)}function fl(){return navigator.maxTouchPoints||"ontouchstart"in this}function gl(n,e,t){var r=n.invertX(e[0][0])-t[0][0],o=n.invertX(e[1][0])-t[1][0],a=n.invertY(e[0][1])-t[0][1],i=n.invertY(e[1][1])-t[1][1];return n.translate(o>r?(r+o)/2:Math.min(0,r)||Math.max(0,o),i>a?(a+i)/2:Math.min(0,a)||Math.max(0,i))}function hl(){var n,e,t,r=pl,o=ul,a=gl,i=ml,s=fl,l=[0,1/0],d=[[-1/0,-1/0],[1/0,1/0]],c=250,p=cs,u=zo("start","zoom","end"),b=0,m=10;function f(n){n.property("__zoom",bl).on("wheel.zoom",k,{passive:!1}).on("mousedown.zoom",E).on("dblclick.zoom",_).filter(s).on("touchstart.zoom",S).on("touchmove.zoom",O).on("touchend.zoom touchcancel.zoom",C).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function g(n,e){return(e=Math.max(l[0],Math.min(l[1],e)))===n.k?n:new il(e,n.x,n.y)}function h(n,e,t){var r=e[0]-t[0]*n.k,o=e[1]-t[1]*n.k;return r===n.x&&o===n.y?n:new il(n.k,r,o)}function v(n){return[(+n[0][0]+ +n[1][0])/2,(+n[0][1]+ +n[1][1])/2]}function x(n,e,t,r){n.on("start.zoom",function(){w(this,arguments).event(r).start()}).on("interrupt.zoom end.zoom",function(){w(this,arguments).event(r).end()}).tween("zoom",function(){var n=this,a=arguments,i=w(n,a).event(r),s=o.apply(n,a),l=null==t?v(s):"function"==typeof t?t.apply(n,a):t,d=Math.max(s[1][0]-s[0][0],s[1][1]-s[0][1]),c=n.__zoom,u="function"==typeof e?e.apply(n,a):e,b=p(c.invert(l).concat(d/c.k),u.invert(l).concat(d/u.k));return function(n){if(1===n)n=u;else{var e=b(n),t=d/e[2];n=new il(t,l[0]-e[0]*t,l[1]-e[1]*t)}i.zoom(null,n)}})}function w(n,e,t){return!t&&n.__zooming||new y(n,e)}function y(n,e){this.that=n,this.args=e,this.active=0,this.sourceEvent=null,this.extent=o.apply(n,e),this.taps=0}function k(n,...e){if(r.apply(this,arguments)){var t=w(this,e).event(n),o=this.__zoom,s=Math.max(l[0],Math.min(l[1],o.k*Math.pow(2,i.apply(this,arguments)))),c=qa(n);if(t.wheel)t.mouse[0][0]===c[0]&&t.mouse[0][1]===c[1]||(t.mouse[1]=o.invert(t.mouse[0]=c)),clearTimeout(t.wheel);else{if(o.k===s)return;t.mouse=[c,o.invert(c)],Rs(this),t.start()}cl(n),t.wheel=setTimeout(function(){t.wheel=null,t.end()},150),t.zoom("mouse",a(h(g(o,s),t.mouse[0],t.mouse[1]),t.extent,d))}}function E(n,...e){if(!t&&r.apply(this,arguments)){var o=n.currentTarget,i=w(this,e,!0).event(n),s=Xa(n.view).on("mousemove.zoom",function(n){if(cl(n),!i.moved){var e=n.clientX-c,t=n.clientY-p;i.moved=e*e+t*t>b}i.event(n).zoom("mouse",a(h(i.that.__zoom,i.mouse[0]=qa(n,o),i.mouse[1]),i.extent,d))},!0).on("mouseup.zoom",function(n){s.on("mousemove.zoom mouseup.zoom",null),Ja(n.view,i.moved),cl(n),i.event(n).end()},!0),l=qa(n,o),c=n.clientX,p=n.clientY;Qa(n.view),dl(n),i.mouse=[l,this.__zoom.invert(l)],Rs(this),i.start()}}function _(n,...e){if(r.apply(this,arguments)){var t=this.__zoom,i=qa(n.changedTouches?n.changedTouches[0]:n,this),s=t.invert(i),l=t.k*(n.shiftKey?.5:2),p=a(h(g(t,l),i,s),o.apply(this,e),d);cl(n),c>0?Xa(this).transition().duration(c).call(x,p,i,n):Xa(this).call(f.transform,p,i,n)}}function S(t,...o){if(r.apply(this,arguments)){var a,i,s,l,d=t.touches,c=d.length,p=w(this,o,t.changedTouches.length===c).event(t);for(dl(t),i=0;i<c;++i)l=[l=qa(s=d[i],this),this.__zoom.invert(l),s.identifier],p.touch0?p.touch1||p.touch0[2]===l[2]||(p.touch1=l,p.taps=0):(p.touch0=l,a=!0,p.taps=1+!!n);n&&(n=clearTimeout(n)),a&&(p.taps<2&&(e=l[0],n=setTimeout(function(){n=null},500)),Rs(this),p.start())}}function O(n,...e){if(this.__zooming){var t,r,o,i,s=w(this,e).event(n),l=n.changedTouches,c=l.length;for(cl(n),t=0;t<c;++t)o=qa(r=l[t],this),s.touch0&&s.touch0[2]===r.identifier?s.touch0[0]=o:s.touch1&&s.touch1[2]===r.identifier&&(s.touch1[0]=o);if(r=s.that.__zoom,s.touch1){var p=s.touch0[0],u=s.touch0[1],b=s.touch1[0],m=s.touch1[1],f=(f=b[0]-p[0])*f+(f=b[1]-p[1])*f,v=(v=m[0]-u[0])*v+(v=m[1]-u[1])*v;r=g(r,Math.sqrt(f/v)),o=[(p[0]+b[0])/2,(p[1]+b[1])/2],i=[(u[0]+m[0])/2,(u[1]+m[1])/2]}else{if(!s.touch0)return;o=s.touch0[0],i=s.touch0[1]}s.zoom("touch",a(h(r,o,i),s.extent,d))}}function C(n,...r){if(this.__zooming){var o,a,i=w(this,r).event(n),s=n.changedTouches,l=s.length;for(dl(n),t&&clearTimeout(t),t=setTimeout(function(){t=null},500),o=0;o<l;++o)a=s[o],i.touch0&&i.touch0[2]===a.identifier?delete i.touch0:i.touch1&&i.touch1[2]===a.identifier&&delete i.touch1;if(i.touch1&&!i.touch0&&(i.touch0=i.touch1,delete i.touch1),i.touch0)i.touch0[1]=this.__zoom.invert(i.touch0[0]);else if(i.end(),2===i.taps&&(a=qa(a,this),Math.hypot(e[0]-a[0],e[1]-a[1])<m)){var d=Xa(this).on("dblclick.zoom");d&&d.apply(this,arguments)}}}return f.transform=function(n,e,t,r){var o=n.selection?n.selection():n;o.property("__zoom",bl),n!==o?x(n,e,t,r):o.interrupt().each(function(){w(this,arguments).event(r).start().zoom(null,"function"==typeof e?e.apply(this,arguments):e).end()})},f.scaleBy=function(n,e,t,r){f.scaleTo(n,function(){return this.__zoom.k*("function"==typeof e?e.apply(this,arguments):e)},t,r)},f.scaleTo=function(n,e,t,r){f.transform(n,function(){var n=o.apply(this,arguments),r=this.__zoom,i=null==t?v(n):"function"==typeof t?t.apply(this,arguments):t,s=r.invert(i),l="function"==typeof e?e.apply(this,arguments):e;return a(h(g(r,l),i,s),n,d)},t,r)},f.translateBy=function(n,e,t,r){f.transform(n,function(){return a(this.__zoom.translate("function"==typeof e?e.apply(this,arguments):e,"function"==typeof t?t.apply(this,arguments):t),o.apply(this,arguments),d)},null,r)},f.translateTo=function(n,e,t,r,i){f.transform(n,function(){var n=o.apply(this,arguments),i=this.__zoom,s=null==r?v(n):"function"==typeof r?r.apply(this,arguments):r;return a(sl.translate(s[0],s[1]).scale(i.k).translate("function"==typeof e?-e.apply(this,arguments):-e,"function"==typeof t?-t.apply(this,arguments):-t),n,d)},r,i)},y.prototype={event:function(n){return n&&(this.sourceEvent=n),this},start:function(){return 1===++this.active&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(n,e){return this.mouse&&"mouse"!==n&&(this.mouse[1]=e.invert(this.mouse[0])),this.touch0&&"touch"!==n&&(this.touch0[1]=e.invert(this.touch0[0])),this.touch1&&"touch"!==n&&(this.touch1[1]=e.invert(this.touch1[0])),this.that.__zoom=e,this.emit("zoom"),this},end:function(){return 0===--this.active&&(delete this.that.__zooming,this.emit("end")),this},emit:function(n){var e=Xa(this.that).datum();u.call(n,this.that,new al(n,{sourceEvent:this.sourceEvent,target:f,transform:this.that.__zoom,dispatch:u}),e)}},f.wheelDelta=function(n){return arguments.length?(i="function"==typeof n?n:ol(+n),f):i},f.filter=function(n){return arguments.length?(r="function"==typeof n?n:ol(!!n),f):r},f.touchable=function(n){return arguments.length?(s="function"==typeof n?n:ol(!!n),f):s},f.extent=function(n){return arguments.length?(o="function"==typeof n?n:ol([[+n[0][0],+n[0][1]],[+n[1][0],+n[1][1]]]),f):o},f.scaleExtent=function(n){return arguments.length?(l[0]=+n[0],l[1]=+n[1],f):[l[0],l[1]]},f.translateExtent=function(n){return arguments.length?(d[0][0]=+n[0][0],d[1][0]=+n[1][0],d[0][1]=+n[0][1],d[1][1]=+n[1][1],f):[[d[0][0],d[0][1]],[d[1][0],d[1][1]]]},f.constrain=function(n){return arguments.length?(a=n,f):a},f.duration=function(n){return arguments.length?(c=+n,f):c},f.interpolate=function(n){return arguments.length?(p=n,f):p},f.on=function(){var n=u.on.apply(u,arguments);return n===u?f:n},f.clickDistance=function(n){return arguments.length?(b=(n=+n)*n,f):Math.sqrt(b)},f.tapDistance=function(n){return arguments.length?(m=+n,f):m},f}ll.prototype=il.prototype;const vl=()=>"[React Flow]: Seems like you have not used zustand provider as an ancestor. Help: https://reactflow.dev/error#001",xl=()=>"It looks like you've created a new nodeTypes or edgeTypes object. If this wasn't on purpose please define the nodeTypes/edgeTypes outside of the component or memoize them.",wl=n=>`Node type "${n}" not found. Using fallback type "default".`,yl=()=>"The React Flow parent container needs a width and a height to render the graph.",kl=()=>"Only child nodes can use a parent extent.",El=()=>"Can't create edge. An edge needs a source and a target.",_l=n=>`Marker type "${n}" doesn't exist.`,Sl=(n,{id:e,sourceHandle:t,targetHandle:r})=>`Couldn't create edge for ${n} handle id: "${"source"===n?t:r}", edge id: ${e}.`,Ol=()=>"Handle: No node id found. Make sure to only use a Handle inside a custom Node.",Cl=n=>`Edge type "${n}" not found. Using fallback type "default".`,Nl=n=>`Node with id "${n}" does not exist, it may have been removed. This can happen when a node is deleted before the "onNodeClick" handler is called.`,jl=(n="react")=>`It seems that you haven't loaded the styles. Please import '@xyflow/${n}/dist/style.css' or base.css to make sure everything is working properly.`,zl=()=>"It seems that you are trying to drag a node that is not initialized. Please use onNodesChange as explained in the docs.",Ml=[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],Pl=["Enter"," ","Escape"],Rl={"node.a11yDescription.default":"Press enter or space to select a node. Press delete to remove it and escape to cancel.","node.a11yDescription.keyboardDisabled":"Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.","node.a11yDescription.ariaLiveMessage":({direction:n,x:e,y:t})=>`Moved selected node ${n}. New position, x: ${e}, y: ${t}`,"edge.a11yDescription.default":"Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.","controls.ariaLabel":"Control Panel","controls.zoomIn.ariaLabel":"Zoom In","controls.zoomOut.ariaLabel":"Zoom Out","controls.fitView.ariaLabel":"Fit View","controls.interactive.ariaLabel":"Toggle Interactivity","minimap.ariaLabel":"Mini Map","handle.ariaLabel":"Handle"};var Il,Al,Dl;!function(n){n.Strict="strict",n.Loose="loose"}(Il||(Il={})),function(n){n.Free="free",n.Vertical="vertical",n.Horizontal="horizontal"}(Al||(Al={})),function(n){n.Partial="partial",n.Full="full"}(Dl||(Dl={}));const Tl={inProgress:!1,isValid:null,from:null,fromHandle:null,fromPosition:null,fromNode:null,to:null,toHandle:null,toPosition:null,toNode:null};var Ll,Bl,Vl;!function(n){n.Bezier="default",n.Straight="straight",n.Step="step",n.SmoothStep="smoothstep",n.SimpleBezier="simplebezier"}(Ll||(Ll={})),function(n){n.Arrow="arrow",n.ArrowClosed="arrowclosed"}(Bl||(Bl={})),function(n){n.Left="left",n.Top="top",n.Right="right",n.Bottom="bottom"}(Vl||(Vl={}));const $l={[Vl.Left]:Vl.Right,[Vl.Right]:Vl.Left,[Vl.Top]:Vl.Bottom,[Vl.Bottom]:Vl.Top};function Hl(n){return null===n?null:n?"valid":"invalid"}const Fl=n=>"id"in n&&"source"in n&&"target"in n,Yl=n=>"id"in n&&"internals"in n&&!("source"in n)&&!("target"in n),Gl=(n,e=[0,0])=>{const{width:t,height:r}=xd(n),o=n.origin??e,a=t*o[0],i=r*o[1];return{x:n.position.x-a,y:n.position.y-i}},Xl=(n,e={})=>{if(0===n.size)return{x:0,y:0,width:0,height:0};let t={x:1/0,y:1/0,x2:-1/0,y2:-1/0};return n.forEach(n=>{if(void 0===e.filter||e.filter(n)){const e=id(n);t=td(t,e)}}),od(t)},ql=(n,e,[t,r,o]=[0,0,1],a=!1,i=!1)=>{const s={...bd(e,[t,r,o]),width:e.width/o,height:e.height/o},l=[];for(const e of n.values()){const{measured:n,selectable:t=!0,hidden:r=!1}=e;if(i&&!t||r)continue;const o=n.width??e.width??e.initialWidth??null,d=n.height??e.height??e.initialHeight??null,c=ld(s,ad(e)),p=(o??0)*(d??0),u=a&&c>0;(!e.internals.handleBounds||u||c>=p||e.dragging)&&l.push(e)}return l};async function Wl({nodes:n,width:e,height:t,panZoom:r,minZoom:o,maxZoom:a},i){if(0===n.size)return Promise.resolve(!0);const s=function(n,e){const t=new Map,r=e?.nodes?new Set(e.nodes.map(n=>n.id)):null;return n.forEach(n=>{!n.measured.width||!n.measured.height||!e?.includeHiddenNodes&&n.hidden||r&&!r.has(n.id)||t.set(n.id,n)}),t}(n,i),l=Xl(s),d=gd(l,e,t,i?.minZoom??o,i?.maxZoom??a,i?.padding??.1);return await r.setViewport(d,{duration:i?.duration,ease:i?.ease,interpolate:i?.interpolate}),Promise.resolve(!0)}function Zl({nodeId:n,nextPosition:e,nodeLookup:t,nodeOrigin:r=[0,0],nodeExtent:o,onError:a}){const i=t.get(n),s=i.parentId?t.get(i.parentId):void 0,{x:l,y:d}=s?s.internals.positionAbsolute:{x:0,y:0},c=i.origin??r;let p=i.extent||o;if("parent"!==i.extent||i.expandParent)s&&vd(i.extent)&&(p=[[i.extent[0][0]+l,i.extent[0][1]+d],[i.extent[1][0]+l,i.extent[1][1]+d]]);else if(s){const n=s.measured.width,e=s.measured.height;n&&e&&(p=[[l,d],[l+n,d+e]])}else a?.("005",kl());const u=vd(p)?Ql(e,p,i.measured):e;return void 0!==i.measured.width&&void 0!==i.measured.height||a?.("015",zl()),{position:{x:u.x-l+(i.measured.width??0)*c[0],y:u.y-d+(i.measured.height??0)*c[1]},positionAbsolute:u}}async function Kl({nodesToRemove:n=[],edgesToRemove:e=[],nodes:t,edges:r,onBeforeDelete:o}){const a=new Set(n.map(n=>n.id)),i=[];for(const n of t){if(!1===n.deletable)continue;const e=a.has(n.id),t=!e&&n.parentId&&i.find(e=>e.id===n.parentId);(e||t)&&i.push(n)}const s=new Set(e.map(n=>n.id)),l=r.filter(n=>!1!==n.deletable),d=((n,e)=>{const t=new Set;return n.forEach(n=>{t.add(n.id)}),e.filter(n=>t.has(n.source)||t.has(n.target))})(i,l),c=d;for(const n of l){s.has(n.id)&&!c.find(e=>e.id===n.id)&&c.push(n)}if(!o)return{edges:c,nodes:i};const p=await o({nodes:i,edges:c});return"boolean"==typeof p?p?{edges:c,nodes:i}:{edges:[],nodes:[]}:p}const Ul=(n,e=0,t=1)=>Math.min(Math.max(n,e),t),Ql=(n={x:0,y:0},e,t)=>({x:Ul(n.x,e[0][0],e[1][0]-(t?.width??0)),y:Ul(n.y,e[0][1],e[1][1]-(t?.height??0))});function Jl(n,e,t){const{width:r,height:o}=xd(t),{x:a,y:i}=t.internals.positionAbsolute;return Ql(n,[[a,i],[a+r,i+o]],e)}const nd=(n,e,t)=>n<e?Ul(Math.abs(n-e),1,e)/e:n>t?-Ul(Math.abs(n-t),1,e)/e:0,ed=(n,e,t=15,r=40)=>[nd(n.x,r,e.width-r)*t,nd(n.y,r,e.height-r)*t],td=(n,e)=>({x:Math.min(n.x,e.x),y:Math.min(n.y,e.y),x2:Math.max(n.x2,e.x2),y2:Math.max(n.y2,e.y2)}),rd=({x:n,y:e,width:t,height:r})=>({x:n,y:e,x2:n+t,y2:e+r}),od=({x:n,y:e,x2:t,y2:r})=>({x:n,y:e,width:t-n,height:r-e}),ad=(n,e=[0,0])=>{const{x:t,y:r}=Yl(n)?n.internals.positionAbsolute:Gl(n,e);return{x:t,y:r,width:n.measured?.width??n.width??n.initialWidth??0,height:n.measured?.height??n.height??n.initialHeight??0}},id=(n,e=[0,0])=>{const{x:t,y:r}=Yl(n)?n.internals.positionAbsolute:Gl(n,e);return{x:t,y:r,x2:t+(n.measured?.width??n.width??n.initialWidth??0),y2:r+(n.measured?.height??n.height??n.initialHeight??0)}},sd=(n,e)=>od(td(rd(n),rd(e))),ld=(n,e)=>{const t=Math.max(0,Math.min(n.x+n.width,e.x+e.width)-Math.max(n.x,e.x)),r=Math.max(0,Math.min(n.y+n.height,e.y+e.height)-Math.max(n.y,e.y));return Math.ceil(t*r)},dd=n=>cd(n.width)&&cd(n.height)&&cd(n.x)&&cd(n.y),cd=n=>!isNaN(n)&&isFinite(n),pd=(n,e)=>{"development"===process.env.NODE_ENV&&console.warn(`[React Flow]: ${e} Help: https://reactflow.dev/error#${n}`)},ud=(n,e=[1,1])=>({x:e[0]*Math.round(n.x/e[0]),y:e[1]*Math.round(n.y/e[1])}),bd=({x:n,y:e},[t,r,o],a=!1,i=[1,1])=>{const s={x:(n-t)/o,y:(e-r)/o};return a?ud(s,i):s},md=({x:n,y:e},[t,r,o])=>({x:n*o+t,y:e*o+r});function fd(n,e){if("number"==typeof n)return Math.floor(.5*(e-e/(1+n)));if("string"==typeof n&&n.endsWith("px")){const e=parseFloat(n);if(!Number.isNaN(e))return Math.floor(e)}if("string"==typeof n&&n.endsWith("%")){const t=parseFloat(n);if(!Number.isNaN(t))return Math.floor(e*t*.01)}return console.error(`[React Flow] The padding value "${n}" is invalid. Please provide a number or a string with a valid unit (px or %).`),0}const gd=(n,e,t,r,o,a)=>{const i=function(n,e,t){if("string"==typeof n||"number"==typeof n){const r=fd(n,t),o=fd(n,e);return{top:r,right:o,bottom:r,left:o,x:2*o,y:2*r}}if("object"==typeof n){const r=fd(n.top??n.y??0,t),o=fd(n.bottom??n.y??0,t),a=fd(n.left??n.x??0,e),i=fd(n.right??n.x??0,e);return{top:r,right:i,bottom:o,left:a,x:a+i,y:r+o}}return{top:0,right:0,bottom:0,left:0,x:0,y:0}}(a,e,t),s=(e-i.x)/n.width,l=(t-i.y)/n.height,d=Math.min(s,l),c=Ul(d,r,o),p=e/2-(n.x+n.width/2)*c,u=t/2-(n.y+n.height/2)*c,b=function(n,e,t,r,o,a){const{x:i,y:s}=md(n,[e,t,r]),{x:l,y:d}=md({x:n.x+n.width,y:n.y+n.height},[e,t,r]),c=o-l,p=a-d;return{left:Math.floor(i),top:Math.floor(s),right:Math.floor(c),bottom:Math.floor(p)}}(n,p,u,c,e,t),m=Math.min(b.left-i.left,0),f=Math.min(b.top-i.top,0);return{x:p-m+Math.min(b.right-i.right,0),y:u-f+Math.min(b.bottom-i.bottom,0),zoom:c}},hd=()=>"undefined"!=typeof navigator&&navigator?.userAgent?.indexOf("Mac")>=0;function vd(n){return void 0!==n&&"parent"!==n}function xd(n){return{width:n.measured?.width??n.width??n.initialWidth??0,height:n.measured?.height??n.height??n.initialHeight??0}}function wd(n){return void 0!==(n.measured?.width??n.width??n.initialWidth)&&void 0!==(n.measured?.height??n.height??n.initialHeight)}function yd(n,e={width:0,height:0},t,r,o){const a={...n},i=r.get(t);if(i){const n=i.origin||o;a.x+=i.internals.positionAbsolute.x-(e.width??0)*n[0],a.y+=i.internals.positionAbsolute.y-(e.height??0)*n[1]}return a}function kd(n,e){if(n.size!==e.size)return!1;for(const t of n)if(!e.has(t))return!1;return!0}function Ed(n){return{...Rl,...n||{}}}function _d(n,{snapGrid:e=[0,0],snapToGrid:t=!1,transform:r,containerBounds:o}){const{x:a,y:i}=zd(n),s=bd({x:a-(o?.left??0),y:i-(o?.top??0)},r),{x:l,y:d}=t?ud(s,e):s;return{xSnapped:l,ySnapped:d,...s}}const Sd=n=>({width:n.offsetWidth,height:n.offsetHeight}),Od=n=>n?.getRootNode?.()||window?.document,Cd=["INPUT","SELECT","TEXTAREA"];function Nd(n){const e=n.composedPath?.()?.[0]||n.target;if(1!==e?.nodeType)return!1;return Cd.includes(e.nodeName)||e.hasAttribute("contenteditable")||!!e.closest(".nokey")}const jd=n=>"clientX"in n,zd=(n,e)=>{const t=jd(n),r=t?n.clientX:n.touches?.[0].clientX,o=t?n.clientY:n.touches?.[0].clientY;return{x:r-(e?.left??0),y:o-(e?.top??0)}},Md=(n,e,t,r,o)=>{const a=e.querySelectorAll(`.${n}`);return a&&a.length?Array.from(a).map(e=>{const a=e.getBoundingClientRect();return{id:e.getAttribute("data-handleid"),type:n,nodeId:o,position:e.getAttribute("data-handlepos"),x:(a.left-t.left)/r,y:(a.top-t.top)/r,...Sd(e)}}):null};function Pd({sourceX:n,sourceY:e,targetX:t,targetY:r,sourceControlX:o,sourceControlY:a,targetControlX:i,targetControlY:s}){const l=.125*n+.375*o+.375*i+.125*t,d=.125*e+.375*a+.375*s+.125*r;return[l,d,Math.abs(l-n),Math.abs(d-e)]}function Rd(n,e){return n>=0?.5*n:25*e*Math.sqrt(-n)}function Id({pos:n,x1:e,y1:t,x2:r,y2:o,c:a}){switch(n){case Vl.Left:return[e-Rd(e-r,a),t];case Vl.Right:return[e+Rd(r-e,a),t];case Vl.Top:return[e,t-Rd(t-o,a)];case Vl.Bottom:return[e,t+Rd(o-t,a)]}}function Ad({sourceX:n,sourceY:e,sourcePosition:t=Vl.Bottom,targetX:r,targetY:o,targetPosition:a=Vl.Top,curvature:i=.25}){const[s,l]=Id({pos:t,x1:n,y1:e,x2:r,y2:o,c:i}),[d,c]=Id({pos:a,x1:r,y1:o,x2:n,y2:e,c:i}),[p,u,b,m]=Pd({sourceX:n,sourceY:e,targetX:r,targetY:o,sourceControlX:s,sourceControlY:l,targetControlX:d,targetControlY:c});return[`M${n},${e} C${s},${l} ${d},${c} ${r},${o}`,p,u,b,m]}function Dd({sourceX:n,sourceY:e,targetX:t,targetY:r}){const o=Math.abs(t-n)/2,a=t<n?t+o:t-o,i=Math.abs(r-e)/2;return[a,r<e?r+i:r-i,o,i]}function Td({sourceNode:n,targetNode:e,width:t,height:r,transform:o}){const a=td(id(n),id(e));a.x===a.x2&&(a.x2+=1),a.y===a.y2&&(a.y2+=1);const i={x:-o[0]/o[2],y:-o[1]/o[2],width:t/o[2],height:r/o[2]};return ld(i,od(a))>0}const Ld=({source:n,sourceHandle:e,target:t,targetHandle:r})=>`xy-edge__${n}${e||""}-${t}${r||""}`;function Bd({sourceX:n,sourceY:e,targetX:t,targetY:r}){const[o,a,i,s]=Dd({sourceX:n,sourceY:e,targetX:t,targetY:r});return[`M ${n},${e}L ${t},${r}`,o,a,i,s]}const Vd={[Vl.Left]:{x:-1,y:0},[Vl.Right]:{x:1,y:0},[Vl.Top]:{x:0,y:-1},[Vl.Bottom]:{x:0,y:1}},$d=(n,e)=>Math.sqrt(Math.pow(e.x-n.x,2)+Math.pow(e.y-n.y,2));function Hd({source:n,sourcePosition:e=Vl.Bottom,target:t,targetPosition:r=Vl.Top,center:o,offset:a,stepPosition:i}){const s=Vd[e],l=Vd[r],d={x:n.x+s.x*a,y:n.y+s.y*a},c={x:t.x+l.x*a,y:t.y+l.y*a},p=(({source:n,sourcePosition:e=Vl.Bottom,target:t})=>e===Vl.Left||e===Vl.Right?n.x<t.x?{x:1,y:0}:{x:-1,y:0}:n.y<t.y?{x:0,y:1}:{x:0,y:-1})({source:d,sourcePosition:e,target:c}),u=0!==p.x?"x":"y",b=p[u];let m,f,g=[];const h={x:0,y:0},v={x:0,y:0},[,,x,w]=Dd({sourceX:n.x,sourceY:n.y,targetX:t.x,targetY:t.y});if(s[u]*l[u]===-1){"x"===u?(m=o.x??d.x+(c.x-d.x)*i,f=o.y??(d.y+c.y)/2):(m=o.x??(d.x+c.x)/2,f=o.y??d.y+(c.y-d.y)*i);const n=[{x:m,y:d.y},{x:m,y:c.y}],e=[{x:d.x,y:f},{x:c.x,y:f}];g=s[u]===b?"x"===u?n:e:"x"===u?e:n}else{const o=[{x:d.x,y:c.y}],i=[{x:c.x,y:d.y}];if(g="x"===u?s.x===b?i:o:s.y===b?o:i,e===r){const e=Math.abs(n[u]-t[u]);if(e<=a){const r=Math.min(a-1,a-e);s[u]===b?h[u]=(d[u]>n[u]?-1:1)*r:v[u]=(c[u]>t[u]?-1:1)*r}}if(e!==r){const n="x"===u?"y":"x",e=s[u]===l[n],t=d[n]>c[n],r=d[n]<c[n];(1===s[u]&&(!e&&t||e&&r)||1!==s[u]&&(!e&&r||e&&t))&&(g="x"===u?o:i)}const p={x:d.x+h.x,y:d.y+h.y},x={x:c.x+v.x,y:c.y+v.y};Math.max(Math.abs(p.x-g[0].x),Math.abs(x.x-g[0].x))>=Math.max(Math.abs(p.y-g[0].y),Math.abs(x.y-g[0].y))?(m=(p.x+x.x)/2,f=g[0].y):(m=g[0].x,f=(p.y+x.y)/2)}return[[n,{x:d.x+h.x,y:d.y+h.y},...g,{x:c.x+v.x,y:c.y+v.y},t],m,f,x,w]}function Fd({sourceX:n,sourceY:e,sourcePosition:t=Vl.Bottom,targetX:r,targetY:o,targetPosition:a=Vl.Top,borderRadius:i=5,centerX:s,centerY:l,offset:d=20,stepPosition:c=.5}){const[p,u,b,m,f]=Hd({source:{x:n,y:e},sourcePosition:t,target:{x:r,y:o},targetPosition:a,center:{x:s,y:l},offset:d,stepPosition:c}),g=p.reduce((n,e,t)=>{let r="";return r=t>0&&t<p.length-1?function(n,e,t,r){const o=Math.min($d(n,e)/2,$d(e,t)/2,r),{x:a,y:i}=e;if(n.x===a&&a===t.x||n.y===i&&i===t.y)return`L${a} ${i}`;if(n.y===i)return`L ${a+o*(n.x<t.x?-1:1)},${i}Q ${a},${i} ${a},${i+o*(n.y<t.y?1:-1)}`;const s=n.x<t.x?1:-1;return`L ${a},${i+o*(n.y<t.y?-1:1)}Q ${a},${i} ${a+o*s},${i}`}(p[t-1],e,p[t+1],i):`${0===t?"M":"L"}${e.x} ${e.y}`,n+=r},"");return[g,u,b,m,f]}function Yd(n){return n&&!(!n.internals.handleBounds&&!n.handles?.length)&&!!(n.measured.width||n.width||n.initialWidth)}function Gd(n){if(!n)return null;const e=[],t=[];for(const r of n)r.width=r.width??1,r.height=r.height??1,"source"===r.type?e.push(r):"target"===r.type&&t.push(r);return{source:e,target:t}}function Xd(n,e,t=Vl.Left,r=!1){const o=(e?.x??0)+n.internals.positionAbsolute.x,a=(e?.y??0)+n.internals.positionAbsolute.y,{width:i,height:s}=e??xd(n);if(r)return{x:o+i/2,y:a+s/2};switch(e?.position??t){case Vl.Top:return{x:o+i/2,y:a};case Vl.Right:return{x:o+i,y:a+s/2};case Vl.Bottom:return{x:o+i/2,y:a+s};case Vl.Left:return{x:o,y:a+s/2}}}function qd(n,e){return n&&(e?n.find(n=>n.id===e):n[0])||null}function Wd(n,e){if(!n)return"";if("string"==typeof n)return n;return`${e?`${e}__`:""}${Object.keys(n).sort().map(e=>`${e}=${n[e]}`).join("&")}`}const Zd={nodeOrigin:[0,0],nodeExtent:Ml,elevateNodesOnSelect:!0,defaults:{}},Kd={...Zd,checkEquality:!0};function Ud(n,e){const t={...n};for(const n in e)void 0!==e[n]&&(t[n]=e[n]);return t}function Qd(n,e,t,r){const o=Ud(Kd,r);let a=n.length>0;const i=new Map(e),s=o?.elevateNodesOnSelect?1e3:0;e.clear(),t.clear();for(const l of n){let n=i.get(l.id);if(o.checkEquality&&l===n?.internals.userNode)e.set(l.id,n);else{const t=Gl(l,o.nodeOrigin),r=vd(l.extent)?l.extent:o.nodeExtent,a=Ql(t,r,xd(l));n={...o.defaults,...l,measured:{width:l.measured?.width,height:l.measured?.height},internals:{positionAbsolute:a,handleBounds:l.measured?n?.internals.handleBounds:void 0,z:nc(l,s),userNode:l}},e.set(l.id,n)}void 0!==n.measured&&void 0!==n.measured.width&&void 0!==n.measured.height||n.hidden||(a=!1),l.parentId&&Jd(n,e,t,r)}return a}function Jd(n,e,t,r){const{elevateNodesOnSelect:o,nodeOrigin:a,nodeExtent:i}=Ud(Zd,r),s=n.parentId,l=e.get(s);if(!l)return void console.warn(`Parent node ${s} not found. Please make sure that parent nodes are in front of their child nodes in the nodes array.`);!function(n,e){if(!n.parentId)return;const t=e.get(n.parentId);t?t.set(n.id,n):e.set(n.parentId,new Map([[n.id,n]]))}(n,t);const d=o?1e3:0,{x:c,y:p,z:u}=function(n,e,t,r,o){const{x:a,y:i}=e.internals.positionAbsolute,s=xd(n),l=Gl(n,t),d=vd(n.extent)?Ql(l,n.extent,s):l;let c=Ql({x:a+d.x,y:i+d.y},r,s);"parent"===n.extent&&(c=Jl(c,s,e));const p=nc(n,o),u=e.internals.z??0;return{x:c.x,y:c.y,z:u>=p?u+1:p}}(n,l,a,i,d),{positionAbsolute:b}=n.internals,m=c!==b.x||p!==b.y;(m||u!==n.internals.z)&&e.set(n.id,{...n,internals:{...n.internals,positionAbsolute:m?{x:c,y:p}:b,z:u}})}function nc(n,e){return(cd(n.zIndex)?n.zIndex:0)+(n.selected?e:0)}function ec(n,e,t,r=[0,0]){const o=[],a=new Map;for(const t of n){const n=e.get(t.parentId);if(!n)continue;const r=a.get(t.parentId)?.expandedRect??ad(n),o=sd(r,t.rect);a.set(t.parentId,{expandedRect:o,parent:n})}return a.size>0&&a.forEach(({expandedRect:e,parent:a},i)=>{const s=a.internals.positionAbsolute,l=xd(a),d=a.origin??r,c=e.x<s.x?Math.round(Math.abs(s.x-e.x)):0,p=e.y<s.y?Math.round(Math.abs(s.y-e.y)):0,u=Math.max(l.width,Math.round(e.width)),b=Math.max(l.height,Math.round(e.height)),m=(u-l.width)*d[0],f=(b-l.height)*d[1];(c>0||p>0||m||f)&&(o.push({id:i,type:"position",position:{x:a.position.x-c+m,y:a.position.y-p+f}}),t.get(i)?.forEach(e=>{n.some(n=>n.id===e.id)||o.push({id:e.id,type:"position",position:{x:e.position.x+c,y:e.position.y+p}})})),(l.width<e.width||l.height<e.height||c||p)&&o.push({id:i,type:"dimensions",setAttributes:!0,dimensions:{width:u+(c?d[0]*c-m:0),height:b+(p?d[1]*p-f:0)}})}),o}function tc(n,e,t,r,o,a){let i=o;const s=r.get(i)||new Map;r.set(i,s.set(t,e)),i=`${o}-${n}`;const l=r.get(i)||new Map;if(r.set(i,l.set(t,e)),a){i=`${o}-${n}-${a}`;const s=r.get(i)||new Map;r.set(i,s.set(t,e))}}function rc(n,e,t){n.clear(),e.clear();for(const r of t){const{source:t,target:o,sourceHandle:a=null,targetHandle:i=null}=r,s={edgeId:r.id,source:t,target:o,sourceHandle:a,targetHandle:i},l=`${t}-${a}--${o}-${i}`;tc("source",s,`${o}-${i}--${t}-${a}`,n,t,a),tc("target",s,l,n,o,i),e.set(r.id,r)}}function oc(n,e){if(!n.parentId)return!1;const t=e.get(n.parentId);return!!t&&(!!t.selected||oc(t,e))}function ac(n,e,t){let r=n;do{if(r?.matches?.(e))return!0;if(r===t)return!1;r=r?.parentElement}while(r);return!1}function ic({nodeId:n,dragItems:e,nodeLookup:t,dragging:r=!0}){const o=[];for(const[n,a]of e){const e=t.get(n)?.internals.userNode;e&&o.push({...e,position:a.position,dragging:r})}if(!n)return[o[0],o];const a=t.get(n)?.internals.userNode;return[a?{...a,position:e.get(n)?.position||a.position,dragging:r}:o[0],o]}function sc({onNodeMouseDown:n,getStoreItems:e,onDragStart:t,onDrag:r,onDragStop:o}){let a={x:null,y:null},i=0,s=new Map,l=!1,d={x:0,y:0},c=null,p=!1,u=null,b=!1,m=!1;return{update:function({noDragClassName:f,handleSelector:g,domNode:h,isSelectable:v,nodeId:x,nodeClickDistance:w=0}){function y({x:n,y:t},o){const{nodeLookup:i,nodeExtent:l,snapGrid:d,snapToGrid:c,nodeOrigin:p,onNodeDrag:u,onSelectionDrag:b,onError:f,updateNodePositions:g}=e();a={x:n,y:t};let h=!1,v={x:0,y:0,x2:0,y2:0};if(s.size>1&&l){const n=Xl(s);v=rd(n)}for(const[e,r]of s){if(!i.has(e))continue;let o={x:n-r.distance.x,y:t-r.distance.y};c&&(o=ud(o,d));let a=[[l[0][0],l[0][1]],[l[1][0],l[1][1]]];if(s.size>1&&l&&!r.extent){const{positionAbsolute:n}=r.internals,e=n.x-v.x+l[0][0],t=n.x+r.measured.width-v.x2+l[1][0];a=[[e,n.y-v.y+l[0][1]],[t,n.y+r.measured.height-v.y2+l[1][1]]]}const{position:u,positionAbsolute:b}=Zl({nodeId:e,nextPosition:o,nodeLookup:i,nodeExtent:a,nodeOrigin:p,onError:f});h=h||r.position.x!==u.x||r.position.y!==u.y,r.position=u,r.internals.positionAbsolute=b}if(m=m||h,h&&(g(s,!0),o&&(r||u||!x&&b))){const[n,e]=ic({nodeId:x,dragItems:s,nodeLookup:i});r?.(o,s,n,e),u?.(o,n,e),x||b?.(o,e)}}async function k(){if(!c)return;const{transform:n,panBy:t,autoPanSpeed:r,autoPanOnNodeDrag:o}=e();if(!o)return l=!1,void cancelAnimationFrame(i);const[s,p]=ed(d,c,r);0===s&&0===p||(a.x=(a.x??0)-s/n[2],a.y=(a.y??0)-p/n[2],await t({x:s,y:p})&&y(a,null)),i=requestAnimationFrame(k)}function E(r){const{nodeLookup:o,multiSelectionActive:i,nodesDraggable:l,transform:d,snapGrid:u,snapToGrid:b,selectNodesOnDrag:m,onNodeDragStart:f,onSelectionDragStart:g,unselectNodesAndEdges:h}=e();p=!0,m&&v||i||!x||o.get(x)?.selected||h(),v&&m&&x&&n?.(x);const w=_d(r.sourceEvent,{transform:d,snapGrid:u,snapToGrid:b,containerBounds:c});if(a=w,s=function(n,e,t,r){const o=new Map;for(const[a,i]of n)if((i.selected||i.id===r)&&(!i.parentId||!oc(i,n))&&(i.draggable||e&&void 0===i.draggable)){const e=n.get(a);e&&o.set(a,{id:a,position:e.position||{x:0,y:0},distance:{x:t.x-e.internals.positionAbsolute.x,y:t.y-e.internals.positionAbsolute.y},extent:e.extent,parentId:e.parentId,origin:e.origin,expandParent:e.expandParent,internals:{positionAbsolute:e.internals.positionAbsolute||{x:0,y:0}},measured:{width:e.measured.width??0,height:e.measured.height??0}})}return o}(o,l,w,x),s.size>0&&(t||f||!x&&g)){const[n,e]=ic({nodeId:x,dragItems:s,nodeLookup:o});t?.(r.sourceEvent,s,n,e),f?.(r.sourceEvent,n,e),x||g?.(r.sourceEvent,e)}}u=Xa(h);const _=ii().clickDistance(w).on("start",n=>{const{domNode:t,nodeDragThreshold:r,transform:o,snapGrid:i,snapToGrid:s}=e();c=t?.getBoundingClientRect()||null,b=!1,m=!1,0===r&&E(n);const l=_d(n.sourceEvent,{transform:o,snapGrid:i,snapToGrid:s,containerBounds:c});a=l,d=zd(n.sourceEvent,c)}).on("drag",n=>{const{autoPanOnNodeDrag:t,transform:r,snapGrid:o,snapToGrid:i,nodeDragThreshold:u,nodeLookup:m}=e(),f=_d(n.sourceEvent,{transform:r,snapGrid:o,snapToGrid:i,containerBounds:c});if(("touchmove"===n.sourceEvent.type&&n.sourceEvent.touches.length>1||x&&!m.has(x))&&(b=!0),!b){if(!l&&t&&p&&(l=!0,k()),!p){const e=f.xSnapped-(a.x??0),t=f.ySnapped-(a.y??0);Math.sqrt(e*e+t*t)>u&&E(n)}(a.x!==f.xSnapped||a.y!==f.ySnapped)&&s&&p&&(d=zd(n.sourceEvent,c),y(f,n.sourceEvent))}}).on("end",n=>{if(p&&!b&&(l=!1,p=!1,cancelAnimationFrame(i),s.size>0)){const{nodeLookup:t,updateNodePositions:r,onNodeDragStop:a,onSelectionDragStop:i}=e();if(m&&(r(s,!1),m=!1),o||a||!x&&i){const[e,r]=ic({nodeId:x,dragItems:s,nodeLookup:t,dragging:!1});o?.(n.sourceEvent,s,e,r),a?.(n.sourceEvent,e,r),x||i?.(n.sourceEvent,r)}}}).filter(n=>{const e=n.target;return!n.button&&(!f||!ac(e,`.${f}`,h))&&(!g||ac(e,g,h))});u.call(_)},destroy:function(){u?.on(".drag",null)}}}function lc(n,e,t,r){let o=[],a=1/0;const i=function(n,e,t){const r=[],o={x:n.x-t,y:n.y-t,width:2*t,height:2*t};for(const n of e.values())ld(o,ad(n))>0&&r.push(n);return r}(n,t,e+250);for(const t of i){const i=[...t.internals.handleBounds?.source??[],...t.internals.handleBounds?.target??[]];for(const s of i){if(r.nodeId===s.nodeId&&r.type===s.type&&r.id===s.id)continue;const{x:i,y:l}=Xd(t,s,s.position,!0),d=Math.sqrt(Math.pow(i-n.x,2)+Math.pow(l-n.y,2));d>e||(d<a?(o=[{...s,x:i,y:l}],a=d):d===a&&o.push({...s,x:i,y:l}))}}if(!o.length)return null;if(o.length>1){const n="source"===r.type?"target":"source";return o.find(e=>e.type===n)??o[0]}return o[0]}function dc(n,e,t,r,o,a=!1){const i=r.get(n);if(!i)return null;const s="strict"===o?i.internals.handleBounds?.[e]:[...i.internals.handleBounds?.source??[],...i.internals.handleBounds?.target??[]],l=(t?s?.find(n=>n.id===t):s?.[0])??null;return l&&a?{...l,...Xd(i,l,l.position,!0)}:l}function cc(n,e){return n||(e?.classList.contains("target")?"target":e?.classList.contains("source")?"source":null)}const pc=()=>!0;function uc(n,{handle:e,connectionMode:t,fromNodeId:r,fromHandleId:o,fromType:a,doc:i,lib:s,flowId:l,isValidConnection:d=pc,nodeLookup:c}){const p="target"===a,u=e?i.querySelector(`.${s}-flow__handle[data-id="${l}-${e?.nodeId}-${e?.id}-${e?.type}"]`):null,{x:b,y:m}=zd(n),f=i.elementFromPoint(b,m),g=f?.classList.contains(`${s}-flow__handle`)?f:u,h={handleDomNode:g,isValid:!1,connection:null,toHandle:null};if(g){const n=cc(void 0,g),e=g.getAttribute("data-nodeid"),a=g.getAttribute("data-handleid"),i=g.classList.contains("connectable"),s=g.classList.contains("connectableend");if(!e||!n)return h;const l={source:p?e:r,sourceHandle:p?a:o,target:p?r:e,targetHandle:p?o:a};h.connection=l;const u=i&&s&&(t===Il.Strict?p&&"source"===n||!p&&"target"===n:e!==r||a!==o);h.isValid=u&&d(l),h.toHandle=dc(e,n,a,c,t,!0)}return h}const bc={onPointerDown:function(n,{connectionMode:e,connectionRadius:t,handleId:r,nodeId:o,edgeUpdaterType:a,isTarget:i,domNode:s,nodeLookup:l,lib:d,autoPanOnConnect:c,flowId:p,panBy:u,cancelConnection:b,onConnectStart:m,onConnect:f,onConnectEnd:g,isValidConnection:h=pc,onReconnectEnd:v,updateConnection:x,getTransform:w,getFromHandle:y,autoPanSpeed:k,dragThreshold:E=1}){const _=Od(n.target);let S,O=0;const{x:C,y:N}=zd(n),j=_?.elementFromPoint(C,N),z=cc(a,j),M=s?.getBoundingClientRect();let P=!1;if(!M||!z)return;const R=dc(o,z,r,l,e);if(!R)return;let I=zd(n,M),A=!1,D=null,T=!1,L=null;function B(){if(!c||!M)return;const[n,e]=ed(I,M,k);u({x:n,y:e}),O=requestAnimationFrame(B)}const V={...R,nodeId:o,type:z,position:R.position},$=l.get(o);let H={inProgress:!0,isValid:null,from:Xd($,V,Vl.Left,!0),fromHandle:V,fromPosition:V.position,fromNode:$,to:I,toHandle:null,toPosition:$l[V.position],toNode:null};function F(){P=!0,x(H),m?.(n,{nodeId:o,handleId:r,handleType:z})}function Y(n){if(!P){const{x:e,y:t}=zd(n),r=e-C,o=t-N;if(!(r*r+o*o>E*E))return;F()}if(!y()||!V)return void G(n);const a=w();I=zd(n,M),S=lc(bd(I,a,!1,[1,1]),t,l,V),A||(B(),A=!0);const s=uc(n,{handle:S,connectionMode:e,fromNodeId:o,fromHandleId:r,fromType:i?"target":"source",isValidConnection:h,doc:_,lib:d,flowId:p,nodeLookup:l});L=s.handleDomNode,D=s.connection,T=function(n,e){let t=null;return e?t=!0:n&&!e&&(t=!1),t}(!!S,s.isValid);const c={...H,isValid:T,to:s.toHandle&&T?md({x:s.toHandle.x,y:s.toHandle.y},a):I,toHandle:s.toHandle,toPosition:T&&s.toHandle?s.toHandle.position:$l[V.position],toNode:s.toHandle?l.get(s.toHandle.nodeId):null};T&&S&&H.toHandle&&c.toHandle&&H.toHandle.type===c.toHandle.type&&H.toHandle.nodeId===c.toHandle.nodeId&&H.toHandle.id===c.toHandle.id&&H.to.x===c.to.x&&H.to.y===c.to.y||(x(c),H=c)}function G(n){if(P){(S||L)&&D&&T&&f?.(D);const{inProgress:e,...t}=H,r={...t,toPosition:H.toHandle?H.toPosition:null};g?.(n,r),a&&v?.(n,r)}b(),cancelAnimationFrame(O),A=!1,T=!1,D=null,L=null,_.removeEventListener("mousemove",Y),_.removeEventListener("mouseup",G),_.removeEventListener("touchmove",Y),_.removeEventListener("touchend",G)}0===E&&F(),_.addEventListener("mousemove",Y),_.addEventListener("mouseup",G),_.addEventListener("touchmove",Y),_.addEventListener("touchend",G)},isValid:uc};const mc=n=>({x:n.x,y:n.y,zoom:n.k}),fc=({x:n,y:e,zoom:t})=>sl.translate(n,e).scale(t),gc=(n,e)=>n.target.closest(`.${e}`),hc=(n,e)=>2===e&&Array.isArray(n)&&n.includes(2),vc=n=>((n*=2)<=1?n*n*n:(n-=2)*n*n+2)/2,xc=(n,e=0,t=vc,r=()=>{})=>{const o="number"==typeof e&&e>0;return o||r(),o?n.transition().duration(e).ease(t).on("end",r):n},wc=n=>{const e=n.ctrlKey&&hd()?10:1;return-n.deltaY*(1===n.deltaMode?.05:n.deltaMode?1:.002)*e};function yc({domNode:n,minZoom:e,maxZoom:t,paneClickDistance:r,translateExtent:o,viewport:a,onPanZoom:i,onPanZoomStart:s,onPanZoomEnd:l,onDraggingChange:d}){const c={isZoomingOrPanning:!1,usedRightMouseButton:!1,prevViewport:{x:0,y:0,zoom:0},mouseButton:0,timerId:void 0,panScrollTimeout:void 0,isPanScrolling:!1},p=n.getBoundingClientRect(),u=hl().clickDistance(!cd(r)||r<0?0:r).scaleExtent([e,t]).translateExtent(o),b=Xa(n).call(u);v({x:a.x,y:a.y,zoom:Ul(a.zoom,e,t)},[[0,0],[p.width,p.height]],o);const m=b.on("wheel.zoom"),f=b.on("dblclick.zoom");function g(n,e){return b?new Promise(t=>{u?.interpolate("linear"===e?.interpolate?Ji:cs).transform(xc(b,e?.duration,e?.ease,()=>t(!0)),n)}):Promise.resolve(!1)}function h(){u.on("zoom",null)}async function v(n,e,t){const r=fc(n),o=u?.constrain()(r,e,t);return o&&await g(o),new Promise(n=>n(o))}return u.wheelDelta(wc),{update:function({noWheelClassName:n,noPanClassName:e,onPaneContextMenu:t,userSelectionActive:r,panOnScroll:o,panOnDrag:a,panOnScrollMode:p,panOnScrollSpeed:g,preventScrolling:v,zoomOnPinch:x,zoomOnScroll:w,zoomOnDoubleClick:y,zoomActivationKeyPressed:k,lib:E,onTransformChange:_}){r&&!c.isZoomingOrPanning&&h();const S=o&&!k&&!r?function({zoomPanValues:n,noWheelClassName:e,d3Selection:t,d3Zoom:r,panOnScrollMode:o,panOnScrollSpeed:a,zoomOnPinch:i,onPanZoomStart:s,onPanZoom:l,onPanZoomEnd:d}){return c=>{if(gc(c,e))return!1;c.preventDefault(),c.stopImmediatePropagation();const p=t.property("__zoom").k||1;if(c.ctrlKey&&i){const n=qa(c),e=wc(c),o=p*Math.pow(2,e);return void r.scaleTo(t,o,n,c)}const u=1===c.deltaMode?20:1;let b=o===Al.Vertical?0:c.deltaX*u,m=o===Al.Horizontal?0:c.deltaY*u;!hd()&&c.shiftKey&&o!==Al.Vertical&&(b=c.deltaY*u,m=0),r.translateBy(t,-b/p*a,-m/p*a,{internal:!0});const f=mc(t.property("__zoom"));clearTimeout(n.panScrollTimeout),n.isPanScrolling||(n.isPanScrolling=!0,s?.(c,f)),n.isPanScrolling&&(l?.(c,f),n.panScrollTimeout=setTimeout(()=>{d?.(c,f),n.isPanScrolling=!1},150))}}({zoomPanValues:c,noWheelClassName:n,d3Selection:b,d3Zoom:u,panOnScrollMode:p,panOnScrollSpeed:g,zoomOnPinch:x,onPanZoomStart:s,onPanZoom:i,onPanZoomEnd:l}):function({noWheelClassName:n,preventScrolling:e,d3ZoomHandler:t}){return function(r,o){const a="wheel"===r.type,i=!e&&a&&!r.ctrlKey,s=gc(r,n);if(r.ctrlKey&&a&&s&&r.preventDefault(),i||s)return null;r.preventDefault(),t.call(this,r,o)}}({noWheelClassName:n,preventScrolling:v,d3ZoomHandler:m});if(b.on("wheel.zoom",S,{passive:!1}),!r){const n=function({zoomPanValues:n,onDraggingChange:e,onPanZoomStart:t}){return r=>{if(r.sourceEvent?.internal)return;const o=mc(r.transform);n.mouseButton=r.sourceEvent?.button||0,n.isZoomingOrPanning=!0,n.prevViewport=o,"mousedown"===r.sourceEvent?.type&&e(!0),t&&t?.(r.sourceEvent,o)}}({zoomPanValues:c,onDraggingChange:d,onPanZoomStart:s});u.on("start",n);const e=function({zoomPanValues:n,panOnDrag:e,onPaneContextMenu:t,onTransformChange:r,onPanZoom:o}){return a=>{n.usedRightMouseButton=!(!t||!hc(e,n.mouseButton??0)),a.sourceEvent?.sync||r([a.transform.x,a.transform.y,a.transform.k]),o&&!a.sourceEvent?.internal&&o?.(a.sourceEvent,mc(a.transform))}}({zoomPanValues:c,panOnDrag:a,onPaneContextMenu:!!t,onPanZoom:i,onTransformChange:_});u.on("zoom",e);const r=function({zoomPanValues:n,panOnDrag:e,panOnScroll:t,onDraggingChange:r,onPanZoomEnd:o,onPaneContextMenu:a}){return i=>{var s,l;if(!i.sourceEvent?.internal&&(n.isZoomingOrPanning=!1,a&&hc(e,n.mouseButton??0)&&!n.usedRightMouseButton&&i.sourceEvent&&a(i.sourceEvent),n.usedRightMouseButton=!1,r(!1),o&&(s=n.prevViewport,l=i.transform,s.x!==l.x||s.y!==l.y||s.zoom!==l.k))){const e=mc(i.transform);n.prevViewport=e,clearTimeout(n.timerId),n.timerId=setTimeout(()=>{o?.(i.sourceEvent,e)},t?150:0)}}}({zoomPanValues:c,panOnDrag:a,panOnScroll:o,onPaneContextMenu:t,onPanZoomEnd:l,onDraggingChange:d});u.on("end",r)}const O=function({zoomActivationKeyPressed:n,zoomOnScroll:e,zoomOnPinch:t,panOnDrag:r,panOnScroll:o,zoomOnDoubleClick:a,userSelectionActive:i,noWheelClassName:s,noPanClassName:l,lib:d}){return c=>{const p=n||e,u=t&&c.ctrlKey;if(1===c.button&&"mousedown"===c.type&&(gc(c,`${d}-flow__node`)||gc(c,`${d}-flow__edge`)))return!0;if(!(r||p||o||a||t))return!1;if(i)return!1;if(gc(c,s)&&"wheel"===c.type)return!1;if(gc(c,l)&&("wheel"!==c.type||o&&"wheel"===c.type&&!n))return!1;if(!t&&c.ctrlKey&&"wheel"===c.type)return!1;if(!t&&"touchstart"===c.type&&c.touches?.length>1)return c.preventDefault(),!1;if(!p&&!o&&!u&&"wheel"===c.type)return!1;if(!r&&("mousedown"===c.type||"touchstart"===c.type))return!1;if(Array.isArray(r)&&!r.includes(c.button)&&"mousedown"===c.type)return!1;const b=Array.isArray(r)&&r.includes(c.button)||!c.button||c.button<=1;return(!c.ctrlKey||"wheel"===c.type)&&b}}({zoomActivationKeyPressed:k,panOnDrag:a,zoomOnScroll:w,panOnScroll:o,zoomOnDoubleClick:y,zoomOnPinch:x,userSelectionActive:r,noPanClassName:e,noWheelClassName:n,lib:E});u.filter(O),y?b.on("dblclick.zoom",f):b.on("dblclick.zoom",null)},destroy:h,setViewport:async function(n,e){const t=fc(n);return await g(t,e),new Promise(n=>n(t))},setViewportConstrained:v,getViewport:function(){const n=b?ll(b.node()):{x:0,y:0,k:1};return{x:n.x,y:n.y,zoom:n.k}},scaleTo:function(n,e){return b?new Promise(t=>{u?.interpolate("linear"===e?.interpolate?Ji:cs).scaleTo(xc(b,e?.duration,e?.ease,()=>t(!0)),n)}):Promise.resolve(!1)},scaleBy:function(n,e){return b?new Promise(t=>{u?.interpolate("linear"===e?.interpolate?Ji:cs).scaleBy(xc(b,e?.duration,e?.ease,()=>t(!0)),n)}):Promise.resolve(!1)},setScaleExtent:function(n){u?.scaleExtent(n)},setTranslateExtent:function(n){u?.translateExtent(n)},syncViewport:function(n){if(b){const e=fc(n),t=b.property("__zoom");t.k===n.zoom&&t.x===n.x&&t.y===n.y||u?.transform(b,e,null,{sync:!0})}},setClickDistance:function(n){const e=!cd(n)||n<0?0:n;u?.clickDistance(e)}}}var kc;function Ec(n,e){return Math.max(0,e-n)}function _c(n,e){return Math.max(0,n-e)}function Sc(n,e,t){return Math.max(0,e-n,n-t)}function Oc(n,e){return n?!e:e}!function(n){n.Line="line",n.Handle="handle"}(kc||(kc={}));const Cc={width:0,height:0,x:0,y:0},Nc={...Cc,pointerX:0,pointerY:0,aspectRatio:1};function jc(n,e,t){const r=e.position.x+n.position.x,o=e.position.y+n.position.y,a=n.measured.width??0,i=n.measured.height??0,s=t[0]*a,l=t[1]*i;return[[r-s,o-l],[r+a-s,o+i-l]]}function zc({domNode:n,nodeId:e,getStoreItems:t,onChange:r,onEnd:o}){const a=Xa(n);return{update:function({controlPosition:n,boundaries:i,keepAspectRatio:s,resizeDirection:l,onResizeStart:d,onResize:c,onResizeEnd:p,shouldResize:u}){let b={...Cc},m={...Nc};const f=function(n){return{isHorizontal:n.includes("right")||n.includes("left"),isVertical:n.includes("bottom")||n.includes("top"),affectsX:n.includes("left"),affectsY:n.includes("top")}}(n);let g,h,v,x,w=null,y=[];const k=ii().on("start",n=>{const{nodeLookup:r,transform:o,snapGrid:a,snapToGrid:i,nodeOrigin:s,paneDomNode:l}=t();if(g=r.get(e),!g)return;w=l?.getBoundingClientRect()??null;const{xSnapped:c,ySnapped:p}=_d(n.sourceEvent,{transform:o,snapGrid:a,snapToGrid:i,containerBounds:w});b={width:g.measured.width??0,height:g.measured.height??0,x:g.position.x??0,y:g.position.y??0},m={...b,pointerX:c,pointerY:p,aspectRatio:b.width/b.height},h=void 0,g.parentId&&("parent"===g.extent||g.expandParent)&&(h=r.get(g.parentId),v=h&&"parent"===g.extent?function(n){return[[0,0],[n.measured.width,n.measured.height]]}(h):void 0),y=[],x=void 0;for(const[n,t]of r)if(t.parentId===e&&(y.push({id:n,position:{...t.position},extent:t.extent}),"parent"===t.extent||t.expandParent)){const n=jc(t,g,t.origin??s);x=x?[[Math.min(n[0][0],x[0][0]),Math.min(n[0][1],x[0][1])],[Math.max(n[1][0],x[1][0]),Math.max(n[1][1],x[1][1])]]:n}d?.(n,{...b})}).on("drag",n=>{const{transform:e,snapGrid:o,snapToGrid:a,nodeOrigin:d}=t(),p=_d(n.sourceEvent,{transform:e,snapGrid:o,snapToGrid:a,containerBounds:w}),k=[];if(!g)return;const{x:E,y:_,width:S,height:O}=b,C={},N=g.origin??d,{width:j,height:z,x:M,y:P}=function(n,e,t,r,o,a,i,s){let{affectsX:l,affectsY:d}=e;const{isHorizontal:c,isVertical:p}=e,u=c&&p,{xSnapped:b,ySnapped:m}=t,{minWidth:f,maxWidth:g,minHeight:h,maxHeight:v}=r,{x:x,y:w,width:y,height:k,aspectRatio:E}=n;let _=Math.floor(c?b-n.pointerX:0),S=Math.floor(p?m-n.pointerY:0);const O=y+(l?-_:_),C=k+(d?-S:S),N=-a[0]*y,j=-a[1]*k;let z=Sc(O,f,g),M=Sc(C,h,v);if(i){let n=0,e=0;l&&_<0?n=Ec(x+_+N,i[0][0]):!l&&_>0&&(n=_c(x+O+N,i[1][0])),d&&S<0?e=Ec(w+S+j,i[0][1]):!d&&S>0&&(e=_c(w+C+j,i[1][1])),z=Math.max(z,n),M=Math.max(M,e)}if(s){let n=0,e=0;l&&_>0?n=_c(x+_,s[0][0]):!l&&_<0&&(n=Ec(x+O,s[1][0])),d&&S>0?e=_c(w+S,s[0][1]):!d&&S<0&&(e=Ec(w+C,s[1][1])),z=Math.max(z,n),M=Math.max(M,e)}if(o){if(c){const n=Sc(O/E,h,v)*E;if(z=Math.max(z,n),i){let n=0;n=!l&&!d||l&&!d&&u?_c(w+j+O/E,i[1][1])*E:Ec(w+j+(l?_:-_)/E,i[0][1])*E,z=Math.max(z,n)}if(s){let n=0;n=!l&&!d||l&&!d&&u?Ec(w+O/E,s[1][1])*E:_c(w+(l?_:-_)/E,s[0][1])*E,z=Math.max(z,n)}}if(p){const n=Sc(C*E,f,g)/E;if(M=Math.max(M,n),i){let n=0;n=!l&&!d||d&&!l&&u?_c(x+C*E+N,i[1][0])/E:Ec(x+(d?S:-S)*E+N,i[0][0])/E,M=Math.max(M,n)}if(s){let n=0;n=!l&&!d||d&&!l&&u?Ec(x+C*E,s[1][0])/E:_c(x+(d?S:-S)*E,s[0][0])/E,M=Math.max(M,n)}}}S+=S<0?M:-M,_+=_<0?z:-z,o&&(u?O>C*E?S=(Oc(l,d)?-_:_)/E:_=(Oc(l,d)?-S:S)*E:c?(S=_/E,d=l):(_=S*E,l=d));const P=l?x+_:x,R=d?w+S:w;return{width:y+(l?-_:_),height:k+(d?-S:S),x:a[0]*_*(l?-1:1)+P,y:a[1]*S*(d?-1:1)+R}}(m,f,p,i,s,N,v,x),R=j!==S,I=z!==O,A=M!==E&&R,D=P!==_&&I;if(!(A||D||R||I))return;if((A||D||1===N[0]||1===N[1])&&(C.x=A?M:b.x,C.y=D?P:b.y,b.x=C.x,b.y=C.y,y.length>0)){const n=M-E,e=P-_;for(const t of y)t.position={x:t.position.x-n+N[0]*(j-S),y:t.position.y-e+N[1]*(z-O)},k.push(t)}if((R||I)&&(C.width=!R||l&&"horizontal"!==l?b.width:j,C.height=!I||l&&"vertical"!==l?b.height:z,b.width=C.width,b.height=C.height),h&&g.expandParent){const n=N[0]*(C.width??0);C.x&&C.x<n&&(b.x=n,m.x=m.x-(C.x-n));const e=N[1]*(C.height??0);C.y&&C.y<e&&(b.y=e,m.y=m.y-(C.y-e))}const T=function({width:n,prevWidth:e,height:t,prevHeight:r,affectsX:o,affectsY:a}){const i=n-e,s=t-r,l=[i>0?1:i<0?-1:0,s>0?1:s<0?-1:0];return i&&o&&(l[0]=-1*l[0]),s&&a&&(l[1]=-1*l[1]),l}({width:b.width,prevWidth:S,height:b.height,prevHeight:O,affectsX:f.affectsX,affectsY:f.affectsY}),L={...b,direction:T},B=u?.(n,L);!1!==B&&(c?.(n,L),r(C,k))}).on("end",n=>{p?.(n,{...b}),o?.({...b})});a.call(k)},destroy:function(){a.on(".drag",null)}}}var Mc,Pc={exports:{}},Rc={},Ic={exports:{}},Ac={};var Dc,Tc,Lc,Bc={};
20
20
  /**
21
21
  * @license React
22
22
  * use-sync-external-store-shim.development.js
@@ -25,7 +25,7 @@ object-assign
25
25
  *
26
26
  * This source code is licensed under the MIT license found in the
27
27
  * LICENSE file in the root directory of this source tree.
28
- */function yc(){return vc||(vc=1,"production"===process.env.NODE_ENV?fc.exports=function(){if(uc)return gc;uc=1;var n=e,t="function"==typeof Object.is?Object.is:function(n,e){return n===e&&(0!==n||1/n==1/e)||n!=n&&e!=e},r=n.useState,o=n.useEffect,a=n.useLayoutEffect,i=n.useDebugValue;function s(n){var e=n.getSnapshot;n=n.value;try{var r=e();return!t(n,r)}catch(n){return!0}}var l="undefined"==typeof window||void 0===window.document||void 0===window.document.createElement?function(n,e){return e()}:function(n,e){var t=e(),l=r({inst:{value:t,getSnapshot:e}}),d=l[0].inst,c=l[1];return a(function(){d.value=t,d.getSnapshot=e,s(d)&&c({inst:d})},[n,t,e]),o(function(){return s(d)&&c({inst:d}),n(function(){s(d)&&c({inst:d})})},[n]),i(t),t};return gc.useSyncExternalStore=void 0!==n.useSyncExternalStore?n.useSyncExternalStore:l,gc}():fc.exports=(hc||(hc=1,"production"!==process.env.NODE_ENV&&function(){function n(n){var e=n.getSnapshot;n=n.value;try{var t=e();return!r(n,t)}catch(n){return!0}}"undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var t=e,r="function"==typeof Object.is?Object.is:function(n,e){return n===e&&(0!==n||1/n==1/e)||n!=n&&e!=e},o=t.useState,a=t.useEffect,i=t.useLayoutEffect,s=t.useDebugValue,l=!1,d=!1,c="undefined"==typeof window||void 0===window.document||void 0===window.document.createElement?function(n,e){return e()}:function(e,c){l||void 0===t.startTransition||(l=!0,console.error("You are using an outdated, pre-release alpha of React 18 that does not support useSyncExternalStore. The use-sync-external-store shim will not work correctly. Upgrade to a newer pre-release."));var p=c();if(!d){var u=c();r(p,u)||(console.error("The result of getSnapshot should be cached to avoid an infinite loop"),d=!0)}var b=(u=o({inst:{value:p,getSnapshot:c}}))[0].inst,m=u[1];return i(function(){b.value=p,b.getSnapshot=c,n(b)&&m({inst:b})},[e,p,c]),a(function(){return n(b)&&m({inst:b}),e(function(){n(b)&&m({inst:b})})},[e]),s(p),p};wc.useSyncExternalStore=void 0!==t.useSyncExternalStore?t.useSyncExternalStore:c,"undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())}()),wc)),fc.exports}
28
+ */function Vc(){return Tc||(Tc=1,"production"===process.env.NODE_ENV?Ic.exports=function(){if(Mc)return Ac;Mc=1;var n=e,t="function"==typeof Object.is?Object.is:function(n,e){return n===e&&(0!==n||1/n==1/e)||n!=n&&e!=e},r=n.useState,o=n.useEffect,a=n.useLayoutEffect,i=n.useDebugValue;function s(n){var e=n.getSnapshot;n=n.value;try{var r=e();return!t(n,r)}catch(n){return!0}}var l="undefined"==typeof window||void 0===window.document||void 0===window.document.createElement?function(n,e){return e()}:function(n,e){var t=e(),l=r({inst:{value:t,getSnapshot:e}}),d=l[0].inst,c=l[1];return a(function(){d.value=t,d.getSnapshot=e,s(d)&&c({inst:d})},[n,t,e]),o(function(){return s(d)&&c({inst:d}),n(function(){s(d)&&c({inst:d})})},[n]),i(t),t};return Ac.useSyncExternalStore=void 0!==n.useSyncExternalStore?n.useSyncExternalStore:l,Ac}():Ic.exports=(Dc||(Dc=1,"production"!==process.env.NODE_ENV&&function(){function n(n){var e=n.getSnapshot;n=n.value;try{var t=e();return!r(n,t)}catch(n){return!0}}"undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var t=e,r="function"==typeof Object.is?Object.is:function(n,e){return n===e&&(0!==n||1/n==1/e)||n!=n&&e!=e},o=t.useState,a=t.useEffect,i=t.useLayoutEffect,s=t.useDebugValue,l=!1,d=!1,c="undefined"==typeof window||void 0===window.document||void 0===window.document.createElement?function(n,e){return e()}:function(e,c){l||void 0===t.startTransition||(l=!0,console.error("You are using an outdated, pre-release alpha of React 18 that does not support useSyncExternalStore. The use-sync-external-store shim will not work correctly. Upgrade to a newer pre-release."));var p=c();if(!d){var u=c();r(p,u)||(console.error("The result of getSnapshot should be cached to avoid an infinite loop"),d=!0)}var b=(u=o({inst:{value:p,getSnapshot:c}}))[0].inst,m=u[1];return i(function(){b.value=p,b.getSnapshot=c,n(b)&&m({inst:b})},[e,p,c]),a(function(){return n(b)&&m({inst:b}),e(function(){n(b)&&m({inst:b})})},[e]),s(p),p};Bc.useSyncExternalStore=void 0!==t.useSyncExternalStore?t.useSyncExternalStore:c,"undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())}()),Bc)),Ic.exports}
29
29
  /**
30
30
  * @license React
31
31
  * use-sync-external-store-shim/with-selector.production.js
@@ -34,7 +34,7 @@ object-assign
34
34
  *
35
35
  * This source code is licensed under the MIT license found in the
36
36
  * LICENSE file in the root directory of this source tree.
37
- */var kc,_c,Ec={};
37
+ */var $c,Hc,Fc={};
38
38
  /**
39
39
  * @license React
40
40
  * use-sync-external-store-shim/with-selector.development.js
@@ -43,5 +43,5 @@ object-assign
43
43
  *
44
44
  * This source code is licensed under the MIT license found in the
45
45
  * LICENSE file in the root directory of this source tree.
46
- */var Sc=(_c||(_c=1,"production"===process.env.NODE_ENV?bc.exports=function(){if(xc)return mc;xc=1;var n=e,t=yc(),r="function"==typeof Object.is?Object.is:function(n,e){return n===e&&(0!==n||1/n==1/e)||n!=n&&e!=e},o=t.useSyncExternalStore,a=n.useRef,i=n.useEffect,s=n.useMemo,l=n.useDebugValue;return mc.useSyncExternalStoreWithSelector=function(n,e,t,d,c){var p=a(null);if(null===p.current){var u={hasValue:!1,value:null};p.current=u}else u=p.current;p=s(function(){function n(n){if(!i){if(i=!0,o=n,n=d(n),void 0!==c&&u.hasValue){var e=u.value;if(c(e,n))return a=e}return a=n}if(e=a,r(o,n))return e;var t=d(n);return void 0!==c&&c(e,t)?(o=n,e):(o=n,a=t)}var o,a,i=!1,s=void 0===t?null:t;return[function(){return n(e())},null===s?void 0:function(){return n(s())}]},[e,t,d,c]);var b=o(n,p[0],p[1]);return i(function(){u.hasValue=!0,u.value=b},[b]),l(b),b},mc}():bc.exports=(kc||(kc=1,"production"!==process.env.NODE_ENV&&function(){"undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var n=e,t=yc(),r="function"==typeof Object.is?Object.is:function(n,e){return n===e&&(0!==n||1/n==1/e)||n!=n&&e!=e},o=t.useSyncExternalStore,a=n.useRef,i=n.useEffect,s=n.useMemo,l=n.useDebugValue;Ec.useSyncExternalStoreWithSelector=function(n,e,t,d,c){var p=a(null);if(null===p.current){var u={hasValue:!1,value:null};p.current=u}else u=p.current;p=s(function(){function n(n){if(!i){if(i=!0,o=n,n=d(n),void 0!==c&&u.hasValue){var e=u.value;if(c(e,n))return a=e}return a=n}if(e=a,r(o,n))return e;var t=d(n);return void 0!==c&&c(e,t)?(o=n,e):(o=n,a=t)}var o,a,i=!1,s=void 0===t?null:t;return[function(){return n(e())},null===s?void 0:function(){return n(s())}]},[e,t,d,c]);var b=o(n,p[0],p[1]);return i(function(){u.hasValue=!0,u.value=b},[b]),l(b),b},"undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())}()),Ec)),bc.exports),Oc=a(Sc);const Cc=n=>{let e;const t=new Set,r=(n,r)=>{const o="function"==typeof n?n(e):n;if(!Object.is(o,e)){const n=e;e=(null!=r?r:"object"!=typeof o||null===o)?o:Object.assign({},e,o),t.forEach(t=>t(e,n))}},o=()=>e,a={setState:r,getState:o,getInitialState:()=>i,subscribe:n=>(t.add(n),()=>t.delete(n)),destroy:()=>{console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected."),t.clear()}},i=e=n(r,o,a);return a},{useDebugValue:Nc}=e,{useSyncExternalStoreWithSelector:jc}=Oc,zc=n=>n;function Mc(n,e=zc,t){const r=jc(n.subscribe,n.getState,n.getServerState||n.getInitialState,e,t);return Nc(r),r}const Pc=(n,e)=>{const t=(n=>n?Cc(n):Cc)(n),r=(n,r=e)=>Mc(t,n,r);return Object.assign(r,t),r};function Rc(n,e){if(Object.is(n,e))return!0;if("object"!=typeof n||null===n||"object"!=typeof e||null===e)return!1;if(n instanceof Map&&e instanceof Map){if(n.size!==e.size)return!1;for(const[t,r]of n)if(!Object.is(r,e.get(t)))return!1;return!0}if(n instanceof Set&&e instanceof Set){if(n.size!==e.size)return!1;for(const t of n)if(!e.has(t))return!1;return!0}const t=Object.keys(n);if(t.length!==Object.keys(e).length)return!1;for(const r of t)if(!Object.prototype.hasOwnProperty.call(e,r)||!Object.is(n[r],e[r]))return!1;return!0}const Ac=e.createContext(null),Ic=Ac.Provider,Dc=Js();function Lc(n,t){const r=e.useContext(Ac);if(null===r)throw new Error(Dc);return Mc(r,n,t)}function Tc(){const n=e.useContext(Ac);if(null===n)throw new Error(Dc);return e.useMemo(()=>({getState:n.getState,setState:n.setState,subscribe:n.subscribe}),[n])}const Bc={display:"none"},Vc={position:"absolute",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)",clipPath:"inset(100%)"},$c="react-flow__node-desc",Hc="react-flow__edge-desc",Fc=n=>n.ariaLiveMessage,Yc=n=>n.ariaLabelConfig;function Gc({rfId:e}){const t=Lc(Fc);return n.jsx("div",{id:`react-flow__aria-live-${e}`,"aria-live":"assertive","aria-atomic":"true",style:Vc,children:t})}function Xc({rfId:e,disableKeyboardA11y:t}){const r=Lc(Yc);return n.jsxs(n.Fragment,{children:[n.jsx("div",{id:`${$c}-${e}`,style:Bc,children:t?r["node.a11yDescription.default"]:r["node.a11yDescription.keyboardDisabled"]}),n.jsx("div",{id:`${Hc}-${e}`,style:Bc,children:r["edge.a11yDescription.default"]}),!t&&n.jsx(Gc,{rfId:e})]})}const Wc=e.forwardRef(({position:e="top-left",children:t,className:r,style:o,...a},i)=>{const s=`${e}`.split("-");return n.jsx("div",{className:lo(["react-flow__panel",r,...s]),style:o,ref:i,...a,children:t})});function Zc({proOptions:e,position:t="bottom-right"}){return e?.hideAttribution?null:n.jsx(Wc,{position:t,className:"react-flow__attribution","data-message":"Please only hide this attribution when you are subscribed to React Flow Pro: https://pro.reactflow.dev",children:n.jsx("a",{href:"https://reactflow.dev",target:"_blank",rel:"noopener noreferrer","aria-label":"React Flow attribution",children:"React Flow"})})}Wc.displayName="Panel";const Kc=n=>{const e=[],t=[];for(const[,t]of n.nodeLookup)t.selected&&e.push(t.internals.userNode);for(const[,e]of n.edgeLookup)e.selected&&t.push(e);return{selectedNodes:e,selectedEdges:t}},qc=n=>n.id;function Uc(n,e){return Rc(n.selectedNodes.map(qc),e.selectedNodes.map(qc))&&Rc(n.selectedEdges.map(qc),e.selectedEdges.map(qc))}function Qc({onSelectionChange:n}){const t=Tc(),{selectedNodes:r,selectedEdges:o}=Lc(Kc,Uc);return e.useEffect(()=>{const e={nodes:r,edges:o};n?.(e),t.getState().onSelectionChangeHandlers.forEach(n=>n(e))},[r,o,n]),null}const Jc=n=>!!n.onSelectionChangeHandlers;function np({onSelectionChange:e}){const t=Lc(Jc);return e||t?n.jsx(Qc,{onSelectionChange:e}):null}const ep=[0,0],tp={x:0,y:0,zoom:1},rp=["nodes","edges","defaultNodes","defaultEdges","onConnect","onConnectStart","onConnectEnd","onClickConnectStart","onClickConnectEnd","nodesDraggable","autoPanOnNodeFocus","nodesConnectable","nodesFocusable","edgesFocusable","edgesReconnectable","elevateNodesOnSelect","elevateEdgesOnSelect","minZoom","maxZoom","nodeExtent","onNodesChange","onEdgesChange","elementsSelectable","connectionMode","snapGrid","snapToGrid","translateExtent","connectOnClick","defaultEdgeOptions","fitView","fitViewOptions","onNodesDelete","onEdgesDelete","onDelete","onNodeDrag","onNodeDragStart","onNodeDragStop","onSelectionDrag","onSelectionDragStart","onSelectionDragStop","onMoveStart","onMove","onMoveEnd","noPanClassName","nodeOrigin","autoPanOnConnect","autoPanOnNodeDrag","onError","connectionRadius","isValidConnection","selectNodesOnDrag","nodeDragThreshold","connectionDragThreshold","onBeforeDelete","debug","autoPanSpeed","paneClickDistance","ariaLabelConfig","rfId"],op=n=>({setNodes:n.setNodes,setEdges:n.setEdges,setMinZoom:n.setMinZoom,setMaxZoom:n.setMaxZoom,setTranslateExtent:n.setTranslateExtent,setNodeExtent:n.setNodeExtent,reset:n.reset,setDefaultNodesAndEdges:n.setDefaultNodesAndEdges,setPaneClickDistance:n.setPaneClickDistance}),ap={translateExtent:ul,nodeOrigin:ep,minZoom:.5,maxZoom:2,elementsSelectable:!0,noPanClassName:"nopan",rfId:"1",paneClickDistance:0};function ip(n){const{setNodes:t,setEdges:r,setMinZoom:o,setMaxZoom:a,setTranslateExtent:i,setNodeExtent:s,reset:l,setDefaultNodesAndEdges:d,setPaneClickDistance:c}=Lc(op,Rc),p=Tc();e.useEffect(()=>(d(n.defaultNodes,n.defaultEdges),()=>{u.current=ap,l()}),[]);const u=e.useRef(ap);return e.useEffect(()=>{for(const e of rp){const l=n[e];l!==u.current[e]&&(void 0!==n[e]&&("nodes"===e?t(l):"edges"===e?r(l):"minZoom"===e?o(l):"maxZoom"===e?a(l):"translateExtent"===e?i(l):"nodeExtent"===e?s(l):"paneClickDistance"===e?c(l):"ariaLabelConfig"===e?p.setState({ariaLabelConfig:od(l)}):"fitView"===e?p.setState({fitViewQueued:l}):"fitViewOptions"===e?p.setState({fitViewOptions:l}):p.setState({[e]:l})))}u.current=n},rp.map(e=>n[e])),null}function sp(){return"undefined"!=typeof window&&window.matchMedia?window.matchMedia("(prefers-color-scheme: dark)"):null}const lp="undefined"!=typeof document?document:null;function dp(n=null,t={target:lp,actInsideInputWithModifier:!0}){const[r,o]=e.useState(!1),a=e.useRef(!1),i=e.useRef(new Set([])),[s,l]=e.useMemo(()=>{if(null!==n){const e=(Array.isArray(n)?n:[n]).filter(n=>"string"==typeof n).map(n=>n.replace("+","\n").replace("\n\n","\n+").split("\n")),t=e.reduce((n,e)=>n.concat(...e),[]);return[e,t]}return[[],[]]},[n]);return e.useEffect(()=>{const e=t?.target??lp,r=t?.actInsideInputWithModifier??!0;if(null!==n){const n=n=>{a.current=n.ctrlKey||n.metaKey||n.shiftKey||n.altKey;if((!a.current||a.current&&!r)&&dd(n))return!1;const e=pp(n.code,l);if(i.current.add(n[e]),cp(s,i.current,!1)){const e=n.composedPath?.()?.[0]||n.target,r="BUTTON"===e?.nodeName||"A"===e?.nodeName;!1===t.preventDefault||!a.current&&r||n.preventDefault(),o(!0)}},d=n=>{const e=pp(n.code,l);cp(s,i.current,!0)?(o(!1),i.current.clear()):i.current.delete(n[e]),"Meta"===n.key&&i.current.clear(),a.current=!1},c=()=>{i.current.clear(),o(!1)};return e?.addEventListener("keydown",n),e?.addEventListener("keyup",d),window.addEventListener("blur",c),window.addEventListener("contextmenu",c),()=>{e?.removeEventListener("keydown",n),e?.removeEventListener("keyup",d),window.removeEventListener("blur",c),window.removeEventListener("contextmenu",c)}}},[n,o]),r}function cp(n,e,t){return n.filter(n=>t||n.length===e.size).some(n=>n.every(n=>e.has(n)))}function pp(n,e){return e.includes(n)?"code":"key"}function up(n,e){const t=[],r=new Map,o=[];for(const e of n)if("add"!==e.type)if("remove"===e.type||"replace"===e.type)r.set(e.id,[e]);else{const n=r.get(e.id);n?n.push(e):r.set(e.id,[e])}else o.push(e);for(const n of e){const e=r.get(n.id);if(!e){t.push(n);continue}if("remove"===e[0].type)continue;if("replace"===e[0].type){t.push({...e[0].item});continue}const o={...n};for(const n of e)bp(n,o);t.push(o)}return o.length&&o.forEach(n=>{void 0!==n.index?t.splice(n.index,0,{...n.item}):t.push({...n.item})}),t}function bp(n,e){switch(n.type){case"select":e.selected=n.selected;break;case"position":void 0!==n.position&&(e.position=n.position),void 0!==n.dragging&&(e.dragging=n.dragging);break;case"dimensions":void 0!==n.dimensions&&(e.measured??={},e.measured.width=n.dimensions.width,e.measured.height=n.dimensions.height,n.setAttributes&&(!0!==n.setAttributes&&"width"!==n.setAttributes||(e.width=n.dimensions.width),!0!==n.setAttributes&&"height"!==n.setAttributes||(e.height=n.dimensions.height))),"boolean"==typeof n.resizing&&(e.resizing=n.resizing)}}function mp(n,e){return up(n,e)}function fp(n,e){return up(n,e)}function gp(n,e){return{id:n,type:"select",selected:e}}function hp(n,e=new Set,t=!1){const r=[];for(const[o,a]of n){const n=e.has(o);void 0===a.selected&&!n||a.selected===n||(t&&(a.selected=n),r.push(gp(a.id,n)))}return r}function vp({items:n=[],lookup:e}){const t=[],r=new Map(n.map(n=>[n.id,n]));for(const[r,o]of n.entries()){const n=e.get(o.id),a=n?.internals?.userNode??n;void 0!==a&&a!==o&&t.push({id:o.id,item:o,type:"replace"}),void 0===a&&t.push({item:o,type:"add",index:r})}for(const[n]of e){void 0===r.get(n)&&t.push({id:n,type:"remove"})}return t}function xp(n){return{id:n.id,type:"remove"}}const wp=n=>(n=>"id"in n&&"position"in n&&!("source"in n)&&!("target"in n))(n);function yp(n){return e.forwardRef(n)}const kp="undefined"!=typeof window?e.useLayoutEffect:e.useEffect;function _p(n){const[t,r]=e.useState(BigInt(0)),[o]=e.useState(()=>function(n){let e=[];return{get:()=>e,reset:()=>{e=[]},push:t=>{e.push(t),n()}}}(()=>r(n=>n+BigInt(1))));return kp(()=>{const e=o.get();e.length&&(n(e),o.reset())},[t]),o}const Ep=e.createContext(null);function Sp({children:t}){const r=Tc(),o=_p(e.useCallback(n=>{const{nodes:e=[],setNodes:t,hasDefaultNodes:o,onNodesChange:a,nodeLookup:i,fitViewQueued:s}=r.getState();let l=e;for(const e of n)l="function"==typeof e?e(l):e;const d=vp({items:l,lookup:i});o&&t(l),d.length>0?a?.(d):s&&window.requestAnimationFrame(()=>{const{fitViewQueued:n,nodes:e,setNodes:t}=r.getState();n&&t(e)})},[])),a=_p(e.useCallback(n=>{const{edges:e=[],setEdges:t,hasDefaultEdges:o,onEdgesChange:a,edgeLookup:i}=r.getState();let s=e;for(const e of n)s="function"==typeof e?e(s):e;o?t(s):a&&a(vp({items:s,lookup:i}))},[])),i=e.useMemo(()=>({nodeQueue:o,edgeQueue:a}),[]);return n.jsx(Ep.Provider,{value:i,children:t})}const Op=n=>!!n.panZoom;function Cp(){const n=(()=>{const n=Tc();return e.useMemo(()=>({zoomIn:e=>{const{panZoom:t}=n.getState();return t?t.scaleBy(1.2,{duration:e?.duration}):Promise.resolve(!1)},zoomOut:e=>{const{panZoom:t}=n.getState();return t?t.scaleBy(1/1.2,{duration:e?.duration}):Promise.resolve(!1)},zoomTo:(e,t)=>{const{panZoom:r}=n.getState();return r?r.scaleTo(e,{duration:t?.duration}):Promise.resolve(!1)},getZoom:()=>n.getState().transform[2],setViewport:async(e,t)=>{const{transform:[r,o,a],panZoom:i}=n.getState();return i?(await i.setViewport({x:e.x??r,y:e.y??o,zoom:e.zoom??a},t),Promise.resolve(!0)):Promise.resolve(!1)},getViewport:()=>{const[e,t,r]=n.getState().transform;return{x:e,y:t,zoom:r}},setCenter:async(e,t,r)=>n.getState().setCenter(e,t,r),fitBounds:async(e,t)=>{const{width:r,height:o,minZoom:a,maxZoom:i,panZoom:s}=n.getState(),l=Ul(e,r,o,a,i,t?.padding??.1);return s?(await s.setViewport(l,{duration:t?.duration,ease:t?.ease,interpolate:t?.interpolate}),Promise.resolve(!0)):Promise.resolve(!1)},screenToFlowPosition:(e,t={})=>{const{transform:r,snapGrid:o,snapToGrid:a,domNode:i}=n.getState();if(!i)return e;const{x:s,y:l}=i.getBoundingClientRect(),d={x:e.x-s,y:e.y-l},c=t.snapGrid??o,p=t.snapToGrid??a;return Zl(d,r,p,c)},flowToScreenPosition:e=>{const{transform:t,domNode:r}=n.getState();if(!r)return e;const{x:o,y:a}=r.getBoundingClientRect(),i=Kl(e,t);return{x:i.x+o,y:i.y+a}}}),[])})(),t=Tc(),r=function(){const n=e.useContext(Ep);if(!n)throw new Error("useBatchContext must be used within a BatchProvider");return n}(),o=Lc(Op),a=e.useMemo(()=>{const n=n=>t.getState().nodeLookup.get(n),e=n=>{r.nodeQueue.push(n)},o=n=>{r.edgeQueue.push(n)},a=n=>{const{nodeLookup:e,nodeOrigin:r}=t.getState(),o=wp(n)?n:e.get(n.id),a=o.parentId?td(o.position,o.measured,o.parentId,e,r):o.position,i={...o,position:a,width:o.measured?.width??o.width,height:o.measured?.height??o.height};return Vl(i)},i=(n,t,r={replace:!1})=>{e(e=>e.map(e=>{if(e.id===n){const n="function"==typeof t?t(e):t;return r.replace&&wp(n)?n:{...e,...n}}return e}))},s=(n,e,t={replace:!1})=>{o(r=>r.map(r=>{if(r.id===n){const n="function"==typeof e?e(r):e;return t.replace&&El(n)?n:{...r,...n}}return r}))};return{getNodes:()=>t.getState().nodes.map(n=>({...n})),getNode:e=>n(e)?.internals.userNode,getInternalNode:n,getEdges:()=>{const{edges:n=[]}=t.getState();return n.map(n=>({...n}))},getEdge:n=>t.getState().edgeLookup.get(n),setNodes:e,setEdges:o,addNodes:n=>{const e=Array.isArray(n)?n:[n];r.nodeQueue.push(n=>[...n,...e])},addEdges:n=>{const e=Array.isArray(n)?n:[n];r.edgeQueue.push(n=>[...n,...e])},toObject:()=>{const{nodes:n=[],edges:e=[],transform:r}=t.getState(),[o,a,i]=r;return{nodes:n.map(n=>({...n})),edges:e.map(n=>({...n})),viewport:{x:o,y:a,zoom:i}}},deleteElements:async({nodes:n=[],edges:e=[]})=>{const{nodes:r,edges:o,onNodesDelete:a,onEdgesDelete:i,triggerNodeChanges:s,triggerEdgeChanges:l,onDelete:d,onBeforeDelete:c}=t.getState(),{nodes:p,edges:u}=await Ml({nodesToRemove:n,edgesToRemove:e,nodes:r,edges:o,onBeforeDelete:c}),b=u.length>0,m=p.length>0;if(b){const n=u.map(xp);i?.(u),l(n)}if(m){const n=p.map(xp);a?.(p),s(n)}return(m||b)&&d?.({nodes:p,edges:u}),{deletedNodes:p,deletedEdges:u}},getIntersectingNodes:(n,e=!0,r)=>{const o=Yl(n),i=o?n:a(n),s=void 0!==r;return i?(r||t.getState().nodes).filter(r=>{const a=t.getState().nodeLookup.get(r.id);if(a&&!o&&(r.id===n.id||!a.internals.positionAbsolute))return!1;const l=Vl(s?r:a),d=Fl(l,i);return e&&d>0||d>=l.width*l.height||d>=i.width*i.height}):[]},isNodeIntersecting:(n,e,t=!0)=>{const r=Yl(n)?n:a(n);if(!r)return!1;const o=Fl(r,e);return t&&o>0||o>=r.width*r.height},updateNode:i,updateNodeData:(n,e,t={replace:!1})=>{i(n,n=>{const r="function"==typeof e?e(n):e;return t.replace?{...n,data:r}:{...n,data:{...n.data,...r}}},t)},updateEdge:s,updateEdgeData:(n,e,t={replace:!1})=>{s(n,n=>{const r="function"==typeof e?e(n):e;return t.replace?{...n,data:r}:{...n,data:{...n.data,...r}}},t)},getNodesBounds:n=>{const{nodeLookup:e,nodeOrigin:r}=t.getState();return((n,e={nodeOrigin:[0,0]})=>{if("development"!==process.env.NODE_ENV||e.nodeLookup||console.warn("Please use `getNodesBounds` from `useReactFlow`/`useSvelteFlow` hook to ensure correct values for sub flows. If not possible, you have to provide a nodeLookup to support sub flows."),0===n.length)return{x:0,y:0,width:0,height:0};const t=n.reduce((n,t)=>{const r="string"==typeof t;let o=e.nodeLookup||r?void 0:t;e.nodeLookup&&(o=r?e.nodeLookup.get(t):Sl(t)?t:e.nodeLookup.get(t.id));const a=o?$l(o,e.nodeOrigin):{x:0,y:0,x2:0,y2:0};return Ll(n,a)},{x:1/0,y:1/0,x2:-1/0,y2:-1/0});return Bl(t)})(n,{nodeLookup:e,nodeOrigin:r})},getHandleConnections:({type:n,id:e,nodeId:r})=>Array.from(t.getState().connectionLookup.get(`${r}-${n}${e?`-${e}`:""}`)?.values()??[]),getNodeConnections:({type:n,handleId:e,nodeId:r})=>Array.from(t.getState().connectionLookup.get(`${r}${n?e?`-${n}-${e}`:`-${n}`:""}`)?.values()??[]),fitView:async n=>{const e=t.getState().fitViewResolver??function(){let n,e;return{promise:new Promise((t,r)=>{n=t,e=r}),resolve:n,reject:e}}();return t.setState({fitViewQueued:!0,fitViewOptions:n,fitViewResolver:e}),r.nodeQueue.push(n=>[...n]),e.promise}}},[]);return e.useMemo(()=>({...a,...n,viewportInitialized:o}),[o])}const Np=n=>n.selected,jp="undefined"!=typeof window?window:void 0;const zp={position:"absolute",width:"100%",height:"100%",top:0,left:0},Mp=n=>({userSelectionActive:n.userSelectionActive,lib:n.lib});function Pp({onPaneContextMenu:t,zoomOnScroll:r=!0,zoomOnPinch:o=!0,panOnScroll:a=!1,panOnScrollSpeed:i=.5,panOnScrollMode:s=gl.Free,zoomOnDoubleClick:l=!0,panOnDrag:d=!0,defaultViewport:c,translateExtent:p,minZoom:u,maxZoom:b,zoomActivationKeyCode:m,preventScrolling:f=!0,children:g,noWheelClassName:h,noPanClassName:v,onViewportChange:x,isControlledViewport:w,paneClickDistance:y}){const k=Tc(),_=e.useRef(null),{userSelectionActive:E,lib:S}=Lc(Mp,Rc),O=dp(m),C=e.useRef();!function(n){const t=Tc();e.useEffect(()=>{const e=()=>{if(!n.current)return!1;const e=id(n.current);0!==e.height&&0!==e.width||t.getState().onError?.("004",tl()),t.setState({width:e.width||500,height:e.height||500})};if(n.current){e(),window.addEventListener("resize",e);const t=new ResizeObserver(()=>e());return t.observe(n.current),()=>{window.removeEventListener("resize",e),t&&n.current&&t.unobserve(n.current)}}},[])}(_);const N=e.useCallback(n=>{x?.({x:n[0],y:n[1],zoom:n[2]}),w||k.setState({transform:n})},[x,w]);return e.useEffect(()=>{if(_.current){C.current=tc({domNode:_.current,minZoom:u,maxZoom:b,translateExtent:p,viewport:c,paneClickDistance:y,onDraggingChange:n=>k.setState({paneDragging:n}),onPanZoomStart:(n,e)=>{const{onViewportChangeStart:t,onMoveStart:r}=k.getState();r?.(n,e),t?.(e)},onPanZoom:(n,e)=>{const{onViewportChange:t,onMove:r}=k.getState();r?.(n,e),t?.(e)},onPanZoomEnd:(n,e)=>{const{onViewportChangeEnd:t,onMoveEnd:r}=k.getState();r?.(n,e),t?.(e)}});const{x:n,y:e,zoom:t}=C.current.getViewport();return k.setState({panZoom:C.current,transform:[n,e,t],domNode:_.current.closest(".react-flow")}),()=>{C.current?.destroy()}}},[]),e.useEffect(()=>{C.current?.update({onPaneContextMenu:t,zoomOnScroll:r,zoomOnPinch:o,panOnScroll:a,panOnScrollSpeed:i,panOnScrollMode:s,zoomOnDoubleClick:l,panOnDrag:d,zoomActivationKeyPressed:O,preventScrolling:f,noPanClassName:v,userSelectionActive:E,noWheelClassName:h,lib:S,onTransformChange:N})},[t,r,o,a,i,s,l,d,O,f,v,E,h,S,N]),n.jsx("div",{className:"react-flow__renderer",ref:_,style:zp,children:g})}const Rp=n=>({userSelectionActive:n.userSelectionActive,userSelectionRect:n.userSelectionRect});function Ap(){const{userSelectionActive:e,userSelectionRect:t}=Lc(Rp,Rc);return e&&t?n.jsx("div",{className:"react-flow__selection react-flow__container",style:{width:t.width,height:t.height,transform:`translate(${t.x}px, ${t.y}px)`}}):null}const Ip=(n,e)=>t=>{t.target===e.current&&n?.(t)},Dp=n=>({userSelectionActive:n.userSelectionActive,elementsSelectable:n.elementsSelectable,connectionInProgress:n.connection.inProgress,dragging:n.paneDragging});function Lp({isSelecting:t,selectionKeyPressed:r,selectionMode:o=hl.Full,panOnDrag:a,selectionOnDrag:i,onSelectionStart:s,onSelectionEnd:l,onPaneClick:d,onPaneContextMenu:c,onPaneScroll:p,onPaneMouseEnter:u,onPaneMouseMove:b,onPaneMouseLeave:m,children:f}){const g=Tc(),{userSelectionActive:h,elementsSelectable:v,dragging:x,connectionInProgress:w}=Lc(Dp,Rc),y=v&&(t||h),k=e.useRef(null),_=e.useRef(),E=e.useRef(new Set),S=e.useRef(new Set),O=e.useRef(!1),C=e.useRef(!1),N=n=>{O.current||w?O.current=!1:(d?.(n),g.getState().resetSelectedElements(),g.setState({nodesSelectionActive:!1}))},j=p?n=>p(n):void 0,z=!0===a||Array.isArray(a)&&a.includes(0);return n.jsxs("div",{className:lo(["react-flow__pane",{draggable:z,dragging:x,selection:t}]),onClick:y?void 0:Ip(N,k),onContextMenu:Ip(n=>{Array.isArray(a)&&a?.includes(2)?n.preventDefault():c?.(n)},k),onWheel:Ip(j,k),onPointerEnter:y?void 0:u,onPointerDown:y?n=>{const{resetSelectedElements:e,domNode:r}=g.getState();if(_.current=r?.getBoundingClientRect(),!v||!t||0!==n.button||n.target!==k.current||!_.current)return;n.target?.setPointerCapture?.(n.pointerId),C.current=!0,O.current=!1;const{x:o,y:a}=pd(n.nativeEvent,_.current);e(),g.setState({userSelectionRect:{width:0,height:0,startX:o,startY:a,x:o,y:a}}),s?.(n)}:b,onPointerMove:y?n=>{const{userSelectionRect:e,transform:t,nodeLookup:r,edgeLookup:a,connectionLookup:i,triggerNodeChanges:s,triggerEdgeChanges:l,defaultEdgeOptions:d}=g.getState();if(!_.current||!e)return;O.current=!0;const{x:c,y:p}=pd(n.nativeEvent,_.current),{startX:u,startY:b}=e,m={startX:u,startY:b,x:c<u?c:u,y:p<b?p:b,width:Math.abs(c-u),height:Math.abs(p-b)},f=E.current,h=S.current;E.current=new Set(Nl(r,m,t,o===hl.Partial,!0).map(n=>n.id)),S.current=new Set;const v=d?.selectable??!0;for(const n of E.current){const e=i.get(n);if(e)for(const{edgeId:n}of e.values()){const e=a.get(n);e&&(e.selectable??v)&&S.current.add(n)}}if(!rd(f,E.current)){s(hp(r,E.current,!0))}if(!rd(h,S.current)){l(hp(a,S.current))}g.setState({userSelectionRect:m,userSelectionActive:!0,nodesSelectionActive:!1})}:b,onPointerUp:y?n=>{if(0!==n.button||!C.current)return;n.target?.releasePointerCapture?.(n.pointerId);const{userSelectionRect:e}=g.getState();!h&&e&&n.target===k.current&&N?.(n),g.setState({userSelectionActive:!1,userSelectionRect:null,nodesSelectionActive:E.current.size>0}),l?.(n),(r||i)&&(O.current=!1),C.current=!1}:void 0,onPointerLeave:m,ref:k,style:zp,children:[f,n.jsx(Ap,{})]})}function Tp({id:n,store:e,unselect:t=!1,nodeRef:r}){const{addSelectedNodes:o,unselectNodesAndEdges:a,multiSelectionActive:i,nodeLookup:s,onError:l}=e.getState(),d=s.get(n);d?(e.setState({nodesSelectionActive:!1}),d.selected?(t||d.selected&&i)&&(a({nodes:[d],edges:[]}),requestAnimationFrame(()=>r?.current?.blur())):o([n])):l?.("012",dl(n))}function Bp({nodeRef:n,disabled:t=!1,noDragClassName:r,handleSelector:o,nodeId:a,isSelectable:i,nodeClickDistance:s}){const l=Tc(),[d,c]=e.useState(!1),p=e.useRef();return e.useEffect(()=>{p.current=Hd({getStoreItems:()=>l.getState(),onNodeMouseDown:e=>{Tp({id:e,store:l,nodeRef:n})},onDragStart:()=>{c(!0)},onDragStop:()=>{c(!1)}})},[]),e.useEffect(()=>{if(t)p.current?.destroy();else if(n.current)return p.current?.update({noDragClassName:r,handleSelector:o,domNode:n.current,isSelectable:i,nodeId:a,nodeClickDistance:s}),()=>{p.current?.destroy()}},[r,o,t,i,n,a]),d}function Vp(){const n=Tc();return e.useCallback(e=>{const{nodeExtent:t,snapToGrid:r,snapGrid:o,nodesDraggable:a,onError:i,updateNodePositions:s,nodeLookup:l,nodeOrigin:d}=n.getState(),c=new Map,p=(n=>e=>e.selected&&(e.draggable||n&&void 0===e.draggable))(a),u=r?o[0]:5,b=r?o[1]:5,m=e.direction.x*u*e.factor,f=e.direction.y*b*e.factor;for(const[,n]of l){if(!p(n))continue;let e={x:n.internals.positionAbsolute.x+m,y:n.internals.positionAbsolute.y+f};r&&(e=Wl(e,o));const{position:a,positionAbsolute:s}=zl({nodeId:n.id,nextPosition:e,nodeLookup:l,nodeExtent:t,nodeOrigin:d,onError:i});n.position=a,n.internals.positionAbsolute=s,c.set(n.id,n)}s(c)},[])}const $p=e.createContext(null),Hp=$p.Provider;$p.Consumer;const Fp=()=>e.useContext($p),Yp=n=>({connectOnClick:n.connectOnClick,noPanClassName:n.noPanClassName,rfId:n.rfId});const Gp=e.memo(yp(function({type:e="source",position:t=yl.Top,isValidConnection:r,isConnectable:o=!0,isConnectableStart:a=!0,isConnectableEnd:i=!0,id:s,onConnect:l,children:d,className:c,onMouseDown:p,onTouchStart:u,...b},m){const f=s||null,g="target"===e,h=Tc(),v=Fp(),{connectOnClick:x,noPanClassName:w,rfId:y}=Lc(Yp,Rc),{connectingFrom:k,connectingTo:_,clickConnecting:E,isPossibleEndHandle:S,connectionInProcess:O,clickConnectionInProcess:C,valid:N}=Lc(((n,e,t)=>r=>{const{connectionClickStartHandle:o,connectionMode:a,connection:i}=r,{fromHandle:s,toHandle:l,isValid:d}=i,c=l?.nodeId===n&&l?.id===e&&l?.type===t;return{connectingFrom:s?.nodeId===n&&s?.id===e&&s?.type===t,connectingTo:c,clickConnecting:o?.nodeId===n&&o?.id===e&&o?.type===t,isPossibleEndHandle:a===fl.Strict?s?.type!==t:n!==s?.nodeId||e!==s?.id,connectionInProcess:!!s,clickConnectionInProcess:!!o,valid:c&&d}})(v,f,e),Rc);v||h.getState().onError?.("010",sl());const j=n=>{const{defaultEdgeOptions:e,onConnect:t,hasDefaultEdges:r}=h.getState(),o={...e,...n};if(r){const{edges:n,setEdges:e}=h.getState();e(((n,e)=>{if(!n.source||!n.target)return Xl("006",ol()),e;let t;return t=El(n)?{...n}:{...n,id:xd(n)},((n,e)=>e.some(e=>!(e.source!==n.source||e.target!==n.target||e.sourceHandle!==n.sourceHandle&&(e.sourceHandle||n.sourceHandle)||e.targetHandle!==n.targetHandle&&(e.targetHandle||n.targetHandle))))(t,e)?e:(null===t.sourceHandle&&delete t.sourceHandle,null===t.targetHandle&&delete t.targetHandle,e.concat(t))})(o,n))}t?.(o),l?.(o)},z=n=>{if(!v)return;const e=cd(n.nativeEvent);if(a&&(e&&0===n.button||!e)){const e=h.getState();Zd.onPointerDown(n.nativeEvent,{autoPanOnConnect:e.autoPanOnConnect,connectionMode:e.connectionMode,connectionRadius:e.connectionRadius,domNode:e.domNode,nodeLookup:e.nodeLookup,lib:e.lib,isTarget:g,handleId:f,nodeId:v,flowId:e.rfId,panBy:e.panBy,cancelConnection:e.cancelConnection,onConnectStart:e.onConnectStart,onConnectEnd:e.onConnectEnd,updateConnection:e.updateConnection,onConnect:j,isValidConnection:r||e.isValidConnection,getTransform:()=>h.getState().transform,getFromHandle:()=>h.getState().connection.fromHandle,autoPanSpeed:e.autoPanSpeed,dragThreshold:e.connectionDragThreshold})}e?p?.(n):u?.(n)};return n.jsx("div",{"data-handleid":f,"data-nodeid":v,"data-handlepos":t,"data-id":`${y}-${v}-${f}-${e}`,className:lo(["react-flow__handle",`react-flow__handle-${t}`,"nodrag",w,c,{source:!g,target:g,connectable:o,connectablestart:a,connectableend:i,clickconnecting:E,connectingfrom:k,connectingto:_,valid:N,connectionindicator:o&&(!O||S)&&(O||C?i:a)}]),onMouseDown:z,onTouchStart:z,onClick:x?n=>{const{onClickConnectStart:t,onClickConnectEnd:o,connectionClickStartHandle:i,connectionMode:s,isValidConnection:l,lib:d,rfId:c,nodeLookup:p,connection:u}=h.getState();if(!v||!i&&!a)return;if(!i)return t?.(n.nativeEvent,{nodeId:v,handleId:f,handleType:e}),void h.setState({connectionClickStartHandle:{nodeId:v,type:e,id:f}});const b=sd(n.target),m=r||l,{connection:g,isValid:x}=Zd.isValid(n.nativeEvent,{handle:{nodeId:v,id:f,type:e},connectionMode:s,fromNodeId:i.nodeId,fromHandleId:i.id||null,fromType:i.type,isValidConnection:m,flowId:c,doc:b,lib:d,nodeLookup:p});x&&g&&j(g);const w=structuredClone(u);delete w.inProgress,w.toPosition=w.toHandle?w.toHandle.position:null,o?.(n,w),h.setState({connectionClickStartHandle:null})}:void 0,ref:m,...b,children:d})}));const Xp={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}},Wp={input:function({data:e,isConnectable:t,sourcePosition:r=yl.Bottom}){return n.jsxs(n.Fragment,{children:[e?.label,n.jsx(Gp,{type:"source",position:r,isConnectable:t})]})},default:function({data:e,isConnectable:t,targetPosition:r=yl.Top,sourcePosition:o=yl.Bottom}){return n.jsxs(n.Fragment,{children:[n.jsx(Gp,{type:"target",position:r,isConnectable:t}),e?.label,n.jsx(Gp,{type:"source",position:o,isConnectable:t})]})},output:function({data:e,isConnectable:t,targetPosition:r=yl.Top}){return n.jsxs(n.Fragment,{children:[n.jsx(Gp,{type:"target",position:r,isConnectable:t}),e?.label]})},group:function(){return null}};const Zp=n=>{const{width:e,height:t,x:r,y:o}=Cl(n.nodeLookup,{filter:n=>!!n.selected});return{width:Gl(e)?e:null,height:Gl(t)?t:null,userSelectionActive:n.userSelectionActive,transformString:`translate(${n.transform[0]}px,${n.transform[1]}px) scale(${n.transform[2]}) translate(${r}px,${o}px)`}};function Kp({onSelectionContextMenu:t,noPanClassName:r,disableKeyboardA11y:o}){const a=Tc(),{width:i,height:s,transformString:l,userSelectionActive:d}=Lc(Zp,Rc),c=Vp(),p=e.useRef(null);if(e.useEffect(()=>{o||p.current?.focus({preventScroll:!0})},[o]),Bp({nodeRef:p}),d||!i||!s)return null;const u=t?n=>{const e=a.getState().nodes.filter(n=>n.selected);t(n,e)}:void 0;return n.jsx("div",{className:lo(["react-flow__nodesselection","react-flow__container",r]),style:{transform:l},children:n.jsx("div",{ref:p,className:"react-flow__nodesselection-rect",onContextMenu:u,tabIndex:o?void 0:-1,onKeyDown:o?void 0:n=>{Object.prototype.hasOwnProperty.call(Xp,n.key)&&(n.preventDefault(),c({direction:Xp[n.key],factor:n.shiftKey?4:1}))},style:{width:i,height:s}})})}const qp="undefined"!=typeof window?window:void 0,Up=n=>({nodesSelectionActive:n.nodesSelectionActive,userSelectionActive:n.userSelectionActive});function Qp({children:t,onPaneClick:r,onPaneMouseEnter:o,onPaneMouseMove:a,onPaneMouseLeave:i,onPaneContextMenu:s,onPaneScroll:l,paneClickDistance:d,deleteKeyCode:c,selectionKeyCode:p,selectionOnDrag:u,selectionMode:b,onSelectionStart:m,onSelectionEnd:f,multiSelectionKeyCode:g,panActivationKeyCode:h,zoomActivationKeyCode:v,elementsSelectable:x,zoomOnScroll:w,zoomOnPinch:y,panOnScroll:k,panOnScrollSpeed:_,panOnScrollMode:E,zoomOnDoubleClick:S,panOnDrag:O,defaultViewport:C,translateExtent:N,minZoom:j,maxZoom:z,preventScrolling:M,onSelectionContextMenu:P,noWheelClassName:R,noPanClassName:A,disableKeyboardA11y:I,onViewportChange:D,isControlledViewport:L}){const{nodesSelectionActive:T,userSelectionActive:B}=Lc(Up),V=dp(p,{target:qp}),$=dp(h,{target:qp}),H=$||O,F=$||k,Y=u&&!0!==H,G=V||B||Y;return function({deleteKeyCode:n,multiSelectionKeyCode:t}){const r=Tc(),{deleteElements:o}=Cp(),a=dp(n,{actInsideInputWithModifier:!1}),i=dp(t,{target:jp});e.useEffect(()=>{if(a){const{edges:n,nodes:e}=r.getState();o({nodes:e.filter(Np),edges:n.filter(Np)}),r.setState({nodesSelectionActive:!1})}},[a]),e.useEffect(()=>{r.setState({multiSelectionActive:i})},[i])}({deleteKeyCode:c,multiSelectionKeyCode:g}),n.jsx(Pp,{onPaneContextMenu:s,elementsSelectable:x,zoomOnScroll:w,zoomOnPinch:y,panOnScroll:F,panOnScrollSpeed:_,panOnScrollMode:E,zoomOnDoubleClick:S,panOnDrag:!V&&H,defaultViewport:C,translateExtent:N,minZoom:j,maxZoom:z,zoomActivationKeyCode:v,preventScrolling:M,noWheelClassName:R,noPanClassName:A,onViewportChange:D,isControlledViewport:L,paneClickDistance:d,children:n.jsxs(Lp,{onSelectionStart:m,onSelectionEnd:f,onPaneClick:r,onPaneMouseEnter:o,onPaneMouseMove:a,onPaneMouseLeave:i,onPaneContextMenu:s,onPaneScroll:l,panOnDrag:H,isSelecting:!!G,selectionMode:b,selectionKeyPressed:V,selectionOnDrag:Y,children:[t,T&&n.jsx(Kp,{onSelectionContextMenu:P,noPanClassName:A,disableKeyboardA11y:I})]})})}Qp.displayName="FlowRenderer";const Jp=e.memo(Qp);function nu(n){return Lc(e.useCallback((n=>e=>n?Nl(e.nodeLookup,{x:0,y:0,width:e.width,height:e.height},e.transform,!0).map(n=>n.id):Array.from(e.nodeLookup.keys()))(n),[n]),Rc)}const eu=n=>n.updateNodeInternals;function tu({id:t,onClick:r,onMouseEnter:o,onMouseMove:a,onMouseLeave:i,onContextMenu:s,onDoubleClick:l,nodesDraggable:d,elementsSelectable:c,nodesConnectable:p,nodesFocusable:u,resizeObserver:b,noDragClassName:m,noPanClassName:f,disableKeyboardA11y:g,rfId:h,nodeTypes:v,nodeClickDistance:x,onError:w}){const{node:y,internals:k,isParent:_}=Lc(n=>{const e=n.nodeLookup.get(t),r=n.parentLookup.has(t);return{node:e,internals:e.internals,isParent:r}},Rc);let E=y.type||"default",S=v?.[E]||Wp[E];void 0===S&&(w?.("003",el(E)),E="default",S=v?.default||Wp.default);const O=!!(y.draggable||d&&void 0===y.draggable),C=!!(y.selectable||c&&void 0===y.selectable),N=!!(y.connectable||p&&void 0===y.connectable),j=!!(y.focusable||u&&void 0===y.focusable),z=Tc(),M=ed(y),P=function({node:n,nodeType:t,hasDimensions:r,resizeObserver:o}){const a=Tc(),i=e.useRef(null),s=e.useRef(null),l=e.useRef(n.sourcePosition),d=e.useRef(n.targetPosition),c=e.useRef(t),p=r&&!!n.internals.handleBounds;return e.useEffect(()=>{!i.current||n.hidden||p&&s.current===i.current||(s.current&&o?.unobserve(s.current),o?.observe(i.current),s.current=i.current)},[p,n.hidden]),e.useEffect(()=>()=>{s.current&&(o?.unobserve(s.current),s.current=null)},[]),e.useEffect(()=>{if(i.current){const e=c.current!==t,r=l.current!==n.sourcePosition,o=d.current!==n.targetPosition;(e||r||o)&&(c.current=t,l.current=n.sourcePosition,d.current=n.targetPosition,a.getState().updateNodeInternals(new Map([[n.id,{id:n.id,nodeElement:i.current,force:!0}]])))}},[n.id,t,n.sourcePosition,n.targetPosition]),i}({node:y,nodeType:E,hasDimensions:M,resizeObserver:b}),R=Bp({nodeRef:P,disabled:y.hidden||!O,noDragClassName:m,handleSelector:y.dragHandle,nodeId:t,isSelectable:C,nodeClickDistance:x}),A=Vp();if(y.hidden)return null;const I=nd(y),D=function(n){return void 0===n.internals.handleBounds?{width:n.width??n.initialWidth??n.style?.width,height:n.height??n.initialHeight??n.style?.height}:{width:n.width??n.style?.width,height:n.height??n.style?.height}}(y),L=C||O||r||o||a||i,T=o?n=>o(n,{...k.userNode}):void 0,B=a?n=>a(n,{...k.userNode}):void 0,V=i?n=>i(n,{...k.userNode}):void 0,$=s?n=>s(n,{...k.userNode}):void 0,H=l?n=>l(n,{...k.userNode}):void 0;return n.jsx("div",{className:lo(["react-flow__node",`react-flow__node-${E}`,{[f]:O},y.className,{selected:y.selected,selectable:C,parent:_,draggable:O,dragging:R}]),ref:P,style:{zIndex:k.z,transform:`translate(${k.positionAbsolute.x}px,${k.positionAbsolute.y}px)`,pointerEvents:L?"all":"none",visibility:M?"visible":"hidden",...y.style,...D},"data-id":t,"data-testid":`rf__node-${t}`,onMouseEnter:T,onMouseMove:B,onMouseLeave:V,onContextMenu:$,onClick:n=>{const{selectNodesOnDrag:e,nodeDragThreshold:o}=z.getState();C&&(!e||!O||o>0)&&Tp({id:t,store:z,nodeRef:P}),r&&r(n,{...k.userNode})},onDoubleClick:H,onKeyDown:j?n=>{if(!dd(n.nativeEvent)&&!g)if(bl.includes(n.key)&&C){const e="Escape"===n.key;Tp({id:t,store:z,unselect:e,nodeRef:P})}else if(O&&y.selected&&Object.prototype.hasOwnProperty.call(Xp,n.key)){n.preventDefault();const{ariaLabelConfig:e}=z.getState();z.setState({ariaLiveMessage:e["node.a11yDescription.ariaLiveMessage"]({direction:n.key.replace("Arrow","").toLowerCase(),x:~~k.positionAbsolute.x,y:~~k.positionAbsolute.y})}),A({direction:Xp[n.key],factor:n.shiftKey?4:1})}}:void 0,tabIndex:j?0:void 0,onFocus:j?()=>{if(g||!P.current?.matches(":focus-visible"))return;const{transform:n,width:e,height:r,autoPanOnNodeFocus:o,setCenter:a}=z.getState();if(!o)return;Nl(new Map([[t,y]]),{x:0,y:0,width:e,height:r},n,!0).length>0||a(y.position.x+I.width/2,y.position.y+I.height/2,{zoom:n[2]})}:void 0,role:y.ariaRole??(j?"group":void 0),"aria-roledescription":"node","aria-describedby":g?void 0:`${$c}-${h}`,"aria-label":y.ariaLabel,...y.domAttributes,children:n.jsx(Hp,{value:t,children:n.jsx(S,{id:t,data:y.data,type:E,positionAbsoluteX:k.positionAbsolute.x,positionAbsoluteY:k.positionAbsolute.y,selected:y.selected??!1,selectable:C,draggable:O,deletable:y.deletable??!0,isConnectable:N,sourcePosition:y.sourcePosition,targetPosition:y.targetPosition,dragging:R,dragHandle:y.dragHandle,zIndex:k.z,parentId:y.parentId,...I})})})}const ru=n=>({nodesDraggable:n.nodesDraggable,nodesConnectable:n.nodesConnectable,nodesFocusable:n.nodesFocusable,elementsSelectable:n.elementsSelectable,onError:n.onError});function ou(t){const{nodesDraggable:r,nodesConnectable:o,nodesFocusable:a,elementsSelectable:i,onError:s}=Lc(ru,Rc),l=nu(t.onlyRenderVisibleElements),d=function(){const n=Lc(eu),[t]=e.useState(()=>"undefined"==typeof ResizeObserver?null:new ResizeObserver(e=>{const t=new Map;e.forEach(n=>{const e=n.target.getAttribute("data-id");t.set(e,{id:e,nodeElement:n.target,force:!0})}),n(t)}));return e.useEffect(()=>()=>{t?.disconnect()},[t]),t}();return n.jsx("div",{className:"react-flow__nodes",style:zp,children:l.map(e=>n.jsx(tu,{id:e,nodeTypes:t.nodeTypes,nodeExtent:t.nodeExtent,onClick:t.onNodeClick,onMouseEnter:t.onNodeMouseEnter,onMouseMove:t.onNodeMouseMove,onMouseLeave:t.onNodeMouseLeave,onContextMenu:t.onNodeContextMenu,onDoubleClick:t.onNodeDoubleClick,noDragClassName:t.noDragClassName,noPanClassName:t.noPanClassName,rfId:t.rfId,disableKeyboardA11y:t.disableKeyboardA11y,resizeObserver:d,nodesDraggable:r,nodesConnectable:o,nodesFocusable:a,elementsSelectable:i,nodeClickDistance:t.nodeClickDistance,onError:s},e))})}ou.displayName="NodeRenderer";const au=e.memo(ou);const iu={[wl.Arrow]:({color:e="none",strokeWidth:t=1})=>n.jsx("polyline",{style:{stroke:e,strokeWidth:t},strokeLinecap:"round",strokeLinejoin:"round",fill:"none",points:"-5,-4 0,0 -5,4"}),[wl.ArrowClosed]:({color:e="none",strokeWidth:t=1})=>n.jsx("polyline",{style:{stroke:e,fill:e,strokeWidth:t},strokeLinecap:"round",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4 -5,-4"})};const su=({id:t,type:r,color:o,width:a=12.5,height:i=12.5,markerUnits:s="strokeWidth",strokeWidth:l,orient:d="auto-start-reverse"})=>{const c=function(n){const t=Tc();return e.useMemo(()=>Object.prototype.hasOwnProperty.call(iu,n)?iu[n]:(t.getState().onError?.("009",al(n)),null),[n])}(r);return c?n.jsx("marker",{className:"react-flow__arrowhead",id:t,markerWidth:`${a}`,markerHeight:`${i}`,viewBox:"-10 -10 20 20",markerUnits:s,orient:d,refX:"0",refY:"0",children:n.jsx(c,{color:o,strokeWidth:l})}):null},lu=({defaultColor:t,rfId:r})=>{const o=Lc(n=>n.edges),a=Lc(n=>n.defaultEdgeOptions),i=e.useMemo(()=>{const n=function(n,{id:e,defaultColor:t,defaultMarkerStart:r,defaultMarkerEnd:o}){const a=new Set;return n.reduce((n,i)=>([i.markerStart||r,i.markerEnd||o].forEach(r=>{if(r&&"object"==typeof r){const o=jd(r,e);a.has(o)||(n.push({id:o,color:r.color||t,...r}),a.add(o))}}),n),[]).sort((n,e)=>n.id.localeCompare(e.id))}(o,{id:r,defaultColor:t,defaultMarkerStart:a?.markerStart,defaultMarkerEnd:a?.markerEnd});return n},[o,a,r,t]);return i.length?n.jsx("svg",{className:"react-flow__marker","aria-hidden":"true",children:n.jsx("defs",{children:i.map(e=>n.jsx(su,{id:e.id,type:e.type,color:e.color,width:e.width,height:e.height,markerUnits:e.markerUnits,strokeWidth:e.strokeWidth,orient:e.orient},e.id))})}):null};lu.displayName="MarkerDefinitions";var du=e.memo(lu);function cu({x:t,y:r,label:o,labelStyle:a,labelShowBg:i=!0,labelBgStyle:s,labelBgPadding:l=[2,4],labelBgBorderRadius:d=2,children:c,className:p,...u}){const[b,m]=e.useState({x:1,y:0,width:0,height:0}),f=lo(["react-flow__edge-textwrapper",p]),g=e.useRef(null);return e.useEffect(()=>{if(g.current){const n=g.current.getBBox();m({x:n.x,y:n.y,width:n.width,height:n.height})}},[o]),o?n.jsxs("g",{transform:`translate(${t-b.width/2} ${r-b.height/2})`,className:f,visibility:b.width?"visible":"hidden",...u,children:[i&&n.jsx("rect",{width:b.width+2*l[0],x:-l[0],y:-l[1],height:b.height+2*l[1],className:"react-flow__edge-textbg",style:s,rx:d,ry:d}),n.jsx("text",{className:"react-flow__edge-text",y:b.height/2,dy:"0.3em",ref:g,style:a,children:o}),c]}):null}cu.displayName="EdgeText";const pu=e.memo(cu);function uu({path:e,labelX:t,labelY:r,label:o,labelStyle:a,labelShowBg:i,labelBgStyle:s,labelBgPadding:l,labelBgBorderRadius:d,interactionWidth:c=20,...p}){return n.jsxs(n.Fragment,{children:[n.jsx("path",{...p,d:e,fill:"none",className:lo(["react-flow__edge-path",p.className])}),c&&n.jsx("path",{d:e,fill:"none",strokeOpacity:0,strokeWidth:c,className:"react-flow__edge-interaction"}),o&&Gl(t)&&Gl(r)?n.jsx(pu,{x:t,y:r,label:o,labelStyle:a,labelShowBg:i,labelBgStyle:s,labelBgPadding:l,labelBgBorderRadius:d}):null]})}function bu({pos:n,x1:e,y1:t,x2:r,y2:o}){return n===yl.Left||n===yl.Right?[.5*(e+r),t]:[e,.5*(t+o)]}function mu({sourceX:n,sourceY:e,sourcePosition:t=yl.Bottom,targetX:r,targetY:o,targetPosition:a=yl.Top}){const[i,s]=bu({pos:t,x1:n,y1:e,x2:r,y2:o}),[l,d]=bu({pos:a,x1:r,y1:o,x2:n,y2:e}),[c,p,u,b]=bd({sourceX:n,sourceY:e,targetX:r,targetY:o,sourceControlX:i,sourceControlY:s,targetControlX:l,targetControlY:d});return[`M${n},${e} C${i},${s} ${l},${d} ${r},${o}`,c,p,u,b]}function fu(t){return e.memo(({id:e,sourceX:r,sourceY:o,targetX:a,targetY:i,sourcePosition:s,targetPosition:l,label:d,labelStyle:c,labelShowBg:p,labelBgStyle:u,labelBgPadding:b,labelBgBorderRadius:m,style:f,markerEnd:g,markerStart:h,interactionWidth:v})=>{const[x,w,y]=mu({sourceX:r,sourceY:o,sourcePosition:s,targetX:a,targetY:i,targetPosition:l}),k=t.isInternal?void 0:e;return n.jsx(uu,{id:k,path:x,labelX:w,labelY:y,label:d,labelStyle:c,labelShowBg:p,labelBgStyle:u,labelBgPadding:b,labelBgBorderRadius:m,style:f,markerEnd:g,markerStart:h,interactionWidth:v})})}const gu=fu({isInternal:!1}),hu=fu({isInternal:!0});function vu(t){return e.memo(({id:e,sourceX:r,sourceY:o,targetX:a,targetY:i,label:s,labelStyle:l,labelShowBg:d,labelBgStyle:c,labelBgPadding:p,labelBgBorderRadius:u,style:b,sourcePosition:m=yl.Bottom,targetPosition:f=yl.Top,markerEnd:g,markerStart:h,pathOptions:v,interactionWidth:x})=>{const[w,y,k]=Ed({sourceX:r,sourceY:o,sourcePosition:m,targetX:a,targetY:i,targetPosition:f,borderRadius:v?.borderRadius,offset:v?.offset,stepPosition:v?.stepPosition}),_=t.isInternal?void 0:e;return n.jsx(uu,{id:_,path:w,labelX:y,labelY:k,label:s,labelStyle:l,labelShowBg:d,labelBgStyle:c,labelBgPadding:p,labelBgBorderRadius:u,style:b,markerEnd:g,markerStart:h,interactionWidth:x})})}gu.displayName="SimpleBezierEdge",hu.displayName="SimpleBezierEdgeInternal";const xu=vu({isInternal:!1}),wu=vu({isInternal:!0});function yu(t){return e.memo(({id:r,...o})=>{const a=t.isInternal?void 0:r;return n.jsx(xu,{...o,id:a,pathOptions:e.useMemo(()=>({borderRadius:0,offset:o.pathOptions?.offset}),[o.pathOptions?.offset])})})}xu.displayName="SmoothStepEdge",wu.displayName="SmoothStepEdgeInternal";const ku=yu({isInternal:!1}),_u=yu({isInternal:!0});function Eu(t){return e.memo(({id:e,sourceX:r,sourceY:o,targetX:a,targetY:i,label:s,labelStyle:l,labelShowBg:d,labelBgStyle:c,labelBgPadding:p,labelBgBorderRadius:u,style:b,markerEnd:m,markerStart:f,interactionWidth:g})=>{const[h,v,x]=wd({sourceX:r,sourceY:o,targetX:a,targetY:i}),w=t.isInternal?void 0:e;return n.jsx(uu,{id:w,path:h,labelX:v,labelY:x,label:s,labelStyle:l,labelShowBg:d,labelBgStyle:c,labelBgPadding:p,labelBgBorderRadius:u,style:b,markerEnd:m,markerStart:f,interactionWidth:g})})}ku.displayName="StepEdge",_u.displayName="StepEdgeInternal";const Su=Eu({isInternal:!1}),Ou=Eu({isInternal:!0});function Cu(t){return e.memo(({id:e,sourceX:r,sourceY:o,targetX:a,targetY:i,sourcePosition:s=yl.Bottom,targetPosition:l=yl.Top,label:d,labelStyle:c,labelShowBg:p,labelBgStyle:u,labelBgPadding:b,labelBgBorderRadius:m,style:f,markerEnd:g,markerStart:h,pathOptions:v,interactionWidth:x})=>{const[w,y,k]=gd({sourceX:r,sourceY:o,sourcePosition:s,targetX:a,targetY:i,targetPosition:l,curvature:v?.curvature}),_=t.isInternal?void 0:e;return n.jsx(uu,{id:_,path:w,labelX:y,labelY:k,label:d,labelStyle:c,labelShowBg:p,labelBgStyle:u,labelBgPadding:b,labelBgBorderRadius:m,style:f,markerEnd:g,markerStart:h,interactionWidth:x})})}Su.displayName="StraightEdge",Ou.displayName="StraightEdgeInternal";const Nu=Cu({isInternal:!1}),ju=Cu({isInternal:!0});Nu.displayName="BezierEdge",ju.displayName="BezierEdgeInternal";const zu={default:ju,straight:Ou,step:_u,smoothstep:wu,simplebezier:hu},Mu={sourceX:null,sourceY:null,targetX:null,targetY:null,sourcePosition:null,targetPosition:null},Pu=(n,e,t)=>t===yl.Left?n-e:t===yl.Right?n+e:n,Ru=(n,e,t)=>t===yl.Top?n-e:t===yl.Bottom?n+e:n,Au="react-flow__edgeupdater";function Iu({position:e,centerX:t,centerY:r,radius:o=10,onMouseDown:a,onMouseEnter:i,onMouseOut:s,type:l}){return n.jsx("circle",{onMouseDown:a,onMouseEnter:i,onMouseOut:s,className:lo([Au,`${Au}-${l}`]),cx:Pu(t,o,e),cy:Ru(r,o,e),r:o,stroke:"transparent",fill:"transparent"})}function Du({isReconnectable:e,reconnectRadius:t,edge:r,sourceX:o,sourceY:a,targetX:i,targetY:s,sourcePosition:l,targetPosition:d,onReconnect:c,onReconnectStart:p,onReconnectEnd:u,setReconnecting:b,setUpdateHover:m}){const f=Tc(),g=(n,e)=>{if(0!==n.button)return;const{autoPanOnConnect:t,domNode:o,isValidConnection:a,connectionMode:i,connectionRadius:s,lib:l,onConnectStart:d,onConnectEnd:m,cancelConnection:g,nodeLookup:h,rfId:v,panBy:x,updateConnection:w}=f.getState(),y="target"===e.type;Zd.onPointerDown(n.nativeEvent,{autoPanOnConnect:t,connectionMode:i,connectionRadius:s,domNode:o,handleId:e.id,nodeId:e.nodeId,nodeLookup:h,isTarget:y,edgeUpdaterType:e.type,lib:l,flowId:v,cancelConnection:g,panBy:x,isValidConnection:a,onConnect:n=>c?.(r,n),onConnectStart:(t,o)=>{b(!0),p?.(n,r,e.type),d?.(t,o)},onConnectEnd:m,onReconnectEnd:(n,t)=>{b(!1),u?.(n,r,e.type,t)},updateConnection:w,getTransform:()=>f.getState().transform,getFromHandle:()=>f.getState().connection.fromHandle,dragThreshold:f.getState().connectionDragThreshold})},h=()=>m(!0),v=()=>m(!1);return n.jsxs(n.Fragment,{children:[(!0===e||"source"===e)&&n.jsx(Iu,{position:l,centerX:o,centerY:a,radius:t,onMouseDown:n=>g(n,{nodeId:r.target,id:r.targetHandle??null,type:"target"}),onMouseEnter:h,onMouseOut:v,type:"source"}),(!0===e||"target"===e)&&n.jsx(Iu,{position:d,centerX:i,centerY:s,radius:t,onMouseDown:n=>g(n,{nodeId:r.source,id:r.sourceHandle??null,type:"source"}),onMouseEnter:h,onMouseOut:v,type:"target"})]})}function Lu({id:t,edgesFocusable:r,edgesReconnectable:o,elementsSelectable:a,onClick:i,onDoubleClick:s,onContextMenu:l,onMouseEnter:d,onMouseMove:c,onMouseLeave:p,reconnectRadius:u,onReconnect:b,onReconnectStart:m,onReconnectEnd:f,rfId:g,edgeTypes:h,noPanClassName:v,onError:x,disableKeyboardA11y:w}){let y=Lc(n=>n.edgeLookup.get(t));const k=Lc(n=>n.defaultEdgeOptions);y=k?{...k,...y}:y;let _=y.type||"default",E=h?.[_]||zu[_];void 0===E&&(x?.("011",ll(_)),_="default",E=h?.default||zu.default);const S=!!(y.focusable||r&&void 0===y.focusable),O=void 0!==b&&(y.reconnectable||o&&void 0===y.reconnectable),C=!!(y.selectable||a&&void 0===y.selectable),N=e.useRef(null),[j,z]=e.useState(!1),[M,P]=e.useState(!1),R=Tc(),{zIndex:A,sourceX:I,sourceY:D,targetX:L,targetY:T,sourcePosition:B,targetPosition:V}=Lc(e.useCallback(n=>{const e=n.nodeLookup.get(y.source),r=n.nodeLookup.get(y.target);if(!e||!r)return{zIndex:y.zIndex,...Mu};const o=function(n){const{sourceNode:e,targetNode:t}=n;if(!Sd(e)||!Sd(t))return null;const r=e.internals.handleBounds||Od(e.handles),o=t.internals.handleBounds||Od(t.handles),a=Nd(r?.source??[],n.sourceHandle),i=Nd(n.connectionMode===fl.Strict?o?.target??[]:(o?.target??[]).concat(o?.source??[]),n.targetHandle);if(!a||!i)return n.onError?.("008",il(a?"target":"source",{id:n.id,sourceHandle:n.sourceHandle,targetHandle:n.targetHandle})),null;const s=a?.position||yl.Bottom,l=i?.position||yl.Top,d=Cd(e,a,s),c=Cd(t,i,l);return{sourceX:d.x,sourceY:d.y,targetX:c.x,targetY:c.y,sourcePosition:s,targetPosition:l}}({id:t,sourceNode:e,targetNode:r,sourceHandle:y.sourceHandle||null,targetHandle:y.targetHandle||null,connectionMode:n.connectionMode,onError:x}),a=function({sourceNode:n,targetNode:e,selected:t=!1,zIndex:r,elevateOnSelect:o=!1}){return void 0!==r?r:(o&&t?1e3:0)+Math.max(n.parentId?n.internals.z:0,e.parentId?e.internals.z:0)}({selected:y.selected,zIndex:y.zIndex,sourceNode:e,targetNode:r,elevateOnSelect:n.elevateEdgesOnSelect});return{zIndex:a,...o||Mu}},[y.source,y.target,y.sourceHandle,y.targetHandle,y.selected,y.zIndex]),Rc),$=e.useMemo(()=>y.markerStart?`url('#${jd(y.markerStart,g)}')`:void 0,[y.markerStart,g]),H=e.useMemo(()=>y.markerEnd?`url('#${jd(y.markerEnd,g)}')`:void 0,[y.markerEnd,g]);if(y.hidden||null===I||null===D||null===L||null===T)return null;const F=s?n=>{s(n,{...y})}:void 0,Y=l?n=>{l(n,{...y})}:void 0,G=d?n=>{d(n,{...y})}:void 0,X=c?n=>{c(n,{...y})}:void 0,W=p?n=>{p(n,{...y})}:void 0;return n.jsx("svg",{style:{zIndex:A},children:n.jsxs("g",{className:lo(["react-flow__edge",`react-flow__edge-${_}`,y.className,v,{selected:y.selected,animated:y.animated,inactive:!C&&!i,updating:j,selectable:C}]),onClick:n=>{const{addSelectedEdges:e,unselectNodesAndEdges:r,multiSelectionActive:o}=R.getState();C&&(R.setState({nodesSelectionActive:!1}),y.selected&&o?(r({nodes:[],edges:[y]}),N.current?.blur()):e([t])),i&&i(n,y)},onDoubleClick:F,onContextMenu:Y,onMouseEnter:G,onMouseMove:X,onMouseLeave:W,onKeyDown:S?n=>{if(!w&&bl.includes(n.key)&&C){const{unselectNodesAndEdges:e,addSelectedEdges:r}=R.getState();"Escape"===n.key?(N.current?.blur(),e({edges:[y]})):r([t])}}:void 0,tabIndex:S?0:void 0,role:y.ariaRole??(S?"group":"img"),"aria-roledescription":"edge","data-id":t,"data-testid":`rf__edge-${t}`,"aria-label":null===y.ariaLabel?void 0:y.ariaLabel||`Edge from ${y.source} to ${y.target}`,"aria-describedby":S?`${Hc}-${g}`:void 0,ref:N,...y.domAttributes,children:[!M&&n.jsx(E,{id:t,source:y.source,target:y.target,type:y.type,selected:y.selected,animated:y.animated,selectable:C,deletable:y.deletable??!0,label:y.label,labelStyle:y.labelStyle,labelShowBg:y.labelShowBg,labelBgStyle:y.labelBgStyle,labelBgPadding:y.labelBgPadding,labelBgBorderRadius:y.labelBgBorderRadius,sourceX:I,sourceY:D,targetX:L,targetY:T,sourcePosition:B,targetPosition:V,data:y.data,style:y.style,sourceHandleId:y.sourceHandle,targetHandleId:y.targetHandle,markerStart:$,markerEnd:H,pathOptions:"pathOptions"in y?y.pathOptions:void 0,interactionWidth:y.interactionWidth}),O&&n.jsx(Du,{edge:y,isReconnectable:O,reconnectRadius:u,onReconnect:b,onReconnectStart:m,onReconnectEnd:f,sourceX:I,sourceY:D,targetX:L,targetY:T,sourcePosition:B,targetPosition:V,setUpdateHover:z,setReconnecting:P})]})})}const Tu=n=>({edgesFocusable:n.edgesFocusable,edgesReconnectable:n.edgesReconnectable,elementsSelectable:n.elementsSelectable,connectionMode:n.connectionMode,onError:n.onError});function Bu({defaultMarkerColor:t,onlyRenderVisibleElements:r,rfId:o,edgeTypes:a,noPanClassName:i,onReconnect:s,onEdgeContextMenu:l,onEdgeMouseEnter:d,onEdgeMouseMove:c,onEdgeMouseLeave:p,onEdgeClick:u,reconnectRadius:b,onEdgeDoubleClick:m,onReconnectStart:f,onReconnectEnd:g,disableKeyboardA11y:h}){const{edgesFocusable:v,edgesReconnectable:x,elementsSelectable:w,onError:y}=Lc(Tu,Rc),k=(_=r,Lc(e.useCallback(n=>{if(!_)return n.edges.map(n=>n.id);const e=[];if(n.width&&n.height)for(const t of n.edges){const r=n.nodeLookup.get(t.source),o=n.nodeLookup.get(t.target);r&&o&&vd({sourceNode:r,targetNode:o,width:n.width,height:n.height,transform:n.transform})&&e.push(t.id)}return e},[_]),Rc));var _;return n.jsxs("div",{className:"react-flow__edges",children:[n.jsx(du,{defaultColor:t,rfId:o}),k.map(e=>n.jsx(Lu,{id:e,edgesFocusable:v,edgesReconnectable:x,elementsSelectable:w,noPanClassName:i,onReconnect:s,onContextMenu:l,onMouseEnter:d,onMouseMove:c,onMouseLeave:p,onClick:u,reconnectRadius:b,onDoubleClick:m,onReconnectStart:f,onReconnectEnd:g,rfId:o,onError:y,edgeTypes:a,disableKeyboardA11y:h},e))]})}Bu.displayName="EdgeRenderer";const Vu=e.memo(Bu),$u=n=>`translate(${n.transform[0]}px,${n.transform[1]}px) scale(${n.transform[2]})`;function Hu({children:e}){const t=Lc($u);return n.jsx("div",{className:"react-flow__viewport xyflow__viewport react-flow__container",style:{transform:t},children:e})}const Fu=n=>n.panZoom?.syncViewport;function Yu(n){return n.connection.inProgress?{...n.connection,to:Zl(n.connection.to,n.transform)}:{...n.connection}}function Gu(n){return Lc(Yu,Rc)}const Xu=n=>({nodesConnectable:n.nodesConnectable,isValid:n.connection.isValid,inProgress:n.connection.inProgress,width:n.width,height:n.height});function Wu({containerStyle:e,style:t,type:r,component:o}){const{nodesConnectable:a,width:i,height:s,isValid:l,inProgress:d}=Lc(Xu,Rc);return!!(i&&a&&d)?n.jsx("svg",{style:e,width:i,height:s,className:"react-flow__connectionline react-flow__container",children:n.jsx("g",{className:lo(["react-flow__connection",_l(l)]),children:n.jsx(Zu,{style:t,type:r,CustomComponent:o,isValid:l})})}):null}const Zu=({style:e,type:t=xl.Bezier,CustomComponent:r,isValid:o})=>{const{inProgress:a,from:i,fromNode:s,fromHandle:l,fromPosition:d,to:c,toNode:p,toHandle:u,toPosition:b}=Gu();if(!a)return;if(r)return n.jsx(r,{connectionLineType:t,connectionLineStyle:e,fromNode:s,fromHandle:l,fromX:i.x,fromY:i.y,toX:c.x,toY:c.y,fromPosition:d,toPosition:b,connectionStatus:_l(o),toNode:p,toHandle:u});let m="";const f={sourceX:i.x,sourceY:i.y,sourcePosition:d,targetX:c.x,targetY:c.y,targetPosition:b};switch(t){case xl.Bezier:[m]=gd(f);break;case xl.SimpleBezier:[m]=mu(f);break;case xl.Step:[m]=Ed({...f,borderRadius:0});break;case xl.SmoothStep:[m]=Ed(f);break;default:[m]=wd(f)}return n.jsx("path",{d:m,fill:"none",className:"react-flow__connection-path",style:e})};Zu.displayName="ConnectionLine";const Ku={};function qu(n=Ku){const t=e.useRef(n),r=Tc();e.useEffect(()=>{if("development"===process.env.NODE_ENV){const e=new Set([...Object.keys(t.current),...Object.keys(n)]);for(const o of e)if(t.current[o]!==n[o]){r.getState().onError?.("002",nl());break}t.current=n}},[n])}function Uu({nodeTypes:t,edgeTypes:r,onInit:o,onNodeClick:a,onEdgeClick:i,onNodeDoubleClick:s,onEdgeDoubleClick:l,onNodeMouseEnter:d,onNodeMouseMove:c,onNodeMouseLeave:p,onNodeContextMenu:u,onSelectionContextMenu:b,onSelectionStart:m,onSelectionEnd:f,connectionLineType:g,connectionLineStyle:h,connectionLineComponent:v,connectionLineContainerStyle:x,selectionKeyCode:w,selectionOnDrag:y,selectionMode:k,multiSelectionKeyCode:_,panActivationKeyCode:E,zoomActivationKeyCode:S,deleteKeyCode:O,onlyRenderVisibleElements:C,elementsSelectable:N,defaultViewport:j,translateExtent:z,minZoom:M,maxZoom:P,preventScrolling:R,defaultMarkerColor:A,zoomOnScroll:I,zoomOnPinch:D,panOnScroll:L,panOnScrollSpeed:T,panOnScrollMode:B,zoomOnDoubleClick:V,panOnDrag:$,onPaneClick:H,onPaneMouseEnter:F,onPaneMouseMove:Y,onPaneMouseLeave:G,onPaneScroll:X,onPaneContextMenu:W,paneClickDistance:Z,nodeClickDistance:K,onEdgeContextMenu:q,onEdgeMouseEnter:U,onEdgeMouseMove:Q,onEdgeMouseLeave:J,reconnectRadius:nn,onReconnect:en,onReconnectStart:tn,onReconnectEnd:rn,noDragClassName:on,noWheelClassName:an,noPanClassName:sn,disableKeyboardA11y:ln,nodeExtent:dn,rfId:cn,viewport:pn,onViewportChange:un}){return qu(t),qu(r),function(){const n=Tc(),t=e.useRef(!1);e.useEffect(()=>{if("development"===process.env.NODE_ENV&&!t.current){const e=document.querySelector(".react-flow__pane");e&&"1"!==window.getComputedStyle(e).zIndex&&n.getState().onError?.("013",cl("react")),t.current=!0}},[])}(),function(n){const t=Cp(),r=e.useRef(!1);e.useEffect(()=>{!r.current&&t.viewportInitialized&&n&&(setTimeout(()=>n(t),1),r.current=!0)},[n,t.viewportInitialized])}(o),function(n){const t=Lc(Fu),r=Tc();e.useEffect(()=>{n&&(t?.(n),r.setState({transform:[n.x,n.y,n.zoom]}))},[n,t])}(pn),n.jsx(Jp,{onPaneClick:H,onPaneMouseEnter:F,onPaneMouseMove:Y,onPaneMouseLeave:G,onPaneContextMenu:W,onPaneScroll:X,paneClickDistance:Z,deleteKeyCode:O,selectionKeyCode:w,selectionOnDrag:y,selectionMode:k,onSelectionStart:m,onSelectionEnd:f,multiSelectionKeyCode:_,panActivationKeyCode:E,zoomActivationKeyCode:S,elementsSelectable:N,zoomOnScroll:I,zoomOnPinch:D,zoomOnDoubleClick:V,panOnScroll:L,panOnScrollSpeed:T,panOnScrollMode:B,panOnDrag:$,defaultViewport:j,translateExtent:z,minZoom:M,maxZoom:P,onSelectionContextMenu:b,preventScrolling:R,noDragClassName:on,noWheelClassName:an,noPanClassName:sn,disableKeyboardA11y:ln,onViewportChange:un,isControlledViewport:!!pn,children:n.jsxs(Hu,{children:[n.jsx(Vu,{edgeTypes:r,onEdgeClick:i,onEdgeDoubleClick:l,onReconnect:en,onReconnectStart:tn,onReconnectEnd:rn,onlyRenderVisibleElements:C,onEdgeContextMenu:q,onEdgeMouseEnter:U,onEdgeMouseMove:Q,onEdgeMouseLeave:J,reconnectRadius:nn,defaultMarkerColor:A,noPanClassName:sn,disableKeyboardA11y:ln,rfId:cn}),n.jsx(Wu,{style:h,type:g,component:v,containerStyle:x}),n.jsx("div",{className:"react-flow__edgelabel-renderer"}),n.jsx(au,{nodeTypes:t,onNodeClick:a,onNodeDoubleClick:s,onNodeMouseEnter:d,onNodeMouseMove:c,onNodeMouseLeave:p,onNodeContextMenu:u,nodeClickDistance:K,onlyRenderVisibleElements:C,noPanClassName:sn,noDragClassName:on,disableKeyboardA11y:ln,nodeExtent:dn,rfId:cn}),n.jsx("div",{className:"react-flow__viewport-portal"})]})})}Uu.displayName="GraphView";const Qu=e.memo(Uu),Ju=({nodes:n,edges:e,defaultNodes:t,defaultEdges:r,width:o,height:a,fitView:i,fitViewOptions:s,minZoom:l=.5,maxZoom:d=2,nodeOrigin:c,nodeExtent:p}={})=>{const u=new Map,b=new Map,m=new Map,f=new Map,g=r??e??[],h=t??n??[],v=c??[0,0],x=p??ul;Td(m,f,g);const w=Rd(h,u,b,{nodeOrigin:v,nodeExtent:x,elevateNodesOnSelect:!1});let y=[0,0,1];if(i&&o&&a){const n=Cl(u,{filter:n=>!(!n.width&&!n.initialWidth||!n.height&&!n.initialHeight)}),{x:e,y:t,zoom:r}=Ul(n,o,a,l,d,s?.padding??.1);y=[e,t,r]}return{rfId:"1",width:0,height:0,transform:y,nodes:h,nodesInitialized:w,nodeLookup:u,parentLookup:b,edges:g,edgeLookup:f,connectionLookup:m,onNodesChange:null,onEdgesChange:null,hasDefaultNodes:void 0!==t,hasDefaultEdges:void 0!==r,panZoom:null,minZoom:l,maxZoom:d,translateExtent:ul,nodeExtent:x,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionMode:fl.Strict,domNode:null,paneDragging:!1,noPanClassName:"nopan",nodeOrigin:v,nodeDragThreshold:1,connectionDragThreshold:1,snapGrid:[15,15],snapToGrid:!1,nodesDraggable:!0,nodesConnectable:!0,nodesFocusable:!0,edgesFocusable:!0,edgesReconnectable:!0,elementsSelectable:!0,elevateNodesOnSelect:!0,elevateEdgesOnSelect:!1,selectNodesOnDrag:!0,multiSelectionActive:!1,fitViewQueued:i??!1,fitViewOptions:s,fitViewResolver:null,connection:{...vl},connectionClickStartHandle:null,connectOnClick:!0,ariaLiveMessage:"",autoPanOnConnect:!0,autoPanOnNodeDrag:!0,autoPanOnNodeFocus:!0,autoPanSpeed:15,connectionRadius:20,onError:Xl,isValidConnection:void 0,onSelectionChangeHandlers:[],lib:"react",debug:!1,ariaLabelConfig:ml}},nb=({nodes:n,edges:e,defaultNodes:t,defaultEdges:r,width:o,height:a,fitView:i,fitViewOptions:s,minZoom:l,maxZoom:d,nodeOrigin:c,nodeExtent:p})=>{return u=(u,b)=>{async function m(){const{nodeLookup:n,panZoom:e,fitViewOptions:t,fitViewResolver:r,width:o,height:a,minZoom:i,maxZoom:s}=b();e&&(await jl({nodes:n,width:o,height:a,panZoom:e,minZoom:i,maxZoom:s},t),r?.resolve(!0),u({fitViewResolver:null}))}return{...Ju({nodes:n,edges:e,width:o,height:a,fitView:i,fitViewOptions:s,minZoom:l,maxZoom:d,nodeOrigin:c,nodeExtent:p,defaultNodes:t,defaultEdges:r}),setNodes:n=>{const{nodeLookup:e,parentLookup:t,nodeOrigin:r,elevateNodesOnSelect:o,fitViewQueued:a}=b(),i=Rd(n,e,t,{nodeOrigin:r,nodeExtent:p,elevateNodesOnSelect:o,checkEquality:!0});a&&i?(m(),u({nodes:n,nodesInitialized:i,fitViewQueued:!1,fitViewOptions:void 0})):u({nodes:n,nodesInitialized:i})},setEdges:n=>{const{connectionLookup:e,edgeLookup:t}=b();Td(e,t,n),u({edges:n})},setDefaultNodesAndEdges:(n,e)=>{if(n){const{setNodes:e}=b();e(n),u({hasDefaultNodes:!0})}if(e){const{setEdges:n}=b();n(e),u({hasDefaultEdges:!0})}},updateNodeInternals:n=>{const{triggerNodeChanges:e,nodeLookup:t,parentLookup:r,domNode:o,nodeOrigin:a,nodeExtent:i,debug:s,fitViewQueued:l}=b(),{changes:d,updatedInternals:c}=function(n,e,t,r,o,a){const i=r?.querySelector(".xyflow__viewport");let s=!1;if(!i)return{changes:[],updatedInternals:s};const l=[],d=window.getComputedStyle(i),{m22:c}=new window.DOMMatrixReadOnly(d.transform),p=[];for(const r of n.values()){const n=e.get(r.id);if(!n)continue;if(n.hidden){e.set(n.id,{...n,internals:{...n.internals,handleBounds:void 0}}),s=!0;continue}const i=id(r.nodeElement),d=n.measured.width!==i.width||n.measured.height!==i.height;if(i.width&&i.height&&(d||!n.internals.handleBounds||r.force)){const u=r.nodeElement.getBoundingClientRect(),b=Jl(n.extent)?n.extent:a;let{positionAbsolute:m}=n.internals;n.parentId&&"parent"===n.extent?m=Al(m,i,e.get(n.parentId)):b&&(m=Rl(m,b,i));const f={...n,measured:i,internals:{...n.internals,positionAbsolute:m,handleBounds:{source:ud("source",r.nodeElement,u,c,n.id),target:ud("target",r.nodeElement,u,c,n.id)}}};e.set(n.id,f),n.parentId&&Ad(f,e,t,{nodeOrigin:o}),s=!0,d&&(l.push({id:n.id,type:"dimensions",dimensions:i}),n.expandParent&&n.parentId&&p.push({id:n.id,parentId:n.parentId,rect:Vl(f,o)}))}}if(p.length>0){const n=Dd(p,e,t,o);l.push(...n)}return{changes:l,updatedInternals:s}}(n,t,r,o,a,i);c&&(function(n,e,t){const r=Pd(zd,t);for(const t of n.values())if(t.parentId)Ad(t,n,e,r);else{const n=Ol(t,r.nodeOrigin),e=Jl(t.extent)?t.extent:r.nodeExtent,o=Rl(n,e,nd(t));t.internals.positionAbsolute=o}}(t,r,{nodeOrigin:a,nodeExtent:i}),l?(m(),u({fitViewQueued:!1,fitViewOptions:void 0})):u({}),d?.length>0&&(s&&console.log("React Flow: trigger node changes",d),e?.(d)))},updateNodePositions:(n,e=!1)=>{const t=[],r=[],{nodeLookup:o,triggerNodeChanges:a}=b();for(const[a,i]of n){const n=o.get(a),s=!!(n?.expandParent&&n?.parentId&&i?.position),l={id:a,type:"position",position:s?{x:Math.max(0,i.position.x),y:Math.max(0,i.position.y)}:i.position,dragging:e};s&&n.parentId&&t.push({id:a,parentId:n.parentId,rect:{...i.internals.positionAbsolute,width:i.measured.width??0,height:i.measured.height??0}}),r.push(l)}if(t.length>0){const{parentLookup:n,nodeOrigin:e}=b(),a=Dd(t,o,n,e);r.push(...a)}a(r)},triggerNodeChanges:n=>{const{onNodesChange:e,setNodes:t,nodes:r,hasDefaultNodes:o,debug:a}=b();n?.length&&(o&&t(mp(n,r)),a&&console.log("React Flow: trigger node changes",n),e?.(n))},triggerEdgeChanges:n=>{const{onEdgesChange:e,setEdges:t,edges:r,hasDefaultEdges:o,debug:a}=b();n?.length&&(o&&t(fp(n,r)),a&&console.log("React Flow: trigger edge changes",n),e?.(n))},addSelectedNodes:n=>{const{multiSelectionActive:e,edgeLookup:t,nodeLookup:r,triggerNodeChanges:o,triggerEdgeChanges:a}=b();e?o(n.map(n=>gp(n,!0))):(o(hp(r,new Set([...n]),!0)),a(hp(t)))},addSelectedEdges:n=>{const{multiSelectionActive:e,edgeLookup:t,nodeLookup:r,triggerNodeChanges:o,triggerEdgeChanges:a}=b();e?a(n.map(n=>gp(n,!0))):(a(hp(t,new Set([...n]))),o(hp(r,new Set,!0)))},unselectNodesAndEdges:({nodes:n,edges:e}={})=>{const{edges:t,nodes:r,nodeLookup:o,triggerNodeChanges:a,triggerEdgeChanges:i}=b(),s=e||t,l=(n||r).map(n=>{const e=o.get(n.id);return e&&(e.selected=!1),gp(n.id,!1)}),d=s.map(n=>gp(n.id,!1));a(l),i(d)},setMinZoom:n=>{const{panZoom:e,maxZoom:t}=b();e?.setScaleExtent([n,t]),u({minZoom:n})},setMaxZoom:n=>{const{panZoom:e,minZoom:t}=b();e?.setScaleExtent([t,n]),u({maxZoom:n})},setTranslateExtent:n=>{b().panZoom?.setTranslateExtent(n),u({translateExtent:n})},setPaneClickDistance:n=>{b().panZoom?.setClickDistance(n)},resetSelectedElements:()=>{const{edges:n,nodes:e,triggerNodeChanges:t,triggerEdgeChanges:r,elementsSelectable:o}=b();if(!o)return;const a=e.reduce((n,e)=>e.selected?[...n,gp(e.id,!1)]:n,[]),i=n.reduce((n,e)=>e.selected?[...n,gp(e.id,!1)]:n,[]);t(a),r(i)},setNodeExtent:n=>{const{nodes:e,nodeLookup:t,parentLookup:r,nodeOrigin:o,elevateNodesOnSelect:a,nodeExtent:i}=b();n[0][0]===i[0][0]&&n[0][1]===i[0][1]&&n[1][0]===i[1][0]&&n[1][1]===i[1][1]||(Rd(e,t,r,{nodeOrigin:o,nodeExtent:n,elevateNodesOnSelect:a,checkEquality:!1}),u({nodeExtent:n}))},panBy:n=>{const{transform:e,width:t,height:r,panZoom:o,translateExtent:a}=b();return async function({delta:n,panZoom:e,transform:t,translateExtent:r,width:o,height:a}){if(!e||!n.x&&!n.y)return Promise.resolve(!1);const i=await e.setViewportConstrained({x:t[0]+n.x,y:t[1]+n.y,zoom:t[2]},[[0,0],[o,a]],r),s=!!i&&(i.x!==t[0]||i.y!==t[1]||i.k!==t[2]);return Promise.resolve(s)}({delta:n,panZoom:o,transform:e,translateExtent:a,width:t,height:r})},setCenter:async(n,e,t)=>{const{width:r,height:o,maxZoom:a,panZoom:i}=b();if(!i)return Promise.resolve(!1);const s=void 0!==t?.zoom?t.zoom:a;return await i.setViewport({x:r/2-n*s,y:o/2-e*s,zoom:s},{duration:t?.duration,ease:t?.ease,interpolate:t?.interpolate}),Promise.resolve(!0)},cancelConnection:()=>{u({connection:{...vl}})},updateConnection:n=>{u({connection:n})},reset:()=>u({...Ju()})}},b=Object.is,u?Pc(u,b):Pc;var u,b};function eb({initialNodes:t,initialEdges:r,defaultNodes:o,defaultEdges:a,initialWidth:i,initialHeight:s,initialMinZoom:l,initialMaxZoom:d,initialFitViewOptions:c,fitView:p,nodeOrigin:u,nodeExtent:b,children:m}){const[f]=e.useState(()=>nb({nodes:t,edges:r,defaultNodes:o,defaultEdges:a,width:i,height:s,fitView:p,minZoom:l,maxZoom:d,fitViewOptions:c,nodeOrigin:u,nodeExtent:b}));return n.jsx(Ic,{value:f,children:n.jsx(Sp,{children:m})})}function tb({children:t,nodes:r,edges:o,defaultNodes:a,defaultEdges:i,width:s,height:l,fitView:d,fitViewOptions:c,minZoom:p,maxZoom:u,nodeOrigin:b,nodeExtent:m}){return e.useContext(Ac)?n.jsx(n.Fragment,{children:t}):n.jsx(eb,{initialNodes:r,initialEdges:o,defaultNodes:a,defaultEdges:i,initialWidth:s,initialHeight:l,fitView:d,initialFitViewOptions:c,initialMinZoom:p,initialMaxZoom:u,nodeOrigin:b,nodeExtent:m,children:t})}const rb={width:"100%",height:"100%",overflow:"hidden",position:"relative",zIndex:0};var ob,ab=yp(function({nodes:t,edges:r,defaultNodes:o,defaultEdges:a,className:i,nodeTypes:s,edgeTypes:l,onNodeClick:d,onEdgeClick:c,onInit:p,onMove:u,onMoveStart:b,onMoveEnd:m,onConnect:f,onConnectStart:g,onConnectEnd:h,onClickConnectStart:v,onClickConnectEnd:x,onNodeMouseEnter:w,onNodeMouseMove:y,onNodeMouseLeave:k,onNodeContextMenu:_,onNodeDoubleClick:E,onNodeDragStart:S,onNodeDrag:O,onNodeDragStop:C,onNodesDelete:N,onEdgesDelete:j,onDelete:z,onSelectionChange:M,onSelectionDragStart:P,onSelectionDrag:R,onSelectionDragStop:A,onSelectionContextMenu:I,onSelectionStart:D,onSelectionEnd:L,onBeforeDelete:T,connectionMode:B,connectionLineType:V=xl.Bezier,connectionLineStyle:$,connectionLineComponent:H,connectionLineContainerStyle:F,deleteKeyCode:Y="Backspace",selectionKeyCode:G="Shift",selectionOnDrag:X=!1,selectionMode:W=hl.Full,panActivationKeyCode:Z="Space",multiSelectionKeyCode:K=(Ql()?"Meta":"Control"),zoomActivationKeyCode:q=(Ql()?"Meta":"Control"),snapToGrid:U,snapGrid:Q,onlyRenderVisibleElements:J=!1,selectNodesOnDrag:nn,nodesDraggable:en,autoPanOnNodeFocus:tn,nodesConnectable:rn,nodesFocusable:on,nodeOrigin:an=ep,edgesFocusable:sn,edgesReconnectable:ln,elementsSelectable:dn=!0,defaultViewport:cn=tp,minZoom:pn=.5,maxZoom:un=2,translateExtent:bn=ul,preventScrolling:mn=!0,nodeExtent:fn,defaultMarkerColor:gn="#b1b1b7",zoomOnScroll:hn=!0,zoomOnPinch:vn=!0,panOnScroll:xn=!1,panOnScrollSpeed:wn=.5,panOnScrollMode:yn=gl.Free,zoomOnDoubleClick:kn=!0,panOnDrag:_n=!0,onPaneClick:En,onPaneMouseEnter:Sn,onPaneMouseMove:On,onPaneMouseLeave:Cn,onPaneScroll:Nn,onPaneContextMenu:jn,paneClickDistance:zn=0,nodeClickDistance:Mn=0,children:Pn,onReconnect:Rn,onReconnectStart:An,onReconnectEnd:In,onEdgeContextMenu:Dn,onEdgeDoubleClick:Ln,onEdgeMouseEnter:Tn,onEdgeMouseMove:Bn,onEdgeMouseLeave:Vn,reconnectRadius:$n=10,onNodesChange:Hn,onEdgesChange:Fn,noDragClassName:Yn="nodrag",noWheelClassName:Gn="nowheel",noPanClassName:Xn="nopan",fitView:Wn,fitViewOptions:Zn,connectOnClick:Kn,attributionPosition:qn,proOptions:Un,defaultEdgeOptions:Qn,elevateNodesOnSelect:Jn,elevateEdgesOnSelect:ne,disableKeyboardA11y:ee=!1,autoPanOnConnect:te,autoPanOnNodeDrag:re,autoPanSpeed:oe,connectionRadius:ae,isValidConnection:ie,onError:se,style:le,id:de,nodeDragThreshold:ce,connectionDragThreshold:pe,viewport:ue,onViewportChange:be,width:me,height:fe,colorMode:ge="light",debug:he,onScroll:ve,ariaLabelConfig:xe,...we},ye){const ke=de||"1",_e=function(n){const[t,r]=e.useState("system"===n?null:n);return e.useEffect(()=>{if("system"!==n)return void r(n);const e=sp(),t=()=>r(e?.matches?"dark":"light");return t(),e?.addEventListener("change",t),()=>{e?.removeEventListener("change",t)}},[n]),null!==t?t:sp()?.matches?"dark":"light"}(ge),Ee=e.useCallback(n=>{n.currentTarget.scrollTo({top:0,left:0,behavior:"instant"}),ve?.(n)},[ve]);return n.jsx("div",{"data-testid":"rf__wrapper",...we,onScroll:Ee,style:{...le,...rb},ref:ye,className:lo(["react-flow",i,_e]),id:de,role:"application",children:n.jsxs(tb,{nodes:t,edges:r,width:me,height:fe,fitView:Wn,fitViewOptions:Zn,minZoom:pn,maxZoom:un,nodeOrigin:an,nodeExtent:fn,children:[n.jsx(Qu,{onInit:p,onNodeClick:d,onEdgeClick:c,onNodeMouseEnter:w,onNodeMouseMove:y,onNodeMouseLeave:k,onNodeContextMenu:_,onNodeDoubleClick:E,nodeTypes:s,edgeTypes:l,connectionLineType:V,connectionLineStyle:$,connectionLineComponent:H,connectionLineContainerStyle:F,selectionKeyCode:G,selectionOnDrag:X,selectionMode:W,deleteKeyCode:Y,multiSelectionKeyCode:K,panActivationKeyCode:Z,zoomActivationKeyCode:q,onlyRenderVisibleElements:J,defaultViewport:cn,translateExtent:bn,minZoom:pn,maxZoom:un,preventScrolling:mn,zoomOnScroll:hn,zoomOnPinch:vn,zoomOnDoubleClick:kn,panOnScroll:xn,panOnScrollSpeed:wn,panOnScrollMode:yn,panOnDrag:_n,onPaneClick:En,onPaneMouseEnter:Sn,onPaneMouseMove:On,onPaneMouseLeave:Cn,onPaneScroll:Nn,onPaneContextMenu:jn,paneClickDistance:zn,nodeClickDistance:Mn,onSelectionContextMenu:I,onSelectionStart:D,onSelectionEnd:L,onReconnect:Rn,onReconnectStart:An,onReconnectEnd:In,onEdgeContextMenu:Dn,onEdgeDoubleClick:Ln,onEdgeMouseEnter:Tn,onEdgeMouseMove:Bn,onEdgeMouseLeave:Vn,reconnectRadius:$n,defaultMarkerColor:gn,noDragClassName:Yn,noWheelClassName:Gn,noPanClassName:Xn,rfId:ke,disableKeyboardA11y:ee,nodeExtent:fn,viewport:ue,onViewportChange:be}),n.jsx(ip,{nodes:t,edges:r,defaultNodes:o,defaultEdges:a,onConnect:f,onConnectStart:g,onConnectEnd:h,onClickConnectStart:v,onClickConnectEnd:x,nodesDraggable:en,autoPanOnNodeFocus:tn,nodesConnectable:rn,nodesFocusable:on,edgesFocusable:sn,edgesReconnectable:ln,elementsSelectable:dn,elevateNodesOnSelect:Jn,elevateEdgesOnSelect:ne,minZoom:pn,maxZoom:un,nodeExtent:fn,onNodesChange:Hn,onEdgesChange:Fn,snapToGrid:U,snapGrid:Q,connectionMode:B,translateExtent:bn,connectOnClick:Kn,defaultEdgeOptions:Qn,fitView:Wn,fitViewOptions:Zn,onNodesDelete:N,onEdgesDelete:j,onDelete:z,onNodeDragStart:S,onNodeDrag:O,onNodeDragStop:C,onSelectionDrag:R,onSelectionDragStart:P,onSelectionDragStop:A,onMove:u,onMoveStart:b,onMoveEnd:m,noPanClassName:Xn,nodeOrigin:an,rfId:ke,autoPanOnConnect:te,autoPanOnNodeDrag:re,autoPanSpeed:oe,onError:se,connectionRadius:ae,isValidConnection:ie,selectNodesOnDrag:nn,nodeDragThreshold:ce,connectionDragThreshold:pe,onBeforeDelete:T,paneClickDistance:zn,debug:he,ariaLabelConfig:xe}),n.jsx(np,{onSelectionChange:M}),Pn,n.jsx(Zc,{proOptions:Un,position:qn}),n.jsx(Xc,{rfId:ke,disableKeyboardA11y:ee})]})})});function ib({dimensions:e,lineWidth:t,variant:r,className:o}){return n.jsx("path",{strokeWidth:t,d:`M${e[0]/2} 0 V${e[1]} M0 ${e[1]/2} H${e[0]}`,className:lo(["react-flow__background-pattern",r,o])})}function sb({radius:e,className:t}){return n.jsx("circle",{cx:e,cy:e,r:e,className:lo(["react-flow__background-pattern","dots",t])})}!function(n){n.Lines="lines",n.Dots="dots",n.Cross="cross"}(ob||(ob={}));const lb={[ob.Dots]:1,[ob.Lines]:1,[ob.Cross]:6},db=n=>({transform:n.transform,patternId:`pattern-${n.rfId}`});function cb({id:t,variant:r=ob.Dots,gap:o=20,size:a,lineWidth:i=1,offset:s=0,color:l,bgColor:d,style:c,className:p,patternClassName:u}){const b=e.useRef(null),{transform:m,patternId:f}=Lc(db,Rc),g=a||lb[r],h=r===ob.Dots,v=r===ob.Cross,x=Array.isArray(o)?o:[o,o],w=[x[0]*m[2]||1,x[1]*m[2]||1],y=g*m[2],k=Array.isArray(s)?s:[s,s],_=v?[y,y]:w,E=[k[0]*m[2]||1+_[0]/2,k[1]*m[2]||1+_[1]/2],S=`${f}${t||""}`;return n.jsxs("svg",{className:lo(["react-flow__background",p]),style:{...c,...zp,"--xy-background-color-props":d,"--xy-background-pattern-color-props":l},ref:b,"data-testid":"rf__background",children:[n.jsx("pattern",{id:S,x:m[0]%w[0],y:m[1]%w[1],width:w[0],height:w[1],patternUnits:"userSpaceOnUse",patternTransform:`translate(-${E[0]},-${E[1]})`,children:h?n.jsx(sb,{radius:y/2,className:u}):n.jsx(ib,{dimensions:_,lineWidth:i,variant:r,className:u})}),n.jsx("rect",{x:"0",y:"0",width:"100%",height:"100%",fill:`url(#${S})`})]})}function pb(){return n.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",children:n.jsx("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"})})}function ub(){return n.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5",children:n.jsx("path",{d:"M0 0h32v4.2H0z"})})}function bb(){return n.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30",children:n.jsx("path",{d:"M3.692 4.63c0-.53.4-.938.939-.938h5.215V0H4.708C2.13 0 0 2.054 0 4.63v5.216h3.692V4.631zM27.354 0h-5.2v3.692h5.17c.53 0 .984.4.984.939v5.215H32V4.631A4.624 4.624 0 0027.354 0zm.954 24.83c0 .532-.4.94-.939.94h-5.215v3.768h5.215c2.577 0 4.631-2.13 4.631-4.707v-5.139h-3.692v5.139zm-23.677.94c-.531 0-.939-.4-.939-.94v-5.138H0v5.139c0 2.577 2.13 4.707 4.708 4.707h5.138V25.77H4.631z"})})}function mb(){return n.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:n.jsx("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0 8 0 4.571 3.429 4.571 7.619v3.048H3.048A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047zm4.724-13.866H7.467V7.619c0-2.59 2.133-4.724 4.723-4.724 2.591 0 4.724 2.133 4.724 4.724v3.048z"})})}function fb(){return n.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:n.jsx("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0c-4.114 1.828-1.37 2.133.305 2.438 1.676.305 4.42 2.59 4.42 5.181v3.048H3.047A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047z"})})}function gb({children:e,className:t,...r}){return n.jsx("button",{type:"button",className:lo(["react-flow__controls-button",t]),...r,children:e})}cb.displayName="Background",e.memo(cb);const hb=n=>({isInteractive:n.nodesDraggable||n.nodesConnectable||n.elementsSelectable,minZoomReached:n.transform[2]<=n.minZoom,maxZoomReached:n.transform[2]>=n.maxZoom,ariaLabelConfig:n.ariaLabelConfig});function vb({style:e,showZoom:t=!0,showFitView:r=!0,showInteractive:o=!0,fitViewOptions:a,onZoomIn:i,onZoomOut:s,onFitView:l,onInteractiveChange:d,className:c,children:p,position:u="bottom-left",orientation:b="vertical","aria-label":m}){const f=Tc(),{isInteractive:g,minZoomReached:h,maxZoomReached:v,ariaLabelConfig:x}=Lc(hb,Rc),{zoomIn:w,zoomOut:y,fitView:k}=Cp(),_="horizontal"===b?"horizontal":"vertical";return n.jsxs(Wc,{className:lo(["react-flow__controls",_,c]),position:u,style:e,"data-testid":"rf__controls","aria-label":m??x["controls.ariaLabel"],children:[t&&n.jsxs(n.Fragment,{children:[n.jsx(gb,{onClick:()=>{w(),i?.()},className:"react-flow__controls-zoomin",title:x["controls.zoomIn.ariaLabel"],"aria-label":x["controls.zoomIn.ariaLabel"],disabled:v,children:n.jsx(pb,{})}),n.jsx(gb,{onClick:()=>{y(),s?.()},className:"react-flow__controls-zoomout",title:x["controls.zoomOut.ariaLabel"],"aria-label":x["controls.zoomOut.ariaLabel"],disabled:h,children:n.jsx(ub,{})})]}),r&&n.jsx(gb,{className:"react-flow__controls-fitview",onClick:()=>{k(a),l?.()},title:x["controls.fitView.ariaLabel"],"aria-label":x["controls.fitView.ariaLabel"],children:n.jsx(bb,{})}),o&&n.jsx(gb,{className:"react-flow__controls-interactive",onClick:()=>{f.setState({nodesDraggable:!g,nodesConnectable:!g,elementsSelectable:!g}),d?.(!g)},title:x["controls.interactive.ariaLabel"],"aria-label":x["controls.interactive.ariaLabel"],children:g?n.jsx(fb,{}):n.jsx(mb,{})}),p]})}vb.displayName="Controls";const xb=e.memo(vb);const wb=e.memo(function({id:e,x:t,y:r,width:o,height:a,style:i,color:s,strokeColor:l,strokeWidth:d,className:c,borderRadius:p,shapeRendering:u,selected:b,onClick:m}){const{background:f,backgroundColor:g}=i||{},h=s||f||g;return n.jsx("rect",{className:lo(["react-flow__minimap-node",{selected:b},c]),x:t,y:r,rx:p,ry:p,width:o,height:a,style:{fill:h,stroke:l,strokeWidth:d},shapeRendering:u,onClick:m?n=>m(n,e):void 0})}),yb=n=>n.nodes.map(n=>n.id),kb=n=>n instanceof Function?n:()=>n;const _b=e.memo(function({id:e,nodeColorFunc:t,nodeStrokeColorFunc:r,nodeClassNameFunc:o,nodeBorderRadius:a,nodeStrokeWidth:i,shapeRendering:s,NodeComponent:l,onClick:d}){const{node:c,x:p,y:u,width:b,height:m}=Lc(n=>{const{internals:t}=n.nodeLookup.get(e),r=t.userNode,{x:o,y:a}=t.positionAbsolute,{width:i,height:s}=nd(r);return{node:r,x:o,y:a,width:i,height:s}},Rc);return c&&!c.hidden&&ed(c)?n.jsx(l,{x:p,y:u,width:b,height:m,style:c.style,selected:!!c.selected,className:o(c),color:t(c),borderRadius:a,strokeColor:r(c),strokeWidth:i,shapeRendering:s,onClick:d,id:c.id}):null});var Eb=e.memo(function({nodeStrokeColor:e,nodeColor:t,nodeClassName:r="",nodeBorderRadius:o=5,nodeStrokeWidth:a,nodeComponent:i=wb,onClick:s}){const l=Lc(yb,Rc),d=kb(t),c=kb(e),p=kb(r),u="undefined"==typeof window||window.chrome?"crispEdges":"geometricPrecision";return n.jsx(n.Fragment,{children:l.map(e=>n.jsx(_b,{id:e,nodeColorFunc:d,nodeStrokeColorFunc:c,nodeClassNameFunc:p,nodeBorderRadius:o,nodeStrokeWidth:a,NodeComponent:i,onClick:s,shapeRendering:u},e))})});const Sb=n=>!n.hidden,Ob=n=>{const e={x:-n.transform[0]/n.transform[2],y:-n.transform[1]/n.transform[2],width:n.width/n.transform[2],height:n.height/n.transform[2]};return{viewBB:e,boundingRect:n.nodeLookup.size>0?Hl(Cl(n.nodeLookup,{filter:Sb}),e):e,rfId:n.rfId,panZoom:n.panZoom,translateExtent:n.translateExtent,flowWidth:n.width,flowHeight:n.height,ariaLabelConfig:n.ariaLabelConfig}};function Cb({style:t,className:r,nodeStrokeColor:o,nodeColor:a,nodeClassName:i="",nodeBorderRadius:s=5,nodeStrokeWidth:l,nodeComponent:d,bgColor:c,maskColor:p,maskStrokeColor:u,maskStrokeWidth:b,position:m="bottom-right",onClick:f,onNodeClick:g,pannable:h=!1,zoomable:v=!1,ariaLabel:x,inversePan:w,zoomStep:y=10,offsetScale:k=5}){const _=Tc(),E=e.useRef(null),{boundingRect:S,viewBB:O,rfId:C,panZoom:N,translateExtent:j,flowWidth:z,flowHeight:M,ariaLabelConfig:P}=Lc(Ob,Rc),R=t?.width??200,A=t?.height??150,I=S.width/R,D=S.height/A,L=Math.max(I,D),T=L*R,B=L*A,V=k*L,$=S.x-(T-S.width)/2-V,H=S.y-(B-S.height)/2-V,F=T+2*V,Y=B+2*V,G=`react-flow__minimap-desc-${C}`,X=e.useRef(0),W=e.useRef();X.current=L,e.useEffect(()=>{if(E.current&&N)return W.current=function({domNode:n,panZoom:e,getTransform:t,getViewScale:r}){const o=Ca(n);return{update:function({translateExtent:n,width:a,height:i,zoomStep:s=10,pannable:l=!0,zoomable:d=!0,inversePan:c=!1}){let p=[0,0];const u=Qs().on("start",n=>{"mousedown"!==n.sourceEvent.type&&"touchstart"!==n.sourceEvent.type||(p=[n.sourceEvent.clientX??n.sourceEvent.touches[0].clientX,n.sourceEvent.clientY??n.sourceEvent.touches[0].clientY])}).on("zoom",l?o=>{const s=t();if("mousemove"!==o.sourceEvent.type&&"touchmove"!==o.sourceEvent.type||!e)return;const l=[o.sourceEvent.clientX??o.sourceEvent.touches[0].clientX,o.sourceEvent.clientY??o.sourceEvent.touches[0].clientY],d=[l[0]-p[0],l[1]-p[1]];p=l;const u=r()*Math.max(s[2],Math.log(s[2]))*(c?-1:1),b={x:s[0]-d[0]*u,y:s[1]-d[1]*u},m=[[0,0],[a,i]];e.setViewportConstrained({x:b.x,y:b.y,zoom:s[2]},m,n)}:null).on("zoom.wheel",d?n=>{const r=t();if("wheel"!==n.sourceEvent.type||!e)return;const o=-n.sourceEvent.deltaY*(1===n.sourceEvent.deltaMode?.05:n.sourceEvent.deltaMode?1:.002)*s,a=r[2]*Math.pow(2,o);e.scaleTo(a)}:null);o.call(u,{})},destroy:function(){o.on("zoom",null)},pointer:Na}}({domNode:E.current,panZoom:N,getTransform:()=>_.getState().transform,getViewScale:()=>X.current}),()=>{W.current?.destroy()}},[N]),e.useEffect(()=>{W.current?.update({translateExtent:j,width:z,height:M,inversePan:w,pannable:h,zoomStep:y,zoomable:v})},[h,v,w,y,j,z,M]);const Z=f?n=>{const[e,t]=W.current?.pointer(n)||[0,0];f(n,{x:e,y:t})}:void 0,K=g?e.useCallback((n,e)=>{const t=_.getState().nodeLookup.get(e).internals.userNode;g(n,t)},[]):void 0,q=x??P["minimap.ariaLabel"];return n.jsx(Wc,{position:m,style:{...t,"--xy-minimap-background-color-props":"string"==typeof c?c:void 0,"--xy-minimap-mask-background-color-props":"string"==typeof p?p:void 0,"--xy-minimap-mask-stroke-color-props":"string"==typeof u?u:void 0,"--xy-minimap-mask-stroke-width-props":"number"==typeof b?b*L:void 0,"--xy-minimap-node-background-color-props":"string"==typeof a?a:void 0,"--xy-minimap-node-stroke-color-props":"string"==typeof o?o:void 0,"--xy-minimap-node-stroke-width-props":"number"==typeof l?l:void 0},className:lo(["react-flow__minimap",r]),"data-testid":"rf__minimap",children:n.jsxs("svg",{width:R,height:A,viewBox:`${$} ${H} ${F} ${Y}`,className:"react-flow__minimap-svg",role:"img","aria-labelledby":G,ref:E,onClick:Z,children:[q&&n.jsx("title",{id:G,children:q}),n.jsx(Eb,{onClick:K,nodeColor:a,nodeStrokeColor:o,nodeBorderRadius:s,nodeClassName:i,nodeStrokeWidth:l,nodeComponent:d}),n.jsx("path",{className:"react-flow__minimap-mask",d:`M${$-V},${H-V}h${F+2*V}v${Y+2*V}h${-F-2*V}z\n M${O.x},${O.y}h${O.width}v${O.height}h${-O.width}z`,fillRule:"evenodd",pointerEvents:"none"})]})})}Cb.displayName="MiniMap",e.memo(Cb);const Nb={[rc.Line]:"right",[rc.Handle]:"bottom-right"};e.memo(function({nodeId:t,position:r,variant:o=rc.Handle,className:a,style:i,children:s,color:l,minWidth:d=10,minHeight:c=10,maxWidth:p=Number.MAX_VALUE,maxHeight:u=Number.MAX_VALUE,keepAspectRatio:b=!1,resizeDirection:m,autoScale:f=!0,shouldResize:g,onResizeStart:h,onResize:v,onResizeEnd:x}){const w=Fp(),y="string"==typeof t?t:w,k=Tc(),_=e.useRef(null),E=o===rc.Handle,S=Lc(e.useCallback((O=E&&f,n=>O?`${Math.max(1/n.transform[2],1)}`:void 0),[E,f]),Rc);var O;const C=e.useRef(null),N=r??Nb[o];e.useEffect(()=>{if(_.current&&y)return C.current||(C.current=pc({domNode:_.current,nodeId:y,getStoreItems:()=>{const{nodeLookup:n,transform:e,snapGrid:t,snapToGrid:r,nodeOrigin:o,domNode:a}=k.getState();return{nodeLookup:n,transform:e,snapGrid:t,snapToGrid:r,nodeOrigin:o,paneDomNode:a}},onChange:(n,e)=>{const{triggerNodeChanges:t,nodeLookup:r,parentLookup:o,nodeOrigin:a}=k.getState(),i=[],s={x:n.x,y:n.y},l=r.get(y);if(l&&l.expandParent&&l.parentId){const e=l.origin??a,t=n.width??l.measured.width??0,d=n.height??l.measured.height??0,c=Dd([{id:l.id,parentId:l.parentId,rect:{width:t,height:d,...td({x:n.x??l.position.x,y:n.y??l.position.y},{width:t,height:d},l.parentId,r,e)}}],r,o,a);i.push(...c),s.x=n.x?Math.max(e[0]*t,n.x):void 0,s.y=n.y?Math.max(e[1]*d,n.y):void 0}if(void 0!==s.x&&void 0!==s.y){const n={id:y,type:"position",position:{...s}};i.push(n)}if(void 0!==n.width&&void 0!==n.height){const e={id:y,type:"dimensions",resizing:!0,setAttributes:!m||("horizontal"===m?"width":"height"),dimensions:{width:n.width,height:n.height}};i.push(e)}for(const n of e){const e={...n,type:"position"};i.push(e)}t(i)},onEnd:({width:n,height:e})=>{const t={id:y,type:"dimensions",resizing:!1,dimensions:{width:n,height:e}};k.getState().triggerNodeChanges([t])}})),C.current.update({controlPosition:N,boundaries:{minWidth:d,minHeight:c,maxWidth:p,maxHeight:u},keepAspectRatio:b,resizeDirection:m,onResizeStart:h,onResize:v,onResizeEnd:x,shouldResize:g}),()=>{C.current?.destroy()}},[N,d,c,p,u,b,h,v,x,g]);const j=N.split("-");return n.jsx("div",{className:lo(["react-flow__resize-control","nodrag",...j,o,a]),ref:_,style:{...i,scale:S,...l&&{[E?"backgroundColor":"borderColor"]:l}},children:s})});var jb,zb,Mb,Pb,Rb,Ab,Ib,Db,Lb,Tb,Bb,Vb,$b,Hb,Fb,Yb,Gb,Xb,Wb,Zb,Kb,qb,Ub,Qb,Jb,nm,em,tm,rm,om,am,im,sm,lm,dm,cm,pm,um,bm,mm,fm,gm,hm,vm,xm,wm,ym,km,_m,Em,Sm,Om,Cm,Nm,jm,zm,Mm,Pm,Rm,Am,Im,Dm,Lm,Tm,Bm,Vm,$m,Hm,Fm,Ym,Gm,Xm,Wm,Zm,Km,qm,Um,Qm,Jm,nf,ef,tf,rf,of,af,sf,lf,df,cf,pf,uf,bf,mf,ff;function gf(){if(zb)return jb;zb=1;var n="\0";function e(n,e){n[e]?n[e]++:n[e]=1}function t(n,e){--n[e]||delete n[e]}function r(n,e,t,r){var o=""+e,a=""+t;if(!n&&o>a){var i=o;o=a,a=i}return o+""+a+""+(void 0===r?"\0":r)}function o(n,e){return r(n,e.v,e.w,e.name)}return jb=class{_isDirected=!0;_isMultigraph=!1;_isCompound=!1;_label;_defaultNodeLabelFn=()=>{};_defaultEdgeLabelFn=()=>{};_nodes={};_in={};_preds={};_out={};_sucs={};_edgeObjs={};_edgeLabels={};_nodeCount=0;_edgeCount=0;_parent;_children;constructor(e){e&&(this._isDirected=!Object.hasOwn(e,"directed")||e.directed,this._isMultigraph=!!Object.hasOwn(e,"multigraph")&&e.multigraph,this._isCompound=!!Object.hasOwn(e,"compound")&&e.compound),this._isCompound&&(this._parent={},this._children={},this._children[n]={})}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(n){return this._label=n,this}graph(){return this._label}setDefaultNodeLabel(n){return this._defaultNodeLabelFn=n,"function"!=typeof n&&(this._defaultNodeLabelFn=()=>n),this}nodeCount(){return this._nodeCount}nodes(){return Object.keys(this._nodes)}sources(){var n=this;return this.nodes().filter(e=>0===Object.keys(n._in[e]).length)}sinks(){var n=this;return this.nodes().filter(e=>0===Object.keys(n._out[e]).length)}setNodes(n,e){var t=arguments,r=this;return n.forEach(function(n){t.length>1?r.setNode(n,e):r.setNode(n)}),this}setNode(e,t){return Object.hasOwn(this._nodes,e)?(arguments.length>1&&(this._nodes[e]=t),this):(this._nodes[e]=arguments.length>1?t:this._defaultNodeLabelFn(e),this._isCompound&&(this._parent[e]=n,this._children[e]={},this._children[n][e]=!0),this._in[e]={},this._preds[e]={},this._out[e]={},this._sucs[e]={},++this._nodeCount,this)}node(n){return this._nodes[n]}hasNode(n){return Object.hasOwn(this._nodes,n)}removeNode(n){var e=this;if(Object.hasOwn(this._nodes,n)){var t=n=>e.removeEdge(e._edgeObjs[n]);delete this._nodes[n],this._isCompound&&(this._removeFromParentsChildList(n),delete this._parent[n],this.children(n).forEach(function(n){e.setParent(n)}),delete this._children[n]),Object.keys(this._in[n]).forEach(t),delete this._in[n],delete this._preds[n],Object.keys(this._out[n]).forEach(t),delete this._out[n],delete this._sucs[n],--this._nodeCount}return this}setParent(e,t){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(void 0===t)t=n;else{for(var r=t+="";void 0!==r;r=this.parent(r))if(r===e)throw new Error("Setting "+t+" as parent of "+e+" would create a cycle");this.setNode(t)}return this.setNode(e),this._removeFromParentsChildList(e),this._parent[e]=t,this._children[t][e]=!0,this}_removeFromParentsChildList(n){delete this._children[this._parent[n]][n]}parent(e){if(this._isCompound){var t=this._parent[e];if(t!==n)return t}}children(e=n){if(this._isCompound){var t=this._children[e];if(t)return Object.keys(t)}else{if(e===n)return this.nodes();if(this.hasNode(e))return[]}}predecessors(n){var e=this._preds[n];if(e)return Object.keys(e)}successors(n){var e=this._sucs[n];if(e)return Object.keys(e)}neighbors(n){var e=this.predecessors(n);if(e){const r=new Set(e);for(var t of this.successors(n))r.add(t);return Array.from(r.values())}}isLeaf(n){return 0===(this.isDirected()?this.successors(n):this.neighbors(n)).length}filterNodes(n){var e=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});e.setGraph(this.graph());var t=this;Object.entries(this._nodes).forEach(function([t,r]){n(t)&&e.setNode(t,r)}),Object.values(this._edgeObjs).forEach(function(n){e.hasNode(n.v)&&e.hasNode(n.w)&&e.setEdge(n,t.edge(n))});var r={};function o(n){var a=t.parent(n);return void 0===a||e.hasNode(a)?(r[n]=a,a):a in r?r[a]:o(a)}return this._isCompound&&e.nodes().forEach(n=>e.setParent(n,o(n))),e}setDefaultEdgeLabel(n){return this._defaultEdgeLabelFn=n,"function"!=typeof n&&(this._defaultEdgeLabelFn=()=>n),this}edgeCount(){return this._edgeCount}edges(){return Object.values(this._edgeObjs)}setPath(n,e){var t=this,r=arguments;return n.reduce(function(n,o){return r.length>1?t.setEdge(n,o,e):t.setEdge(n,o),o}),this}setEdge(){var n,t,o,a,i=!1,s=arguments[0];"object"==typeof s&&null!==s&&"v"in s?(n=s.v,t=s.w,o=s.name,2===arguments.length&&(a=arguments[1],i=!0)):(n=s,t=arguments[1],o=arguments[3],arguments.length>2&&(a=arguments[2],i=!0)),n=""+n,t=""+t,void 0!==o&&(o=""+o);var l=r(this._isDirected,n,t,o);if(Object.hasOwn(this._edgeLabels,l))return i&&(this._edgeLabels[l]=a),this;if(void 0!==o&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(n),this.setNode(t),this._edgeLabels[l]=i?a:this._defaultEdgeLabelFn(n,t,o);var d=function(n,e,t,r){var o=""+e,a=""+t;if(!n&&o>a){var i=o;o=a,a=i}var s={v:o,w:a};r&&(s.name=r);return s}(this._isDirected,n,t,o);return n=d.v,t=d.w,Object.freeze(d),this._edgeObjs[l]=d,e(this._preds[t],n),e(this._sucs[n],t),this._in[t][l]=d,this._out[n][l]=d,this._edgeCount++,this}edge(n,e,t){var a=1===arguments.length?o(this._isDirected,arguments[0]):r(this._isDirected,n,e,t);return this._edgeLabels[a]}edgeAsObj(){const n=this.edge(...arguments);return"object"!=typeof n?{label:n}:n}hasEdge(n,e,t){var a=1===arguments.length?o(this._isDirected,arguments[0]):r(this._isDirected,n,e,t);return Object.hasOwn(this._edgeLabels,a)}removeEdge(n,e,a){var i=1===arguments.length?o(this._isDirected,arguments[0]):r(this._isDirected,n,e,a),s=this._edgeObjs[i];return s&&(n=s.v,e=s.w,delete this._edgeLabels[i],delete this._edgeObjs[i],t(this._preds[e],n),t(this._sucs[n],e),delete this._in[e][i],delete this._out[n][i],this._edgeCount--),this}inEdges(n,e){var t=this._in[n];if(t){var r=Object.values(t);return e?r.filter(n=>n.v===e):r}}outEdges(n,e){var t=this._out[n];if(t){var r=Object.values(t);return e?r.filter(n=>n.w===e):r}}nodeEdges(n,e){var t=this.inEdges(n,e);if(t)return t.concat(this.outEdges(n,e))}},jb}function hf(){return Ab?Rb:(Ab=1,Rb={Graph:gf(),version:Pb?Mb:(Pb=1,Mb="2.2.4")})}function vf(){if(Db)return Ib;Db=1;var n=gf();function e(n){return n.nodes().map(function(e){var t=n.node(e),r=n.parent(e),o={v:e};return void 0!==t&&(o.value=t),void 0!==r&&(o.parent=r),o})}function t(n){return n.edges().map(function(e){var t=n.edge(e),r={v:e.v,w:e.w};return void 0!==e.name&&(r.name=e.name),void 0!==t&&(r.value=t),r})}return Ib={write:function(n){var r={options:{directed:n.isDirected(),multigraph:n.isMultigraph(),compound:n.isCompound()},nodes:e(n),edges:t(n)};void 0!==n.graph()&&(r.value=structuredClone(n.graph()));return r},read:function(e){var t=new n(e.options).setGraph(e.value);return e.nodes.forEach(function(n){t.setNode(n.v,n.value),n.parent&&t.setParent(n.v,n.parent)}),e.edges.forEach(function(n){t.setEdge({v:n.v,w:n.w,name:n.name},n.value)}),t}}}function xf(){if(Tb)return Lb;return Tb=1,Lb=function(n){var e,t={},r=[];function o(r){Object.hasOwn(t,r)||(t[r]=!0,e.push(r),n.successors(r).forEach(o),n.predecessors(r).forEach(o))}return n.nodes().forEach(function(n){e=[],o(n),e.length&&r.push(e)}),r},Lb}function wf(){if(Vb)return Bb;Vb=1;return Bb=class{_arr=[];_keyIndices={};size(){return this._arr.length}keys(){return this._arr.map(function(n){return n.key})}has(n){return Object.hasOwn(this._keyIndices,n)}priority(n){var e=this._keyIndices[n];if(void 0!==e)return this._arr[e].priority}min(){if(0===this.size())throw new Error("Queue underflow");return this._arr[0].key}add(n,e){var t=this._keyIndices;if(n=String(n),!Object.hasOwn(t,n)){var r=this._arr,o=r.length;return t[n]=o,r.push({key:n,priority:e}),this._decrease(o),!0}return!1}removeMin(){this._swap(0,this._arr.length-1);var n=this._arr.pop();return delete this._keyIndices[n.key],this._heapify(0),n.key}decrease(n,e){var t=this._keyIndices[n];if(e>this._arr[t].priority)throw new Error("New priority is greater than current priority. Key: "+n+" Old: "+this._arr[t].priority+" New: "+e);this._arr[t].priority=e,this._decrease(t)}_heapify(n){var e=this._arr,t=2*n,r=t+1,o=n;t<e.length&&(o=e[t].priority<e[o].priority?t:o,r<e.length&&(o=e[r].priority<e[o].priority?r:o),o!==n&&(this._swap(n,o),this._heapify(o)))}_decrease(n){for(var e,t=this._arr,r=t[n].priority;0!==n&&!(t[e=n>>1].priority<r);)this._swap(n,e),n=e}_swap(n,e){var t=this._arr,r=this._keyIndices,o=t[n],a=t[e];t[n]=a,t[e]=o,r[a.key]=n,r[o.key]=e}},Bb}function yf(){if(Hb)return $b;Hb=1;var n=wf();$b=function(t,r,o,a){return function(e,t,r,o){var a,i,s={},l=new n,d=function(n){var e=n.v!==a?n.v:n.w,t=s[e],o=r(n),d=i.distance+o;if(o<0)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+n+" Weight: "+o);d<t.distance&&(t.distance=d,t.predecessor=a,l.decrease(e,d))};e.nodes().forEach(function(n){var e=n===t?0:Number.POSITIVE_INFINITY;s[n]={distance:e},l.add(n,e)});for(;l.size()>0&&(a=l.removeMin(),(i=s[a]).distance!==Number.POSITIVE_INFINITY);)o(a).forEach(d);return s}(t,String(r),o||e,a||function(n){return t.outEdges(n)})};var e=()=>1;return $b}function kf(){if(Yb)return Fb;Yb=1;var n=yf();return Fb=function(e,t,r){return e.nodes().reduce(function(o,a){return o[a]=n(e,a,t,r),o},{})},Fb}function _f(){if(Xb)return Gb;return Xb=1,Gb=function(n){var e=0,t=[],r={},o=[];function a(i){var s=r[i]={onStack:!0,lowlink:e,index:e++};if(t.push(i),n.successors(i).forEach(function(n){Object.hasOwn(r,n)?r[n].onStack&&(s.lowlink=Math.min(s.lowlink,r[n].index)):(a(n),s.lowlink=Math.min(s.lowlink,r[n].lowlink))}),s.lowlink===s.index){var l,d=[];do{l=t.pop(),r[l].onStack=!1,d.push(l)}while(i!==l);o.push(d)}}return n.nodes().forEach(function(n){Object.hasOwn(r,n)||a(n)}),o},Gb}function Ef(){if(Zb)return Wb;Zb=1;var n=_f();return Wb=function(e){return n(e).filter(function(n){return n.length>1||1===n.length&&e.hasEdge(n[0],n[0])})}}function Sf(){if(qb)return Kb;qb=1,Kb=function(e,t,r){return function(n,e,t){var r={},o=n.nodes();return o.forEach(function(n){r[n]={},r[n][n]={distance:0},o.forEach(function(e){n!==e&&(r[n][e]={distance:Number.POSITIVE_INFINITY})}),t(n).forEach(function(t){var o=t.v===n?t.w:t.v,a=e(t);r[n][o]={distance:a,predecessor:n}})}),o.forEach(function(n){var e=r[n];o.forEach(function(t){var a=r[t];o.forEach(function(t){var r=a[n],o=e[t],i=a[t],s=r.distance+o.distance;s<i.distance&&(i.distance=s,i.predecessor=o.predecessor)})})}),r}(e,t||n,r||function(n){return e.outEdges(n)})};var n=()=>1;return Kb}function Of(){if(Qb)return Ub;function n(n){var t={},r={},o=[];if(n.sinks().forEach(function a(i){if(Object.hasOwn(r,i))throw new e;Object.hasOwn(t,i)||(r[i]=!0,t[i]=!0,n.predecessors(i).forEach(a),delete r[i],o.push(i))}),Object.keys(t).length!==n.nodeCount())throw new e;return o}Qb=1;class e extends Error{constructor(){super(...arguments)}}return Ub=n,n.CycleException=e,Ub}function Cf(){if(nm)return Jb;nm=1;var n=Of();return Jb=function(e){try{n(e)}catch(e){if(e instanceof n.CycleException)return!1;throw e}return!0}}function Nf(){if(tm)return em;function n(n,e,r,o){for(var a=[[n,!1]];a.length>0;){var i=a.pop();i[1]?o.push(i[0]):Object.hasOwn(r,i[0])||(r[i[0]]=!0,a.push([i[0],!0]),t(e(i[0]),n=>a.push([n,!1])))}}function e(n,e,r,o){for(var a=[n];a.length>0;){var i=a.pop();Object.hasOwn(r,i)||(r[i]=!0,o.push(i),t(e(i),n=>a.push(n)))}}function t(n,e){for(var t=n.length;t--;)e(n[t],t,n);return n}return tm=1,em=function(t,r,o){Array.isArray(r)||(r=[r]);var a=t.isDirected()?n=>t.successors(n):n=>t.neighbors(n),i="post"===o?n:e,s=[],l={};return r.forEach(n=>{if(!t.hasNode(n))throw new Error("Graph does not have node: "+n);i(n,a,l,s)}),s},em}function jf(){if(om)return rm;om=1;var n=Nf();return rm=function(e,t){return n(e,t,"post")}}function zf(){if(im)return am;im=1;var n=Nf();return am=function(e,t){return n(e,t,"pre")}}function Mf(){if(lm)return sm;lm=1;var n=gf(),e=wf();return sm=function(t,r){var o,a=new n,i={},s=new e;function l(n){var e=n.v===o?n.w:n.v,t=s.priority(e);if(void 0!==t){var a=r(n);a<t&&(i[e]=o,s.decrease(e,a))}}if(0===t.nodeCount())return a;t.nodes().forEach(function(n){s.add(n,Number.POSITIVE_INFINITY),a.setNode(n)}),s.decrease(t.nodes()[0],0);var d=!1;for(;s.size()>0;){if(o=s.removeMin(),Object.hasOwn(i,o))a.setEdge(o,i[o]);else{if(d)throw new Error("Input graph is not connected: "+t);d=!0}t.nodeEdges(o).forEach(l)}return a},sm}function Pf(){if(um)return pm;um=1;var n=hf();return pm={Graph:n.Graph,json:vf(),alg:cm?dm:(cm=1,dm={components:xf(),dijkstra:yf(),dijkstraAll:kf(),findCycles:Ef(),floydWarshall:Sf(),isAcyclic:Cf(),postorder:jf(),preorder:zf(),prim:Mf(),tarjan:_f(),topsort:Of()}),version:n.version}}function Rf(){if(gm)return fm;gm=1;let n=Pf().Graph,e=function(){if(mm)return bm;function n(n){n._prev._next=n._next,n._next._prev=n._prev,delete n._next,delete n._prev}function e(n,e){if("_next"!==n&&"_prev"!==n)return e}return mm=1,bm=class{constructor(){let n={};n._next=n._prev=n,this._sentinel=n}dequeue(){let e=this._sentinel,t=e._prev;if(t!==e)return n(t),t}enqueue(e){let t=this._sentinel;e._prev&&e._next&&n(e),e._next=t._next,t._next._prev=e,t._next=e,e._prev=t}toString(){let n=[],t=this._sentinel,r=t._prev;for(;r!==t;)n.push(JSON.stringify(r,e)),r=r._prev;return"["+n.join(", ")+"]"}}}();fm=function(a,i){if(a.nodeCount()<=1)return[];let s=function(t,r){let a=new n,i=0,s=0;t.nodes().forEach(n=>{a.setNode(n,{v:n,in:0,out:0})}),t.edges().forEach(n=>{let e=a.edge(n.v,n.w)||0,t=r(n),o=e+t;a.setEdge(n.v,n.w,o),s=Math.max(s,a.node(n.v).out+=t),i=Math.max(i,a.node(n.w).in+=t)});let l=function(n){const e=[];for(let t=0;t<n;t++)e.push(t);return e}(s+i+3).map(()=>new e),d=i+1;return a.nodes().forEach(n=>{o(l,d,a.node(n))}),{graph:a,buckets:l,zeroIdx:d}}(a,i||t);return function(n,e,t){let o,a=[],i=e[e.length-1],s=e[0];for(;n.nodeCount();){for(;o=s.dequeue();)r(n,e,t,o);for(;o=i.dequeue();)r(n,e,t,o);if(n.nodeCount())for(let i=e.length-2;i>0;--i)if(o=e[i].dequeue(),o){a=a.concat(r(n,e,t,o,!0));break}}return a}(s.graph,s.buckets,s.zeroIdx).flatMap(n=>a.outEdges(n.v,n.w))};let t=()=>1;function r(n,e,t,r,a){let i=a?[]:void 0;return n.inEdges(r.v).forEach(r=>{let s=n.edge(r),l=n.node(r.v);a&&i.push({v:r.v,w:r.w}),l.out-=s,o(e,t,l)}),n.outEdges(r.v).forEach(r=>{let a=n.edge(r),i=r.w,s=n.node(i);s.in-=a,o(e,t,s)}),n.removeNode(r.v),i}function o(n,e,t){t.out?t.in?n[t.out-t.in+e].enqueue(t):n[n.length-1].enqueue(t):n[0].enqueue(t)}return fm}function Af(){if(vm)return hm;vm=1;let n=Pf().Graph;function e(n,e,t,r){for(var o=r;n.hasNode(o);)o=i(r);return t.dummy=e,n.setNode(o,t),o}hm={addBorderNode:function(n,t,r,o){let a={width:0,height:0};arguments.length>=4&&(a.rank=r,a.order=o);return e(n,"border",a,t)},addDummyNode:e,applyWithChunking:r,asNonCompoundGraph:function(e){let t=new n({multigraph:e.isMultigraph()}).setGraph(e.graph());return e.nodes().forEach(n=>{e.children(n).length||t.setNode(n,e.node(n))}),e.edges().forEach(n=>{t.setEdge(n,e.edge(n))}),t},buildLayerMatrix:function(n){let e=s(o(n)+1).map(()=>[]);return n.nodes().forEach(t=>{let r=n.node(t),o=r.rank;void 0!==o&&(e[o][r.order]=t)}),e},intersectRect:function(n,e){let t,r,o=n.x,a=n.y,i=e.x-o,s=e.y-a,l=n.width/2,d=n.height/2;if(!i&&!s)throw new Error("Not possible to find intersection inside of the rectangle");Math.abs(s)*l>Math.abs(i)*d?(s<0&&(d=-d),t=d*i/s,r=d):(i<0&&(l=-l),t=l,r=l*s/i);return{x:o+t,y:a+r}},mapValues:function(n,e){let t=e;"string"==typeof e&&(t=n=>n[e]);return Object.entries(n).reduce((n,[e,r])=>(n[e]=t(r,e),n),{})},maxRank:o,normalizeRanks:function(n){let e=n.nodes().map(e=>{let t=n.node(e).rank;return void 0===t?Number.MAX_VALUE:t}),t=r(Math.min,e);n.nodes().forEach(e=>{let r=n.node(e);Object.hasOwn(r,"rank")&&(r.rank-=t)})},notime:function(n,e){return e()},partition:function(n,e){let t={lhs:[],rhs:[]};return n.forEach(n=>{e(n)?t.lhs.push(n):t.rhs.push(n)}),t},pick:function(n,e){const t={};for(const r of e)void 0!==n[r]&&(t[r]=n[r]);return t},predecessorWeights:function(n){let e=n.nodes().map(e=>{let t={};return n.inEdges(e).forEach(e=>{t[e.v]=(t[e.v]||0)+n.edge(e).weight}),t});return l(n.nodes(),e)},range:s,removeEmptyRanks:function(n){let e=n.nodes().map(e=>n.node(e).rank),t=r(Math.min,e),o=[];n.nodes().forEach(e=>{let r=n.node(e).rank-t;o[r]||(o[r]=[]),o[r].push(e)});let a=0,i=n.graph().nodeRankFactor;Array.from(o).forEach((e,t)=>{void 0===e&&t%i!==0?--a:void 0!==e&&a&&e.forEach(e=>n.node(e).rank+=a)})},simplify:function(e){let t=(new n).setGraph(e.graph());return e.nodes().forEach(n=>t.setNode(n,e.node(n))),e.edges().forEach(n=>{let r=t.edge(n.v,n.w)||{weight:0,minlen:1},o=e.edge(n);t.setEdge(n.v,n.w,{weight:r.weight+o.weight,minlen:Math.max(r.minlen,o.minlen)})}),t},successorWeights:function(n){let e=n.nodes().map(e=>{let t={};return n.outEdges(e).forEach(e=>{t[e.w]=(t[e.w]||0)+n.edge(e).weight}),t});return l(n.nodes(),e)},time:function(n,e){let t=Date.now();try{return e()}finally{console.log(n+" time: "+(Date.now()-t)+"ms")}},uniqueId:i,zipObject:l};const t=65535;function r(n,e){if(e.length>t){const r=function(n,e=t){const r=[];for(let t=0;t<n.length;t+=e){const o=n.slice(t,t+e);r.push(o)}return r}(e);return n.apply(null,r.map(e=>n.apply(null,e)))}return n.apply(null,e)}function o(n){const e=n.nodes().map(e=>{let t=n.node(e).rank;return void 0===t?Number.MIN_VALUE:t});return r(Math.max,e)}let a=0;function i(n){return n+""+ ++a}function s(n,e,t=1){null==e&&(e=n,n=0);let r=n=>n<e;t<0&&(r=n=>e<n);const o=[];for(let e=n;r(e);e+=t)o.push(e);return o}function l(n,e){return n.reduce((n,t,r)=>(n[t]=e[r],n),{})}return hm}function If(){if(wm)return xm;wm=1;let n=Rf(),e=Af().uniqueId;return xm={run:function(t){("greedy"===t.graph().acyclicer?n(t,function(n){return e=>n.edge(e).weight}(t)):function(n){let e=[],t={},r={};function o(a){Object.hasOwn(r,a)||(r[a]=!0,t[a]=!0,n.outEdges(a).forEach(n=>{Object.hasOwn(t,n.w)?e.push(n):o(n.w)}),delete t[a])}return n.nodes().forEach(o),e}(t)).forEach(n=>{let r=t.edge(n);t.removeEdge(n),r.forwardName=n.name,r.reversed=!0,t.setEdge(n.w,n.v,r,e("rev"))})},undo:function(n){n.edges().forEach(e=>{let t=n.edge(e);if(t.reversed){n.removeEdge(e);let r=t.forwardName;delete t.reversed,delete t.forwardName,n.setEdge(e.w,e.v,t,r)}})}},xm}function Df(){if(km)return ym;km=1;let n=Af();return ym={run:function(e){e.graph().dummyChains=[],e.edges().forEach(t=>function(e,t){let r,o,a,i=t.v,s=e.node(i).rank,l=t.w,d=e.node(l).rank,c=t.name,p=e.edge(t),u=p.labelRank;if(d===s+1)return;for(e.removeEdge(t),a=0,++s;s<d;++a,++s)p.points=[],o={width:0,height:0,edgeLabel:p,edgeObj:t,rank:s},r=n.addDummyNode(e,"edge",o,"_d"),s===u&&(o.width=p.width,o.height=p.height,o.dummy="edge-label",o.labelpos=p.labelpos),e.setEdge(i,r,{weight:p.weight},c),0===a&&e.graph().dummyChains.push(r),i=r;e.setEdge(i,l,{weight:p.weight},c)}(e,t))},undo:function(n){n.graph().dummyChains.forEach(e=>{let t,r=n.node(e),o=r.edgeLabel;for(n.setEdge(r.edgeObj,o);r.dummy;)t=n.successors(e)[0],n.removeNode(e),o.points.push({x:r.x,y:r.y}),"edge-label"===r.dummy&&(o.x=r.x,o.y=r.y,o.width=r.width,o.height=r.height),e=t,r=n.node(e)})}},ym}function Lf(){if(Em)return _m;Em=1;const{applyWithChunking:n}=Af();return _m={longestPath:function(e){var t={};e.sources().forEach(function r(o){var a=e.node(o);if(Object.hasOwn(t,o))return a.rank;t[o]=!0;let i=e.outEdges(o).map(n=>null==n?Number.POSITIVE_INFINITY:r(n.w)-e.edge(n).minlen);var s=n(Math.min,i);return s===Number.POSITIVE_INFINITY&&(s=0),a.rank=s})},slack:function(n,e){return n.node(e.w).rank-n.node(e.v).rank-n.edge(e).minlen}},_m}function Tf(){if(Om)return Sm;Om=1;var n=Pf().Graph,e=Lf().slack;function t(n,t){return n.nodes().forEach(function r(o){t.nodeEdges(o).forEach(a=>{var i=a.v,s=o===i?a.w:i;n.hasNode(s)||e(t,a)||(n.setNode(s,{}),n.setEdge(o,s,{}),r(s))})}),n.nodeCount()}function r(n,t){return t.edges().reduce((r,o)=>{let a=Number.POSITIVE_INFINITY;return n.hasNode(o.v)!==n.hasNode(o.w)&&(a=e(t,o)),a<r[0]?[a,o]:r},[Number.POSITIVE_INFINITY,null])[1]}function o(n,e,t){n.nodes().forEach(n=>e.node(n).rank+=t)}return Sm=function(a){var i,s,l=new n({directed:!1}),d=a.nodes()[0],c=a.nodeCount();l.setNode(d,{});for(;t(l,a)<c;)i=r(l,a),s=l.hasNode(i.v)?e(a,i):-e(a,i),o(l,a,s);return l},Sm}function Bf(){if(Nm)return Cm;Nm=1;var n=Tf(),e=Lf().slack,t=Lf().longestPath,r=Pf().alg.preorder,o=Pf().alg.postorder,a=Af().simplify;function i(e){e=a(e),t(e);var r,o=n(e);for(d(o),s(o,e);r=p(o);)b(o,e,r,u(o,e,r))}function s(n,e){var t=o(n,n.nodes());(t=t.slice(0,t.length-1)).forEach(t=>function(n,e,t){var r=n.node(t),o=r.parent;n.edge(t,o).cutvalue=l(n,e,t)}(n,e,t))}function l(n,e,t){var r=n.node(t).parent,o=!0,a=e.edge(t,r),i=0;return a||(o=!1,a=e.edge(r,t)),i=a.weight,e.nodeEdges(t).forEach(a=>{var s=a.v===t,l=s?a.w:a.v;if(l!==r){var d=s===o,c=e.edge(a).weight;if(i+=d?c:-c,function(n,e,t){return n.hasEdge(e,t)}(n,t,l)){var p=n.edge(t,l).cutvalue;i+=d?-p:p}}}),i}function d(n,e){arguments.length<2&&(e=n.nodes()[0]),c(n,{},1,e)}function c(n,e,t,r,o){var a=t,i=n.node(r);return e[r]=!0,n.neighbors(r).forEach(o=>{Object.hasOwn(e,o)||(t=c(n,e,t,o,r))}),i.low=a,i.lim=t++,o?i.parent=o:delete i.parent,t}function p(n){return n.edges().find(e=>n.edge(e).cutvalue<0)}function u(n,t,r){var o=r.v,a=r.w;t.hasEdge(o,a)||(o=r.w,a=r.v);var i=n.node(o),s=n.node(a),l=i,d=!1;i.lim>s.lim&&(l=s,d=!0);var c=t.edges().filter(e=>d===m(n,n.node(e.v),l)&&d!==m(n,n.node(e.w),l));return c.reduce((n,r)=>e(t,r)<e(t,n)?r:n)}function b(n,e,t,o){var a=t.v,i=t.w;n.removeEdge(a,i),n.setEdge(o.v,o.w,{}),d(n),s(n,e),function(n,e){var t=n.nodes().find(n=>!e.node(n).parent),o=r(n,t);(o=o.slice(1)).forEach(t=>{var r=n.node(t).parent,o=e.edge(t,r),a=!1;o||(o=e.edge(r,t),a=!0),e.node(t).rank=e.node(r).rank+(a?o.minlen:-o.minlen)})}(n,e)}function m(n,e,t){return t.low<=e.lim&&e.lim<=t.lim}return Cm=i,i.initLowLimValues=d,i.initCutValues=s,i.calcCutValue=l,i.leaveEdge=p,i.enterEdge=u,i.exchangeEdges=b,Cm}function Vf(){if(zm)return jm;zm=1;var n=Lf().longestPath,e=Tf(),t=Bf();jm=function(t){var a=t.graph().ranker;if(a instanceof Function)return a(t);switch(t.graph().ranker){case"network-simplex":default:o(t);break;case"tight-tree":!function(t){n(t),e(t)}(t);break;case"longest-path":r(t);case"none":}};var r=n;function o(n){t(n)}return jm}function $f(){if(Pm)return Mm;return Pm=1,Mm=function(n){let e=function(n){let e={},t=0;function r(o){let a=t;n.children(o).forEach(r),e[o]={low:a,lim:t++}}return n.children().forEach(r),e}(n);n.graph().dummyChains.forEach(t=>{let r=n.node(t),o=r.edgeObj,a=function(n,e,t,r){let o,a,i=[],s=[],l=Math.min(e[t].low,e[r].low),d=Math.max(e[t].lim,e[r].lim);o=t;do{o=n.parent(o),i.push(o)}while(o&&(e[o].low>l||d>e[o].lim));a=o,o=r;for(;(o=n.parent(o))!==a;)s.push(o);return{path:i.concat(s.reverse()),lca:a}}(n,e,o.v,o.w),i=a.path,s=a.lca,l=0,d=i[l],c=!0;for(;t!==o.w;){if(r=n.node(t),c){for(;(d=i[l])!==s&&n.node(d).maxRank<r.rank;)l++;d===s&&(c=!1)}if(!c){for(;l<i.length-1&&n.node(d=i[l+1]).minRank<=r.rank;)l++;d=i[l]}n.setParent(t,d),t=n.successors(t)[0]}})},Mm}function Hf(){if(Am)return Rm;Am=1;let n=Af();function e(t,r,o,a,i,s,l){let d=t.children(l);if(!d.length)return void(l!==r&&t.setEdge(r,l,{weight:0,minlen:o}));let c=n.addBorderNode(t,"_bt"),p=n.addBorderNode(t,"_bb"),u=t.node(l);t.setParent(c,l),u.borderTop=c,t.setParent(p,l),u.borderBottom=p,d.forEach(n=>{e(t,r,o,a,i,s,n);let d=t.node(n),u=d.borderTop?d.borderTop:n,b=d.borderBottom?d.borderBottom:n,m=d.borderTop?a:2*a,f=u!==b?1:i-s[l]+1;t.setEdge(c,u,{weight:m,minlen:f,nestingEdge:!0}),t.setEdge(b,p,{weight:m,minlen:f,nestingEdge:!0})}),t.parent(l)||t.setEdge(r,c,{weight:0,minlen:i+s[l]})}return Rm={run:function(t){let r=n.addDummyNode(t,"root",{},"_root"),o=function(n){var e={};function t(r,o){var a=n.children(r);a&&a.length&&a.forEach(n=>t(n,o+1)),e[r]=o}return n.children().forEach(n=>t(n,1)),e}(t),a=Object.values(o),i=n.applyWithChunking(Math.max,a)-1,s=2*i+1;t.graph().nestingRoot=r,t.edges().forEach(n=>t.edge(n).minlen*=s);let l=function(n){return n.edges().reduce((e,t)=>e+n.edge(t).weight,0)}(t)+1;t.children().forEach(n=>e(t,r,s,l,i,o,n)),t.graph().nodeRankFactor=s},cleanup:function(n){var e=n.graph();n.removeNode(e.nestingRoot),delete e.nestingRoot,n.edges().forEach(e=>{n.edge(e).nestingEdge&&n.removeEdge(e)})}},Rm}function Ff(){if(Tm)return Lm;function n(n){n.nodes().forEach(t=>e(n.node(t))),n.edges().forEach(t=>e(n.edge(t)))}function e(n){let e=n.width;n.width=n.height,n.height=e}function t(n){n.y=-n.y}function r(n){let e=n.x;n.x=n.y,n.y=e}return Tm=1,Lm={adjust:function(e){let t=e.graph().rankdir.toLowerCase();"lr"!==t&&"rl"!==t||n(e)},undo:function(e){let o=e.graph().rankdir.toLowerCase();"bt"!==o&&"rl"!==o||function(n){n.nodes().forEach(e=>t(n.node(e))),n.edges().forEach(e=>{let r=n.edge(e);r.points.forEach(t),Object.hasOwn(r,"y")&&t(r)})}(e);"lr"!==o&&"rl"!==o||(!function(n){n.nodes().forEach(e=>r(n.node(e))),n.edges().forEach(e=>{let t=n.edge(e);t.points.forEach(r),Object.hasOwn(t,"x")&&r(t)})}(e),n(e))}},Lm}function Yf(){if(Xm)return Gm;Xm=1;let n=Af();return Gm=function(e,t){let r={};return e.forEach((n,e)=>{let t=r[n.v]={indegree:0,in:[],out:[],vs:[n.v],i:e};void 0!==n.barycenter&&(t.barycenter=n.barycenter,t.weight=n.weight)}),t.edges().forEach(n=>{let e=r[n.v],t=r[n.w];void 0!==e&&void 0!==t&&(t.indegree++,e.out.push(r[n.w]))}),function(e){let t=[];function r(n){return e=>{e.merged||(void 0===e.barycenter||void 0===n.barycenter||e.barycenter>=n.barycenter)&&function(n,e){let t=0,r=0;n.weight&&(t+=n.barycenter*n.weight,r+=n.weight);e.weight&&(t+=e.barycenter*e.weight,r+=e.weight);n.vs=e.vs.concat(n.vs),n.barycenter=t/r,n.weight=r,n.i=Math.min(e.i,n.i),e.merged=!0}(n,e)}}function o(n){return t=>{t.in.push(n),0===--t.indegree&&e.push(t)}}for(;e.length;){let n=e.pop();t.push(n),n.in.reverse().forEach(r(n)),n.out.forEach(o(n))}return t.filter(n=>!n.merged).map(e=>n.pick(e,["vs","i","barycenter","weight"]))}(Object.values(r).filter(n=>!n.indegree))},Gm}function Gf(){if(qm)return Km;qm=1;let n=(Ym||(Ym=1,Fm=function(n,e=[]){return e.map(e=>{let t=n.inEdges(e);if(t.length){let r=t.reduce((e,t)=>{let r=n.edge(t),o=n.node(t.v);return{sum:e.sum+r.weight*o.order,weight:e.weight+r.weight}},{sum:0,weight:0});return{v:e,barycenter:r.sum/r.weight,weight:r.weight}}return{v:e}})}),Fm),e=Yf(),t=function(){if(Zm)return Wm;Zm=1;let n=Af();function e(n,e,t){let r;for(;e.length&&(r=e[e.length-1]).i<=t;)e.pop(),n.push(r.vs),t++;return t}return Wm=function(t,r){let o=n.partition(t,n=>Object.hasOwn(n,"barycenter")),a=o.lhs,i=o.rhs.sort((n,e)=>e.i-n.i),s=[],l=0,d=0,c=0;var p;a.sort((p=!!r,(n,e)=>n.barycenter<e.barycenter?-1:n.barycenter>e.barycenter?1:p?e.i-n.i:n.i-e.i)),c=e(s,i,c),a.forEach(n=>{c+=n.vs.length,s.push(n.vs),l+=n.barycenter*n.weight,d+=n.weight,c=e(s,i,c)});let u={vs:s.flat(!0)};return d&&(u.barycenter=l/d,u.weight=d),u}}();return Km=function r(o,a,i,s){let l=o.children(a),d=o.node(a),c=d?d.borderLeft:void 0,p=d?d.borderRight:void 0,u={};c&&(l=l.filter(n=>n!==c&&n!==p));let b=n(o,l);b.forEach(n=>{if(o.children(n.v).length){let a=r(o,n.v,i,s);u[n.v]=a,Object.hasOwn(a,"barycenter")&&(t=a,void 0!==(e=n).barycenter?(e.barycenter=(e.barycenter*e.weight+t.barycenter*t.weight)/(e.weight+t.weight),e.weight+=t.weight):(e.barycenter=t.barycenter,e.weight=t.weight))}var e,t});let m=e(b,i);!function(n,e){n.forEach(n=>{n.vs=n.vs.flatMap(n=>e[n]?e[n].vs:n)})}(m,u);let f=t(m,s);if(c&&(f.vs=[c,f.vs,p].flat(!0),o.predecessors(c).length)){let n=o.node(o.predecessors(c)[0]),e=o.node(o.predecessors(p)[0]);Object.hasOwn(f,"barycenter")||(f.barycenter=0,f.weight=0),f.barycenter=(f.barycenter*f.weight+n.order+e.order)/(f.weight+2),f.weight+=2}return f},Km}function Xf(){if(Qm)return Um;Qm=1;let n=Pf().Graph,e=Af();return Um=function(t,r,o){let a=function(n){var t;for(;n.hasNode(t=e.uniqueId("_root")););return t}(t),i=new n({compound:!0}).setGraph({root:a}).setDefaultNodeLabel(n=>t.node(n));return t.nodes().forEach(n=>{let e=t.node(n),s=t.parent(n);(e.rank===r||e.minRank<=r&&r<=e.maxRank)&&(i.setNode(n),i.setParent(n,s||a),t[o](n).forEach(e=>{let r=e.v===n?e.w:e.v,o=i.edge(r,n),a=void 0!==o?o.weight:0;i.setEdge(r,n,{weight:t.edge(e).weight+a})}),Object.hasOwn(e,"minRank")&&i.setNode(n,{borderLeft:e.borderLeft[r],borderRight:e.borderRight[r]}))}),i},Um}function Wf(){if(tf)return ef;tf=1;let n=function(){if(Vm)return Bm;Vm=1;let n=Af();return Bm=function(e){let t={},r=e.nodes().filter(n=>!e.children(n).length),o=r.map(n=>e.node(n).rank),a=n.applyWithChunking(Math.max,o),i=n.range(a+1).map(()=>[]);return r.sort((n,t)=>e.node(n).rank-e.node(t).rank).forEach(function n(r){if(t[r])return;t[r]=!0;let o=e.node(r);i[o.rank].push(r),e.successors(r).forEach(n)}),i},Bm}(),e=function(){if(Hm)return $m;Hm=1;let n=Af().zipObject;function e(e,t,r){let o=n(r,r.map((n,e)=>e)),a=t.flatMap(n=>e.outEdges(n).map(n=>({pos:o[n.w],weight:e.edge(n).weight})).sort((n,e)=>n.pos-e.pos)),i=1;for(;i<r.length;)i<<=1;let s=2*i-1;i-=1;let l=new Array(s).fill(0),d=0;return a.forEach(n=>{let e=n.pos+i;l[e]+=n.weight;let t=0;for(;e>0;)e%2&&(t+=l[e+1]),e=e-1>>1,l[e]+=n.weight;d+=n.weight*t}),d}return $m=function(n,t){let r=0;for(let o=1;o<t.length;++o)r+=e(n,t[o-1],t[o]);return r},$m}(),t=Gf(),r=Xf(),o=(nf||(nf=1,Jm=function(n,e,t){let r,o={};t.forEach(t=>{let a,i,s=n.parent(t);for(;s;){if(a=n.parent(s),a?(i=o[a],o[a]=s):(i=r,r=s),i&&i!==s)return void e.setEdge(i,s);s=a}})}),Jm),a=Pf().Graph,i=Af();function s(n,e,t){return e.map(function(e){return r(n,e,t)})}function l(n,e){let r=new a;n.forEach(function(n){let a=n.graph().root,i=t(n,a,r,e);i.vs.forEach((e,t)=>n.node(e).order=t),o(n,r,i.vs)})}function d(n,e){Object.values(e).forEach(e=>e.forEach((e,t)=>n.node(e).order=t))}return ef=function t(r,o){if(o&&"function"==typeof o.customOrder)return void o.customOrder(r,t);let a=i.maxRank(r),c=s(r,i.range(1,a+1),"inEdges"),p=s(r,i.range(a-1,-1,-1),"outEdges"),u=n(r);if(d(r,u),o&&o.disableOptimalOrderHeuristic)return;let b,m=Number.POSITIVE_INFINITY;for(let n=0,t=0;t<4;++n,++t){l(n%2?c:p,n%4>=2),u=i.buildLayerMatrix(r);let o=e(r,u);o<m&&(t=0,b=Object.assign({},u),m=o)}d(r,b)},ef}function Zf(){if(of)return rf;of=1;let n=Pf().Graph,e=Af();function t(n,e){let t={};return e.length&&e.reduce(function(e,r){let a=0,i=0,s=e.length,l=r[r.length-1];return r.forEach((e,d)=>{let c=function(n,e){if(n.node(e).dummy)return n.predecessors(e).find(e=>n.node(e).dummy)}(n,e),p=c?n.node(c).order:s;(c||e===l)&&(r.slice(i,d+1).forEach(e=>{n.predecessors(e).forEach(r=>{let i=n.node(r),s=i.order;!(s<a||p<s)||i.dummy&&n.node(e).dummy||o(t,r,e)})}),i=d+1,a=p)}),r}),t}function r(n,t){let r={};function a(t,a,i,s,l){let d;e.range(a,i).forEach(e=>{d=t[e],n.node(d).dummy&&n.predecessors(d).forEach(e=>{let t=n.node(e);t.dummy&&(t.order<s||t.order>l)&&o(r,e,d)})})}return t.length&&t.reduce(function(e,t){let r,o=-1,i=0;return t.forEach((s,l)=>{if("border"===n.node(s).dummy){let e=n.predecessors(s);e.length&&(r=n.node(e[0]).order,a(t,i,l,o,r),i=l,o=r)}a(t,i,t.length,r,e.length)}),t}),r}function o(n,e,t){if(e>t){let n=e;e=t,t=n}let r=n[e];r||(n[e]=r={}),r[t]=!0}function a(n,e,t){if(e>t){let n=e;e=t,t=n}return!!n[e]&&Object.hasOwn(n[e],t)}function i(n,e,t,r){let o={},i={},s={};return e.forEach(n=>{n.forEach((n,e)=>{o[n]=n,i[n]=n,s[n]=e})}),e.forEach(n=>{let e=-1;n.forEach(n=>{let l=r(n);if(l.length){l=l.sort((n,e)=>s[n]-s[e]);let r=(l.length-1)/2;for(let d=Math.floor(r),c=Math.ceil(r);d<=c;++d){let r=l[d];i[n]===n&&e<s[r]&&!a(t,n,r)&&(i[r]=n,i[n]=o[n]=o[r],e=s[r])}}})}),{root:o,align:i}}function s(e,t,r,o,a){let i={},s=function(e,t,r,o){let a=new n,i=e.graph(),s=function(n,e,t){return(r,o,a)=>{let i,s=r.node(o),l=r.node(a),d=0;if(d+=s.width/2,Object.hasOwn(s,"labelpos"))switch(s.labelpos.toLowerCase()){case"l":i=-s.width/2;break;case"r":i=s.width/2}if(i&&(d+=t?i:-i),i=0,d+=(s.dummy?e:n)/2,d+=(l.dummy?e:n)/2,d+=l.width/2,Object.hasOwn(l,"labelpos"))switch(l.labelpos.toLowerCase()){case"l":i=l.width/2;break;case"r":i=-l.width/2}return i&&(d+=t?i:-i),i=0,d}}(i.nodesep,i.edgesep,o);return t.forEach(n=>{let t;n.forEach(n=>{let o=r[n];if(a.setNode(o),t){var i=r[t],l=a.edge(i,o);a.setEdge(i,o,Math.max(s(e,n,t),l||0))}t=n})}),a}(e,t,r,a),l=a?"borderLeft":"borderRight";function d(n,e){let t=s.nodes(),r=t.pop(),o={};for(;r;)o[r]?n(r):(o[r]=!0,t.push(r),t=t.concat(e(r))),r=t.pop()}return d(function(n){i[n]=s.inEdges(n).reduce((n,e)=>Math.max(n,i[e.v]+s.edge(e)),0)},s.predecessors.bind(s)),d(function(n){let t=s.outEdges(n).reduce((n,e)=>Math.min(n,i[e.w]-s.edge(e)),Number.POSITIVE_INFINITY),r=e.node(n);t!==Number.POSITIVE_INFINITY&&r.borderType!==l&&(i[n]=Math.max(i[n],t))},s.successors.bind(s)),Object.keys(o).forEach(n=>i[n]=i[r[n]]),i}function l(n,e){return Object.values(e).reduce((e,t)=>{let r=Number.NEGATIVE_INFINITY,o=Number.POSITIVE_INFINITY;Object.entries(t).forEach(([e,t])=>{let a=function(n,e){return n.node(e).width}(n,e)/2;r=Math.max(t+a,r),o=Math.min(t-a,o)});const a=r-o;return a<e[0]&&(e=[a,t]),e},[Number.POSITIVE_INFINITY,null])[1]}function d(n,t){let r=Object.values(t),o=e.applyWithChunking(Math.min,r),a=e.applyWithChunking(Math.max,r);["u","d"].forEach(r=>{["l","r"].forEach(i=>{let s=r+i,l=n[s];if(l===t)return;let d=Object.values(l),c=o-e.applyWithChunking(Math.min,d);"l"!==i&&(c=a-e.applyWithChunking(Math.max,d)),c&&(n[s]=e.mapValues(l,n=>n+c))})})}function c(n,t){return e.mapValues(n.ul,(e,r)=>{if(t)return n[t.toLowerCase()][r];{let e=Object.values(n).map(n=>n[r]).sort((n,e)=>n-e);return(e[1]+e[2])/2}})}return rf={positionX:function(n){let o,a=e.buildLayerMatrix(n),p=Object.assign(t(n,a),r(n,a)),u={};["u","d"].forEach(t=>{o="u"===t?a:Object.values(a).reverse(),["l","r"].forEach(r=>{"r"===r&&(o=o.map(n=>Object.values(n).reverse()));let a=("u"===t?n.predecessors:n.successors).bind(n),l=i(n,o,p,a),d=s(n,o,l.root,l.align,"r"===r);"r"===r&&(d=e.mapValues(d,n=>-n)),u[t+r]=d})});let b=l(n,u);return d(u,b),c(u,n.graph().align)},findType1Conflicts:t,findType2Conflicts:r,addConflict:o,hasConflict:a,verticalAlignment:i,horizontalCompaction:s,alignCoordinates:d,findSmallestWidthAlignment:l,balance:c}}function Kf(){if(sf)return af;sf=1;let n=Af(),e=Zf().positionX;return af=function(t){(function(e){let t=n.buildLayerMatrix(e),r=e.graph().ranksep,o=0;t.forEach(n=>{const t=n.reduce((n,t)=>{const r=e.node(t).height;return n>r?n:r},0);n.forEach(n=>e.node(n).y=o+t/2),o+=t+r})})(t=n.asNonCompoundGraph(t)),Object.entries(e(t)).forEach(([n,e])=>t.node(n).x=e)},af}function qf(){if(df)return lf;df=1;let n=If(),e=Df(),t=Vf(),r=Af().normalizeRanks,o=$f(),a=Af().removeEmptyRanks,i=Hf(),s=function(){if(Dm)return Im;Dm=1;let n=Af();function e(e,t,r,o,a,i){let s={width:0,height:0,rank:i,borderType:t},l=a[t][i-1],d=n.addDummyNode(e,"border",s,r);a[t][i]=d,e.setParent(d,o),l&&e.setEdge(l,d,{weight:1})}return Im=function(n){n.children().forEach(function t(r){let o=n.children(r),a=n.node(r);if(o.length&&o.forEach(t),Object.hasOwn(a,"minRank")){a.borderLeft=[],a.borderRight=[];for(let t=a.minRank,o=a.maxRank+1;t<o;++t)e(n,"borderLeft","_bl",r,a,t),e(n,"borderRight","_br",r,a,t)}})},Im}(),l=Ff(),d=Wf(),c=Kf(),p=Af(),u=Pf().Graph;lf=function(_,E){let S=E&&E.debugTiming?p.time:p.notime;S("layout",()=>{let O=S(" buildLayoutGraph",()=>function(n){let e=new u({multigraph:!0,compound:!0}),t=k(n.graph());return e.setGraph(Object.assign({},m,y(t,b),p.pick(t,f))),n.nodes().forEach(t=>{const r=y(k(n.node(t)),g);Object.keys(h).forEach(n=>{void 0===r[n]&&(r[n]=h[n])}),e.setNode(t,r),e.setParent(t,n.parent(t))}),n.edges().forEach(t=>{let r=k(n.edge(t));e.setEdge(t,Object.assign({},x,y(r,v),p.pick(r,w)))}),e}(_));S(" runLayout",()=>function(u,b,m){b(" makeSpaceForEdgeLabels",()=>function(n){let e=n.graph();e.ranksep/=2,n.edges().forEach(t=>{let r=n.edge(t);r.minlen*=2,"c"!==r.labelpos.toLowerCase()&&("TB"===e.rankdir||"BT"===e.rankdir?r.width+=r.labeloffset:r.height+=r.labeloffset)})}(u)),b(" removeSelfEdges",()=>function(n){n.edges().forEach(e=>{if(e.v===e.w){var t=n.node(e.v);t.selfEdges||(t.selfEdges=[]),t.selfEdges.push({e:e,label:n.edge(e)}),n.removeEdge(e)}})}(u)),b(" acyclic",()=>n.run(u)),b(" nestingGraph.run",()=>i.run(u)),b(" rank",()=>t(p.asNonCompoundGraph(u))),b(" injectEdgeLabelProxies",()=>function(n){n.edges().forEach(e=>{let t=n.edge(e);if(t.width&&t.height){let t=n.node(e.v),r={rank:(n.node(e.w).rank-t.rank)/2+t.rank,e:e};p.addDummyNode(n,"edge-proxy",r,"_ep")}})}(u)),b(" removeEmptyRanks",()=>a(u)),b(" nestingGraph.cleanup",()=>i.cleanup(u)),b(" normalizeRanks",()=>r(u)),b(" assignRankMinMax",()=>function(n){let e=0;n.nodes().forEach(t=>{let r=n.node(t);r.borderTop&&(r.minRank=n.node(r.borderTop).rank,r.maxRank=n.node(r.borderBottom).rank,e=Math.max(e,r.maxRank))}),n.graph().maxRank=e}(u)),b(" removeEdgeLabelProxies",()=>function(n){n.nodes().forEach(e=>{let t=n.node(e);"edge-proxy"===t.dummy&&(n.edge(t.e).labelRank=t.rank,n.removeNode(e))})}(u)),b(" normalize.run",()=>e.run(u)),b(" parentDummyChains",()=>o(u)),b(" addBorderSegments",()=>s(u)),b(" order",()=>d(u,m)),b(" insertSelfEdges",()=>function(n){var e=p.buildLayerMatrix(n);e.forEach(e=>{var t=0;e.forEach((e,r)=>{var o=n.node(e);o.order=r+t,(o.selfEdges||[]).forEach(e=>{p.addDummyNode(n,"selfedge",{width:e.label.width,height:e.label.height,rank:o.rank,order:r+ ++t,e:e.e,label:e.label},"_se")}),delete o.selfEdges})})}(u)),b(" adjustCoordinateSystem",()=>l.adjust(u)),b(" position",()=>c(u)),b(" positionSelfEdges",()=>function(n){n.nodes().forEach(e=>{var t=n.node(e);if("selfedge"===t.dummy){var r=n.node(t.e.v),o=r.x+r.width/2,a=r.y,i=t.x-o,s=r.height/2;n.setEdge(t.e,t.label),n.removeNode(e),t.label.points=[{x:o+2*i/3,y:a-s},{x:o+5*i/6,y:a-s},{x:o+i,y:a},{x:o+5*i/6,y:a+s},{x:o+2*i/3,y:a+s}],t.label.x=t.x,t.label.y=t.y}})}(u)),b(" removeBorderNodes",()=>function(n){n.nodes().forEach(e=>{if(n.children(e).length){let t=n.node(e),r=n.node(t.borderTop),o=n.node(t.borderBottom),a=n.node(t.borderLeft[t.borderLeft.length-1]),i=n.node(t.borderRight[t.borderRight.length-1]);t.width=Math.abs(i.x-a.x),t.height=Math.abs(o.y-r.y),t.x=a.x+t.width/2,t.y=r.y+t.height/2}}),n.nodes().forEach(e=>{"border"===n.node(e).dummy&&n.removeNode(e)})}(u)),b(" normalize.undo",()=>e.undo(u)),b(" fixupEdgeLabelCoords",()=>function(n){n.edges().forEach(e=>{let t=n.edge(e);if(Object.hasOwn(t,"x"))switch("l"!==t.labelpos&&"r"!==t.labelpos||(t.width-=t.labeloffset),t.labelpos){case"l":t.x-=t.width/2+t.labeloffset;break;case"r":t.x+=t.width/2+t.labeloffset}})}(u)),b(" undoCoordinateSystem",()=>l.undo(u)),b(" translateGraph",()=>function(n){let e=Number.POSITIVE_INFINITY,t=0,r=Number.POSITIVE_INFINITY,o=0,a=n.graph(),i=a.marginx||0,s=a.marginy||0;function l(n){let a=n.x,i=n.y,s=n.width,l=n.height;e=Math.min(e,a-s/2),t=Math.max(t,a+s/2),r=Math.min(r,i-l/2),o=Math.max(o,i+l/2)}n.nodes().forEach(e=>l(n.node(e))),n.edges().forEach(e=>{let t=n.edge(e);Object.hasOwn(t,"x")&&l(t)}),e-=i,r-=s,n.nodes().forEach(t=>{let o=n.node(t);o.x-=e,o.y-=r}),n.edges().forEach(t=>{let o=n.edge(t);o.points.forEach(n=>{n.x-=e,n.y-=r}),Object.hasOwn(o,"x")&&(o.x-=e),Object.hasOwn(o,"y")&&(o.y-=r)}),a.width=t-e+i,a.height=o-r+s}(u)),b(" assignNodeIntersects",()=>function(n){n.edges().forEach(e=>{let t,r,o=n.edge(e),a=n.node(e.v),i=n.node(e.w);o.points?(t=o.points[0],r=o.points[o.points.length-1]):(o.points=[],t=i,r=a),o.points.unshift(p.intersectRect(a,t)),o.points.push(p.intersectRect(i,r))})}(u)),b(" reversePoints",()=>function(n){n.edges().forEach(e=>{let t=n.edge(e);t.reversed&&t.points.reverse()})}(u)),b(" acyclic.undo",()=>n.undo(u))}(O,S,E)),S(" updateInputGraph",()=>function(n,e){n.nodes().forEach(t=>{let r=n.node(t),o=e.node(t);r&&(r.x=o.x,r.y=o.y,r.rank=o.rank,e.children(t).length&&(r.width=o.width,r.height=o.height))}),n.edges().forEach(t=>{let r=n.edge(t),o=e.edge(t);r.points=o.points,Object.hasOwn(o,"x")&&(r.x=o.x,r.y=o.y)}),n.graph().width=e.graph().width,n.graph().height=e.graph().height}(_,O))})};let b=["nodesep","edgesep","ranksep","marginx","marginy"],m={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},f=["acyclicer","ranker","rankdir","align"],g=["width","height","rank"],h={width:0,height:0},v=["minlen","weight","width","height","labeloffset"],x={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},w=["labelpos"];function y(n,e){return p.mapValues(p.pick(n,e),Number)}function k(n){var e={};return n&&Object.entries(n).forEach(([n,t])=>{"string"==typeof n&&(n=n.toLowerCase()),e[n]=t}),e}return lf}function Uf(){if(pf)return cf;pf=1;let n=Af(),e=Pf().Graph;return cf={debugOrdering:function(t){let r=n.buildLayerMatrix(t),o=new e({compound:!0,multigraph:!0}).setGraph({});return t.nodes().forEach(n=>{o.setNode(n,{label:n}),o.setParent(n,"layer"+t.node(n).rank)}),t.edges().forEach(n=>o.setEdge(n.v,n.w,{},n.name)),r.forEach((n,e)=>{let t="layer"+e;o.setNode(t,{rank:"same"}),n.reduce((n,e)=>(o.setEdge(n,e,{style:"invis"}),e))}),o}},cf}o("/* this gets exported as style.css and can be used for the default theming */\n/* these are the necessary styles for React/Svelte Flow, they get used by base.css and style.css */\n.react-flow {\n direction: ltr;\n\n --xy-edge-stroke-default: #b1b1b7;\n --xy-edge-stroke-width-default: 1;\n --xy-edge-stroke-selected-default: #555;\n\n --xy-connectionline-stroke-default: #b1b1b7;\n --xy-connectionline-stroke-width-default: 1;\n\n --xy-attribution-background-color-default: rgba(255, 255, 255, 0.5);\n\n --xy-minimap-background-color-default: #fff;\n --xy-minimap-mask-background-color-default: rgba(240, 240, 240, 0.6);\n --xy-minimap-mask-stroke-color-default: transparent;\n --xy-minimap-mask-stroke-width-default: 1;\n --xy-minimap-node-background-color-default: #e2e2e2;\n --xy-minimap-node-stroke-color-default: transparent;\n --xy-minimap-node-stroke-width-default: 2;\n\n --xy-background-color-default: transparent;\n --xy-background-pattern-dots-color-default: #91919a;\n --xy-background-pattern-lines-color-default: #eee;\n --xy-background-pattern-cross-color-default: #e2e2e2;\n background-color: var(--xy-background-color, var(--xy-background-color-default));\n --xy-node-color-default: inherit;\n --xy-node-border-default: 1px solid #1a192b;\n --xy-node-background-color-default: #fff;\n --xy-node-group-background-color-default: rgba(240, 240, 240, 0.25);\n --xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, 0.08);\n --xy-node-boxshadow-selected-default: 0 0 0 0.5px #1a192b;\n --xy-node-border-radius-default: 3px;\n\n --xy-handle-background-color-default: #1a192b;\n --xy-handle-border-color-default: #fff;\n\n --xy-selection-background-color-default: rgba(0, 89, 220, 0.08);\n --xy-selection-border-default: 1px dotted rgba(0, 89, 220, 0.8);\n\n --xy-controls-button-background-color-default: #fefefe;\n --xy-controls-button-background-color-hover-default: #f4f4f4;\n --xy-controls-button-color-default: inherit;\n --xy-controls-button-color-hover-default: inherit;\n --xy-controls-button-border-color-default: #eee;\n --xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, 0.08);\n\n --xy-edge-label-background-color-default: #ffffff;\n --xy-edge-label-color-default: inherit;\n --xy-resize-background-color-default: #3367d9;\n}\n.react-flow.dark {\n --xy-edge-stroke-default: #3e3e3e;\n --xy-edge-stroke-width-default: 1;\n --xy-edge-stroke-selected-default: #727272;\n\n --xy-connectionline-stroke-default: #b1b1b7;\n --xy-connectionline-stroke-width-default: 1;\n\n --xy-attribution-background-color-default: rgba(150, 150, 150, 0.25);\n\n --xy-minimap-background-color-default: #141414;\n --xy-minimap-mask-background-color-default: rgba(60, 60, 60, 0.6);\n --xy-minimap-mask-stroke-color-default: transparent;\n --xy-minimap-mask-stroke-width-default: 1;\n --xy-minimap-node-background-color-default: #2b2b2b;\n --xy-minimap-node-stroke-color-default: transparent;\n --xy-minimap-node-stroke-width-default: 2;\n\n --xy-background-color-default: #141414;\n --xy-background-pattern-dots-color-default: #777;\n --xy-background-pattern-lines-color-default: #777;\n --xy-background-pattern-cross-color-default: #777;\n --xy-node-color-default: #f8f8f8;\n --xy-node-border-default: 1px solid #3c3c3c;\n --xy-node-background-color-default: #1e1e1e;\n --xy-node-group-background-color-default: rgba(240, 240, 240, 0.25);\n --xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, 0.08);\n --xy-node-boxshadow-selected-default: 0 0 0 0.5px #999;\n\n --xy-handle-background-color-default: #bebebe;\n --xy-handle-border-color-default: #1e1e1e;\n\n --xy-selection-background-color-default: rgba(200, 200, 220, 0.08);\n --xy-selection-border-default: 1px dotted rgba(200, 200, 220, 0.8);\n\n --xy-controls-button-background-color-default: #2b2b2b;\n --xy-controls-button-background-color-hover-default: #3e3e3e;\n --xy-controls-button-color-default: #f8f8f8;\n --xy-controls-button-color-hover-default: #fff;\n --xy-controls-button-border-color-default: #5b5b5b;\n --xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, 0.08);\n\n --xy-edge-label-background-color-default: #141414;\n --xy-edge-label-color-default: #f8f8f8;\n}\n.react-flow__background {\n background-color: var(--xy-background-color-props, var(--xy-background-color, var(--xy-background-color-default)));\n pointer-events: none;\n z-index: -1;\n}\n.react-flow__container {\n position: absolute;\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n}\n.react-flow__pane {\n z-index: 1;\n}\n.react-flow__pane.draggable {\n cursor: grab;\n }\n.react-flow__pane.dragging {\n cursor: grabbing;\n }\n.react-flow__pane.selection {\n cursor: pointer;\n }\n.react-flow__viewport {\n transform-origin: 0 0;\n z-index: 2;\n pointer-events: none;\n}\n.react-flow__renderer {\n z-index: 4;\n}\n.react-flow__selection {\n z-index: 6;\n}\n.react-flow__nodesselection-rect:focus,\n.react-flow__nodesselection-rect:focus-visible {\n outline: none;\n}\n.react-flow__edge-path {\n stroke: var(--xy-edge-stroke, var(--xy-edge-stroke-default));\n stroke-width: var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));\n fill: none;\n}\n.react-flow__connection-path {\n stroke: var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));\n stroke-width: var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));\n fill: none;\n}\n.react-flow .react-flow__edges {\n position: absolute;\n}\n.react-flow .react-flow__edges svg {\n overflow: visible;\n position: absolute;\n pointer-events: none;\n }\n.react-flow__edge {\n pointer-events: visibleStroke;\n}\n.react-flow__edge.selectable {\n cursor: pointer;\n }\n.react-flow__edge.animated path {\n stroke-dasharray: 5;\n animation: dashdraw 0.5s linear infinite;\n }\n.react-flow__edge.animated path.react-flow__edge-interaction {\n stroke-dasharray: none;\n animation: none;\n }\n.react-flow__edge.inactive {\n pointer-events: none;\n }\n.react-flow__edge.selected,\n .react-flow__edge:focus,\n .react-flow__edge:focus-visible {\n outline: none;\n }\n.react-flow__edge.selected .react-flow__edge-path,\n .react-flow__edge.selectable:focus .react-flow__edge-path,\n .react-flow__edge.selectable:focus-visible .react-flow__edge-path {\n stroke: var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default));\n }\n.react-flow__edge-textwrapper {\n pointer-events: all;\n }\n.react-flow__edge .react-flow__edge-text {\n pointer-events: none;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n }\n.react-flow__connection {\n pointer-events: none;\n}\n.react-flow__connection .animated {\n stroke-dasharray: 5;\n animation: dashdraw 0.5s linear infinite;\n }\nsvg.react-flow__connectionline {\n z-index: 1001;\n overflow: visible;\n position: absolute;\n}\n.react-flow__nodes {\n pointer-events: none;\n transform-origin: 0 0;\n}\n.react-flow__node {\n position: absolute;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n pointer-events: all;\n transform-origin: 0 0;\n box-sizing: border-box;\n cursor: default;\n}\n.react-flow__node.selectable {\n cursor: pointer;\n }\n.react-flow__node.draggable {\n cursor: grab;\n pointer-events: all;\n }\n.react-flow__node.draggable.dragging {\n cursor: grabbing;\n }\n.react-flow__nodesselection {\n z-index: 3;\n transform-origin: left top;\n pointer-events: none;\n}\n.react-flow__nodesselection-rect {\n position: absolute;\n pointer-events: all;\n cursor: grab;\n }\n.react-flow__handle {\n position: absolute;\n pointer-events: none;\n min-width: 5px;\n min-height: 5px;\n width: 6px;\n height: 6px;\n background-color: var(--xy-handle-background-color, var(--xy-handle-background-color-default));\n border: 1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));\n border-radius: 100%;\n}\n.react-flow__handle.connectingfrom {\n pointer-events: all;\n }\n.react-flow__handle.connectionindicator {\n pointer-events: all;\n cursor: crosshair;\n }\n.react-flow__handle-bottom {\n top: auto;\n left: 50%;\n bottom: 0;\n transform: translate(-50%, 50%);\n }\n.react-flow__handle-top {\n top: 0;\n left: 50%;\n transform: translate(-50%, -50%);\n }\n.react-flow__handle-left {\n top: 50%;\n left: 0;\n transform: translate(-50%, -50%);\n }\n.react-flow__handle-right {\n top: 50%;\n right: 0;\n transform: translate(50%, -50%);\n }\n.react-flow__edgeupdater {\n cursor: move;\n pointer-events: all;\n}\n.react-flow__pane.selection .react-flow__panel {\n pointer-events: none;\n}\n.react-flow__panel {\n position: absolute;\n z-index: 5;\n margin: 15px;\n}\n.react-flow__panel.top {\n top: 0;\n }\n.react-flow__panel.bottom {\n bottom: 0;\n }\n.react-flow__panel.top.center, .react-flow__panel.bottom.center {\n left: 50%;\n transform: translateX(-15px) translateX(-50%);\n }\n.react-flow__panel.left {\n left: 0;\n }\n.react-flow__panel.right {\n right: 0;\n }\n.react-flow__panel.left.center, .react-flow__panel.right.center {\n top: 50%;\n transform: translateY(-15px) translateY(-50%);\n }\n.react-flow__attribution {\n font-size: 10px;\n background: var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));\n padding: 2px 3px;\n margin: 0;\n}\n.react-flow__attribution a {\n text-decoration: none;\n color: #999;\n }\n@keyframes dashdraw {\n from {\n stroke-dashoffset: 10;\n }\n}\n.react-flow__edgelabel-renderer {\n position: absolute;\n width: 100%;\n height: 100%;\n pointer-events: none;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n left: 0;\n top: 0;\n}\n.react-flow__viewport-portal {\n position: absolute;\n width: 100%;\n height: 100%;\n left: 0;\n top: 0;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n}\n.react-flow__minimap {\n background: var(\n --xy-minimap-background-color-props,\n var(--xy-minimap-background-color, var(--xy-minimap-background-color-default))\n );\n}\n.react-flow__minimap-svg {\n display: block;\n }\n.react-flow__minimap-mask {\n fill: var(\n --xy-minimap-mask-background-color-props,\n var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default))\n );\n stroke: var(\n --xy-minimap-mask-stroke-color-props,\n var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default))\n );\n stroke-width: var(\n --xy-minimap-mask-stroke-width-props,\n var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default))\n );\n }\n.react-flow__minimap-node {\n fill: var(\n --xy-minimap-node-background-color-props,\n var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default))\n );\n stroke: var(\n --xy-minimap-node-stroke-color-props,\n var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default))\n );\n stroke-width: var(\n --xy-minimap-node-stroke-width-props,\n var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default))\n );\n }\n.react-flow__background-pattern.dots {\n fill: var(\n --xy-background-pattern-color-props,\n var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default))\n );\n }\n.react-flow__background-pattern.lines {\n stroke: var(\n --xy-background-pattern-color-props,\n var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default))\n );\n }\n.react-flow__background-pattern.cross {\n stroke: var(\n --xy-background-pattern-color-props,\n var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default))\n );\n }\n.react-flow__controls {\n display: flex;\n flex-direction: column;\n box-shadow: var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default));\n}\n.react-flow__controls.horizontal {\n flex-direction: row;\n }\n.react-flow__controls-button {\n display: flex;\n justify-content: center;\n align-items: center;\n height: 26px;\n width: 26px;\n padding: 4px;\n border: none;\n background: var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));\n border-bottom: 1px solid\n var(\n --xy-controls-button-border-color-props,\n var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default))\n );\n color: var(\n --xy-controls-button-color-props,\n var(--xy-controls-button-color, var(--xy-controls-button-color-default))\n );\n cursor: pointer;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n }\n.react-flow__controls-button svg {\n width: 100%;\n max-width: 12px;\n max-height: 12px;\n fill: currentColor;\n }\n.react-flow__edge.updating .react-flow__edge-path {\n stroke: #777;\n }\n.react-flow__edge-text {\n font-size: 10px;\n }\n.react-flow__node.selectable:focus,\n .react-flow__node.selectable:focus-visible {\n outline: none;\n }\n.react-flow__node-input,\n.react-flow__node-default,\n.react-flow__node-output,\n.react-flow__node-group {\n padding: 10px;\n border-radius: var(--xy-node-border-radius, var(--xy-node-border-radius-default));\n width: 150px;\n font-size: 12px;\n color: var(--xy-node-color, var(--xy-node-color-default));\n text-align: center;\n border: var(--xy-node-border, var(--xy-node-border-default));\n background-color: var(--xy-node-background-color, var(--xy-node-background-color-default));\n}\n.react-flow__node-input.selectable:hover, .react-flow__node-default.selectable:hover, .react-flow__node-output.selectable:hover, .react-flow__node-group.selectable:hover {\n box-shadow: var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default));\n }\n.react-flow__node-input.selectable.selected,\n .react-flow__node-input.selectable:focus,\n .react-flow__node-input.selectable:focus-visible,\n .react-flow__node-default.selectable.selected,\n .react-flow__node-default.selectable:focus,\n .react-flow__node-default.selectable:focus-visible,\n .react-flow__node-output.selectable.selected,\n .react-flow__node-output.selectable:focus,\n .react-flow__node-output.selectable:focus-visible,\n .react-flow__node-group.selectable.selected,\n .react-flow__node-group.selectable:focus,\n .react-flow__node-group.selectable:focus-visible {\n box-shadow: var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default));\n }\n.react-flow__node-group {\n background-color: var(--xy-node-group-background-color, var(--xy-node-group-background-color-default));\n}\n.react-flow__nodesselection-rect,\n.react-flow__selection {\n background: var(--xy-selection-background-color, var(--xy-selection-background-color-default));\n border: var(--xy-selection-border, var(--xy-selection-border-default));\n}\n.react-flow__nodesselection-rect:focus,\n .react-flow__nodesselection-rect:focus-visible,\n .react-flow__selection:focus,\n .react-flow__selection:focus-visible {\n outline: none;\n }\n.react-flow__controls-button:hover {\n background: var(\n --xy-controls-button-background-color-hover-props,\n var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default))\n );\n color: var(\n --xy-controls-button-color-hover-props,\n var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default))\n );\n }\n.react-flow__controls-button:disabled {\n pointer-events: none;\n }\n.react-flow__controls-button:disabled svg {\n fill-opacity: 0.4;\n }\n.react-flow__controls-button:last-child {\n border-bottom: none;\n }\n.react-flow__controls.horizontal .react-flow__controls-button {\n border-bottom: none;\n border-right: 1px solid\n var(\n --xy-controls-button-border-color-props,\n var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default))\n );\n }\n.react-flow__controls.horizontal .react-flow__controls-button:last-child {\n border-right: none;\n }\n.react-flow__resize-control {\n position: absolute;\n}\n.react-flow__resize-control.left,\n.react-flow__resize-control.right {\n cursor: ew-resize;\n}\n.react-flow__resize-control.top,\n.react-flow__resize-control.bottom {\n cursor: ns-resize;\n}\n.react-flow__resize-control.top.left,\n.react-flow__resize-control.bottom.right {\n cursor: nwse-resize;\n}\n.react-flow__resize-control.bottom.left,\n.react-flow__resize-control.top.right {\n cursor: nesw-resize;\n}\n/* handle styles */\n.react-flow__resize-control.handle {\n width: 5px;\n height: 5px;\n border: 1px solid #fff;\n border-radius: 1px;\n background-color: var(--xy-resize-background-color, var(--xy-resize-background-color-default));\n translate: -50% -50%;\n}\n.react-flow__resize-control.handle.left {\n left: 0;\n top: 50%;\n}\n.react-flow__resize-control.handle.right {\n left: 100%;\n top: 50%;\n}\n.react-flow__resize-control.handle.top {\n left: 50%;\n top: 0;\n}\n.react-flow__resize-control.handle.bottom {\n left: 50%;\n top: 100%;\n}\n.react-flow__resize-control.handle.top.left {\n left: 0;\n}\n.react-flow__resize-control.handle.bottom.left {\n left: 0;\n}\n.react-flow__resize-control.handle.top.right {\n left: 100%;\n}\n.react-flow__resize-control.handle.bottom.right {\n left: 100%;\n}\n/* line styles */\n.react-flow__resize-control.line {\n border-color: var(--xy-resize-background-color, var(--xy-resize-background-color-default));\n border-width: 0;\n border-style: solid;\n}\n.react-flow__resize-control.line.left,\n.react-flow__resize-control.line.right {\n width: 1px;\n transform: translate(-50%, 0);\n top: 0;\n height: 100%;\n}\n.react-flow__resize-control.line.left {\n left: 0;\n border-left-width: 1px;\n}\n.react-flow__resize-control.line.right {\n left: 100%;\n border-right-width: 1px;\n}\n.react-flow__resize-control.line.top,\n.react-flow__resize-control.line.bottom {\n height: 1px;\n transform: translate(0, -50%);\n left: 0;\n width: 100%;\n}\n.react-flow__resize-control.line.top {\n top: 0;\n border-top-width: 1px;\n}\n.react-flow__resize-control.line.bottom {\n border-bottom-width: 1px;\n top: 100%;\n}\n.react-flow__edge-textbg {\n fill: var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default));\n}\n.react-flow__edge-text {\n fill: var(--xy-edge-label-color, var(--xy-edge-label-color-default));\n}\n");var Qf=a(ff?mf:(ff=1,mf={graphlib:Pf(),layout:qf(),debug:Uf(),util:{time:Af().time,notime:Af().notime},version:bf?uf:(bf=1,uf="1.1.5")})),Jf={type:wl.ArrowClosed,width:20,height:20,color:"#FF0072"},ng={strokeWidth:2,stroke:"#FF0072"},eg=function(t){var r=t.tree,o=Cp().fitView,a=function(n){const[t,r]=e.useState(n),o=e.useCallback(n=>r(e=>mp(n,e)),[]);return[t,r,o]}([]),i=Y(a,3),s=i[0],l=i[1],d=i[2],c=function(n){const[t,r]=e.useState(n),o=e.useCallback(n=>r(e=>fp(n,e)),[]);return[t,r,o]}([]),p=Y(c,3),u=p[0],b=p[1],m=p[2];return e.useEffect(function(){if(r){var n,e=function(n,e){var t=[],r=[];return Object.keys(n).forEach(function(o,a){n[o].forEach(function(n,a){var i={id:n,flowId:n,position:{x:250,y:200*a},data:{label:String(n)}};if(0==a&&(i.type="input"),a>0){var s=r[r.length-1],l={id:s.flowId+"-"+o+"-"+a+"-"+i.flowId,source:s.flowId,target:i.flowId,animated:e,markerEnd:Jf,style:ng};t.push(l)}r.push(i)})}),{nodes:r,edges:t}}(r.data,null!==(n=r.animated)&&void 0!==n&&n),t=function(n,e,t){var r=(new Qf.graphlib.Graph).setDefaultEdgeLabel(function(){return{}});return r.setGraph({rankdir:t.direction,ranksep:100,nodesep:170}),e.forEach(function(n){return r.setEdge(n.source,n.target)}),n.forEach(function(n){var e,t,o,a;return r.setNode(n.id,F(F({},n),{},{width:null!==(e=null===(t=n.measured)||void 0===t?void 0:t.width)&&void 0!==e?e:0,height:null!==(o=null===(a=n.measured)||void 0===a?void 0:a.height)&&void 0!==o?o:0}))}),Qf.layout(r),{nodes:n.map(function(n){var e,t,o,a,i=r.node(n.id),s=i.x-(null!==(e=null===(t=n.measured)||void 0===t?void 0:t.width)&&void 0!==e?e:0)/2,l=i.y-(null!==(o=null===(a=n.measured)||void 0===a?void 0:a.height)&&void 0!==o?o:0)/2;return F(F({},n),{},{position:{x:s,y:l}})}),edges:e}}(e.nodes,e.edges,{direction:r.orientation});l(G(t.nodes)),b(G(t.edges)),o()}},[r]),n.jsx(ab,{nodes:s,edges:u,onNodesChange:d,onEdgesChange:m,colorMode:"dark",fitView:!0,children:n.jsx(xb,{})})};exports.FlowDiagram=function(t){var r=t.treeInfo,o=Y(e.useState(),2),a=o[0],i=o[1];return e.useEffect(function(){i(r)},[r]),n.jsx(eb,{children:n.jsx(eg,{tree:a})})},exports.StackList=B,exports.Viewer=so;
46
+ */var Yc=(Hc||(Hc=1,"production"===process.env.NODE_ENV?Pc.exports=function(){if(Lc)return Rc;Lc=1;var n=e,t=Vc(),r="function"==typeof Object.is?Object.is:function(n,e){return n===e&&(0!==n||1/n==1/e)||n!=n&&e!=e},o=t.useSyncExternalStore,a=n.useRef,i=n.useEffect,s=n.useMemo,l=n.useDebugValue;return Rc.useSyncExternalStoreWithSelector=function(n,e,t,d,c){var p=a(null);if(null===p.current){var u={hasValue:!1,value:null};p.current=u}else u=p.current;p=s(function(){function n(n){if(!i){if(i=!0,o=n,n=d(n),void 0!==c&&u.hasValue){var e=u.value;if(c(e,n))return a=e}return a=n}if(e=a,r(o,n))return e;var t=d(n);return void 0!==c&&c(e,t)?(o=n,e):(o=n,a=t)}var o,a,i=!1,s=void 0===t?null:t;return[function(){return n(e())},null===s?void 0:function(){return n(s())}]},[e,t,d,c]);var b=o(n,p[0],p[1]);return i(function(){u.hasValue=!0,u.value=b},[b]),l(b),b},Rc}():Pc.exports=($c||($c=1,"production"!==process.env.NODE_ENV&&function(){"undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var n=e,t=Vc(),r="function"==typeof Object.is?Object.is:function(n,e){return n===e&&(0!==n||1/n==1/e)||n!=n&&e!=e},o=t.useSyncExternalStore,a=n.useRef,i=n.useEffect,s=n.useMemo,l=n.useDebugValue;Fc.useSyncExternalStoreWithSelector=function(n,e,t,d,c){var p=a(null);if(null===p.current){var u={hasValue:!1,value:null};p.current=u}else u=p.current;p=s(function(){function n(n){if(!i){if(i=!0,o=n,n=d(n),void 0!==c&&u.hasValue){var e=u.value;if(c(e,n))return a=e}return a=n}if(e=a,r(o,n))return e;var t=d(n);return void 0!==c&&c(e,t)?(o=n,e):(o=n,a=t)}var o,a,i=!1,s=void 0===t?null:t;return[function(){return n(e())},null===s?void 0:function(){return n(s())}]},[e,t,d,c]);var b=o(n,p[0],p[1]);return i(function(){u.hasValue=!0,u.value=b},[b]),l(b),b},"undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())}()),Fc)),Pc.exports),Gc=i(Yc);const Xc=n=>{let e;const t=new Set,r=(n,r)=>{const o="function"==typeof n?n(e):n;if(!Object.is(o,e)){const n=e;e=(null!=r?r:"object"!=typeof o||null===o)?o:Object.assign({},e,o),t.forEach(t=>t(e,n))}},o=()=>e,a={setState:r,getState:o,getInitialState:()=>i,subscribe:n=>(t.add(n),()=>t.delete(n)),destroy:()=>{console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected."),t.clear()}},i=e=n(r,o,a);return a},{useDebugValue:qc}=e,{useSyncExternalStoreWithSelector:Wc}=Gc,Zc=n=>n;function Kc(n,e=Zc,t){const r=Wc(n.subscribe,n.getState,n.getServerState||n.getInitialState,e,t);return qc(r),r}const Uc=(n,e)=>{const t=(n=>n?Xc(n):Xc)(n),r=(n,r=e)=>Kc(t,n,r);return Object.assign(r,t),r};function Qc(n,e){if(Object.is(n,e))return!0;if("object"!=typeof n||null===n||"object"!=typeof e||null===e)return!1;if(n instanceof Map&&e instanceof Map){if(n.size!==e.size)return!1;for(const[t,r]of n)if(!Object.is(r,e.get(t)))return!1;return!0}if(n instanceof Set&&e instanceof Set){if(n.size!==e.size)return!1;for(const t of n)if(!e.has(t))return!1;return!0}const t=Object.keys(n);if(t.length!==Object.keys(e).length)return!1;for(const r of t)if(!Object.prototype.hasOwnProperty.call(e,r)||!Object.is(n[r],e[r]))return!1;return!0}const Jc=e.createContext(null),np=Jc.Provider,ep=vl();function tp(n,t){const r=e.useContext(Jc);if(null===r)throw new Error(ep);return Kc(r,n,t)}function rp(){const n=e.useContext(Jc);if(null===n)throw new Error(ep);return e.useMemo(()=>({getState:n.getState,setState:n.setState,subscribe:n.subscribe}),[n])}const op={display:"none"},ap={position:"absolute",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)",clipPath:"inset(100%)"},ip="react-flow__node-desc",sp="react-flow__edge-desc",lp=n=>n.ariaLiveMessage,dp=n=>n.ariaLabelConfig;function cp({rfId:e}){const t=tp(lp);return n.jsx("div",{id:`react-flow__aria-live-${e}`,"aria-live":"assertive","aria-atomic":"true",style:ap,children:t})}function pp({rfId:e,disableKeyboardA11y:t}){const r=tp(dp);return n.jsxs(n.Fragment,{children:[n.jsx("div",{id:`${ip}-${e}`,style:op,children:t?r["node.a11yDescription.default"]:r["node.a11yDescription.keyboardDisabled"]}),n.jsx("div",{id:`${sp}-${e}`,style:op,children:r["edge.a11yDescription.default"]}),!t&&n.jsx(cp,{rfId:e})]})}const up=e.forwardRef(({position:e="top-left",children:t,className:r,style:o,...a},i)=>{const s=`${e}`.split("-");return n.jsx("div",{className:No(["react-flow__panel",r,...s]),style:o,ref:i,...a,children:t})});function bp({proOptions:e,position:t="bottom-right"}){return e?.hideAttribution?null:n.jsx(up,{position:t,className:"react-flow__attribution","data-message":"Please only hide this attribution when you are subscribed to React Flow Pro: https://pro.reactflow.dev",children:n.jsx("a",{href:"https://reactflow.dev",target:"_blank",rel:"noopener noreferrer","aria-label":"React Flow attribution",children:"React Flow"})})}up.displayName="Panel";const mp=n=>{const e=[],t=[];for(const[,t]of n.nodeLookup)t.selected&&e.push(t.internals.userNode);for(const[,e]of n.edgeLookup)e.selected&&t.push(e);return{selectedNodes:e,selectedEdges:t}},fp=n=>n.id;function gp(n,e){return Qc(n.selectedNodes.map(fp),e.selectedNodes.map(fp))&&Qc(n.selectedEdges.map(fp),e.selectedEdges.map(fp))}function hp({onSelectionChange:n}){const t=rp(),{selectedNodes:r,selectedEdges:o}=tp(mp,gp);return e.useEffect(()=>{const e={nodes:r,edges:o};n?.(e),t.getState().onSelectionChangeHandlers.forEach(n=>n(e))},[r,o,n]),null}const vp=n=>!!n.onSelectionChangeHandlers;function xp({onSelectionChange:e}){const t=tp(vp);return e||t?n.jsx(hp,{onSelectionChange:e}):null}const wp=[0,0],yp={x:0,y:0,zoom:1},kp=["nodes","edges","defaultNodes","defaultEdges","onConnect","onConnectStart","onConnectEnd","onClickConnectStart","onClickConnectEnd","nodesDraggable","autoPanOnNodeFocus","nodesConnectable","nodesFocusable","edgesFocusable","edgesReconnectable","elevateNodesOnSelect","elevateEdgesOnSelect","minZoom","maxZoom","nodeExtent","onNodesChange","onEdgesChange","elementsSelectable","connectionMode","snapGrid","snapToGrid","translateExtent","connectOnClick","defaultEdgeOptions","fitView","fitViewOptions","onNodesDelete","onEdgesDelete","onDelete","onNodeDrag","onNodeDragStart","onNodeDragStop","onSelectionDrag","onSelectionDragStart","onSelectionDragStop","onMoveStart","onMove","onMoveEnd","noPanClassName","nodeOrigin","autoPanOnConnect","autoPanOnNodeDrag","onError","connectionRadius","isValidConnection","selectNodesOnDrag","nodeDragThreshold","connectionDragThreshold","onBeforeDelete","debug","autoPanSpeed","paneClickDistance","ariaLabelConfig","rfId"],Ep=n=>({setNodes:n.setNodes,setEdges:n.setEdges,setMinZoom:n.setMinZoom,setMaxZoom:n.setMaxZoom,setTranslateExtent:n.setTranslateExtent,setNodeExtent:n.setNodeExtent,reset:n.reset,setDefaultNodesAndEdges:n.setDefaultNodesAndEdges,setPaneClickDistance:n.setPaneClickDistance}),_p={translateExtent:Ml,nodeOrigin:wp,minZoom:.5,maxZoom:2,elementsSelectable:!0,noPanClassName:"nopan",rfId:"1",paneClickDistance:0};function Sp(n){const{setNodes:t,setEdges:r,setMinZoom:o,setMaxZoom:a,setTranslateExtent:i,setNodeExtent:s,reset:l,setDefaultNodesAndEdges:d,setPaneClickDistance:c}=tp(Ep,Qc),p=rp();e.useEffect(()=>(d(n.defaultNodes,n.defaultEdges),()=>{u.current=_p,l()}),[]);const u=e.useRef(_p);return e.useEffect(()=>{for(const e of kp){const l=n[e];l!==u.current[e]&&(void 0!==n[e]&&("nodes"===e?t(l):"edges"===e?r(l):"minZoom"===e?o(l):"maxZoom"===e?a(l):"translateExtent"===e?i(l):"nodeExtent"===e?s(l):"paneClickDistance"===e?c(l):"ariaLabelConfig"===e?p.setState({ariaLabelConfig:Ed(l)}):"fitView"===e?p.setState({fitViewQueued:l}):"fitViewOptions"===e?p.setState({fitViewOptions:l}):p.setState({[e]:l})))}u.current=n},kp.map(e=>n[e])),null}function Op(){return"undefined"!=typeof window&&window.matchMedia?window.matchMedia("(prefers-color-scheme: dark)"):null}const Cp="undefined"!=typeof document?document:null;function Np(n=null,t={target:Cp,actInsideInputWithModifier:!0}){const[r,o]=e.useState(!1),a=e.useRef(!1),i=e.useRef(new Set([])),[s,l]=e.useMemo(()=>{if(null!==n){const e=(Array.isArray(n)?n:[n]).filter(n=>"string"==typeof n).map(n=>n.replace("+","\n").replace("\n\n","\n+").split("\n")),t=e.reduce((n,e)=>n.concat(...e),[]);return[e,t]}return[[],[]]},[n]);return e.useEffect(()=>{const e=t?.target??Cp,r=t?.actInsideInputWithModifier??!0;if(null!==n){const n=n=>{a.current=n.ctrlKey||n.metaKey||n.shiftKey||n.altKey;if((!a.current||a.current&&!r)&&Nd(n))return!1;const e=zp(n.code,l);if(i.current.add(n[e]),jp(s,i.current,!1)){const e=n.composedPath?.()?.[0]||n.target,r="BUTTON"===e?.nodeName||"A"===e?.nodeName;!1===t.preventDefault||!a.current&&r||n.preventDefault(),o(!0)}},d=n=>{const e=zp(n.code,l);jp(s,i.current,!0)?(o(!1),i.current.clear()):i.current.delete(n[e]),"Meta"===n.key&&i.current.clear(),a.current=!1},c=()=>{i.current.clear(),o(!1)};return e?.addEventListener("keydown",n),e?.addEventListener("keyup",d),window.addEventListener("blur",c),window.addEventListener("contextmenu",c),()=>{e?.removeEventListener("keydown",n),e?.removeEventListener("keyup",d),window.removeEventListener("blur",c),window.removeEventListener("contextmenu",c)}}},[n,o]),r}function jp(n,e,t){return n.filter(n=>t||n.length===e.size).some(n=>n.every(n=>e.has(n)))}function zp(n,e){return e.includes(n)?"code":"key"}function Mp(n,e){const t=[],r=new Map,o=[];for(const e of n)if("add"!==e.type)if("remove"===e.type||"replace"===e.type)r.set(e.id,[e]);else{const n=r.get(e.id);n?n.push(e):r.set(e.id,[e])}else o.push(e);for(const n of e){const e=r.get(n.id);if(!e){t.push(n);continue}if("remove"===e[0].type)continue;if("replace"===e[0].type){t.push({...e[0].item});continue}const o={...n};for(const n of e)Pp(n,o);t.push(o)}return o.length&&o.forEach(n=>{void 0!==n.index?t.splice(n.index,0,{...n.item}):t.push({...n.item})}),t}function Pp(n,e){switch(n.type){case"select":e.selected=n.selected;break;case"position":void 0!==n.position&&(e.position=n.position),void 0!==n.dragging&&(e.dragging=n.dragging);break;case"dimensions":void 0!==n.dimensions&&(e.measured??={},e.measured.width=n.dimensions.width,e.measured.height=n.dimensions.height,n.setAttributes&&(!0!==n.setAttributes&&"width"!==n.setAttributes||(e.width=n.dimensions.width),!0!==n.setAttributes&&"height"!==n.setAttributes||(e.height=n.dimensions.height))),"boolean"==typeof n.resizing&&(e.resizing=n.resizing)}}function Rp(n,e){return Mp(n,e)}function Ip(n,e){return Mp(n,e)}function Ap(n,e){return{id:n,type:"select",selected:e}}function Dp(n,e=new Set,t=!1){const r=[];for(const[o,a]of n){const n=e.has(o);void 0===a.selected&&!n||a.selected===n||(t&&(a.selected=n),r.push(Ap(a.id,n)))}return r}function Tp({items:n=[],lookup:e}){const t=[],r=new Map(n.map(n=>[n.id,n]));for(const[r,o]of n.entries()){const n=e.get(o.id),a=n?.internals?.userNode??n;void 0!==a&&a!==o&&t.push({id:o.id,item:o,type:"replace"}),void 0===a&&t.push({item:o,type:"add",index:r})}for(const[n]of e){void 0===r.get(n)&&t.push({id:n,type:"remove"})}return t}function Lp(n){return{id:n.id,type:"remove"}}const Bp=n=>(n=>"id"in n&&"position"in n&&!("source"in n)&&!("target"in n))(n);function Vp(n){return e.forwardRef(n)}const $p="undefined"!=typeof window?e.useLayoutEffect:e.useEffect;function Hp(n){const[t,r]=e.useState(BigInt(0)),[o]=e.useState(()=>function(n){let e=[];return{get:()=>e,reset:()=>{e=[]},push:t=>{e.push(t),n()}}}(()=>r(n=>n+BigInt(1))));return $p(()=>{const e=o.get();e.length&&(n(e),o.reset())},[t]),o}const Fp=e.createContext(null);function Yp({children:t}){const r=rp(),o=Hp(e.useCallback(n=>{const{nodes:e=[],setNodes:t,hasDefaultNodes:o,onNodesChange:a,nodeLookup:i,fitViewQueued:s}=r.getState();let l=e;for(const e of n)l="function"==typeof e?e(l):e;const d=Tp({items:l,lookup:i});o&&t(l),d.length>0?a?.(d):s&&window.requestAnimationFrame(()=>{const{fitViewQueued:n,nodes:e,setNodes:t}=r.getState();n&&t(e)})},[])),a=Hp(e.useCallback(n=>{const{edges:e=[],setEdges:t,hasDefaultEdges:o,onEdgesChange:a,edgeLookup:i}=r.getState();let s=e;for(const e of n)s="function"==typeof e?e(s):e;o?t(s):a&&a(Tp({items:s,lookup:i}))},[])),i=e.useMemo(()=>({nodeQueue:o,edgeQueue:a}),[]);return n.jsx(Fp.Provider,{value:i,children:t})}const Gp=n=>!!n.panZoom;function Xp(){const n=(()=>{const n=rp();return e.useMemo(()=>({zoomIn:e=>{const{panZoom:t}=n.getState();return t?t.scaleBy(1.2,{duration:e?.duration}):Promise.resolve(!1)},zoomOut:e=>{const{panZoom:t}=n.getState();return t?t.scaleBy(1/1.2,{duration:e?.duration}):Promise.resolve(!1)},zoomTo:(e,t)=>{const{panZoom:r}=n.getState();return r?r.scaleTo(e,{duration:t?.duration}):Promise.resolve(!1)},getZoom:()=>n.getState().transform[2],setViewport:async(e,t)=>{const{transform:[r,o,a],panZoom:i}=n.getState();return i?(await i.setViewport({x:e.x??r,y:e.y??o,zoom:e.zoom??a},t),Promise.resolve(!0)):Promise.resolve(!1)},getViewport:()=>{const[e,t,r]=n.getState().transform;return{x:e,y:t,zoom:r}},setCenter:async(e,t,r)=>n.getState().setCenter(e,t,r),fitBounds:async(e,t)=>{const{width:r,height:o,minZoom:a,maxZoom:i,panZoom:s}=n.getState(),l=gd(e,r,o,a,i,t?.padding??.1);return s?(await s.setViewport(l,{duration:t?.duration,ease:t?.ease,interpolate:t?.interpolate}),Promise.resolve(!0)):Promise.resolve(!1)},screenToFlowPosition:(e,t={})=>{const{transform:r,snapGrid:o,snapToGrid:a,domNode:i}=n.getState();if(!i)return e;const{x:s,y:l}=i.getBoundingClientRect(),d={x:e.x-s,y:e.y-l},c=t.snapGrid??o,p=t.snapToGrid??a;return bd(d,r,p,c)},flowToScreenPosition:e=>{const{transform:t,domNode:r}=n.getState();if(!r)return e;const{x:o,y:a}=r.getBoundingClientRect(),i=md(e,t);return{x:i.x+o,y:i.y+a}}}),[])})(),t=rp(),r=function(){const n=e.useContext(Fp);if(!n)throw new Error("useBatchContext must be used within a BatchProvider");return n}(),o=tp(Gp),a=e.useMemo(()=>{const n=n=>t.getState().nodeLookup.get(n),e=n=>{r.nodeQueue.push(n)},o=n=>{r.edgeQueue.push(n)},a=n=>{const{nodeLookup:e,nodeOrigin:r}=t.getState(),o=Bp(n)?n:e.get(n.id),a=o.parentId?yd(o.position,o.measured,o.parentId,e,r):o.position,i={...o,position:a,width:o.measured?.width??o.width,height:o.measured?.height??o.height};return ad(i)},i=(n,t,r={replace:!1})=>{e(e=>e.map(e=>{if(e.id===n){const n="function"==typeof t?t(e):t;return r.replace&&Bp(n)?n:{...e,...n}}return e}))},s=(n,e,t={replace:!1})=>{o(r=>r.map(r=>{if(r.id===n){const n="function"==typeof e?e(r):e;return t.replace&&Fl(n)?n:{...r,...n}}return r}))};return{getNodes:()=>t.getState().nodes.map(n=>({...n})),getNode:e=>n(e)?.internals.userNode,getInternalNode:n,getEdges:()=>{const{edges:n=[]}=t.getState();return n.map(n=>({...n}))},getEdge:n=>t.getState().edgeLookup.get(n),setNodes:e,setEdges:o,addNodes:n=>{const e=Array.isArray(n)?n:[n];r.nodeQueue.push(n=>[...n,...e])},addEdges:n=>{const e=Array.isArray(n)?n:[n];r.edgeQueue.push(n=>[...n,...e])},toObject:()=>{const{nodes:n=[],edges:e=[],transform:r}=t.getState(),[o,a,i]=r;return{nodes:n.map(n=>({...n})),edges:e.map(n=>({...n})),viewport:{x:o,y:a,zoom:i}}},deleteElements:async({nodes:n=[],edges:e=[]})=>{const{nodes:r,edges:o,onNodesDelete:a,onEdgesDelete:i,triggerNodeChanges:s,triggerEdgeChanges:l,onDelete:d,onBeforeDelete:c}=t.getState(),{nodes:p,edges:u}=await Kl({nodesToRemove:n,edgesToRemove:e,nodes:r,edges:o,onBeforeDelete:c}),b=u.length>0,m=p.length>0;if(b){const n=u.map(Lp);i?.(u),l(n)}if(m){const n=p.map(Lp);a?.(p),s(n)}return(m||b)&&d?.({nodes:p,edges:u}),{deletedNodes:p,deletedEdges:u}},getIntersectingNodes:(n,e=!0,r)=>{const o=dd(n),i=o?n:a(n),s=void 0!==r;return i?(r||t.getState().nodes).filter(r=>{const a=t.getState().nodeLookup.get(r.id);if(a&&!o&&(r.id===n.id||!a.internals.positionAbsolute))return!1;const l=ad(s?r:a),d=ld(l,i);return e&&d>0||d>=l.width*l.height||d>=i.width*i.height}):[]},isNodeIntersecting:(n,e,t=!0)=>{const r=dd(n)?n:a(n);if(!r)return!1;const o=ld(r,e);return t&&o>0||o>=r.width*r.height},updateNode:i,updateNodeData:(n,e,t={replace:!1})=>{i(n,n=>{const r="function"==typeof e?e(n):e;return t.replace?{...n,data:r}:{...n,data:{...n.data,...r}}},t)},updateEdge:s,updateEdgeData:(n,e,t={replace:!1})=>{s(n,n=>{const r="function"==typeof e?e(n):e;return t.replace?{...n,data:r}:{...n,data:{...n.data,...r}}},t)},getNodesBounds:n=>{const{nodeLookup:e,nodeOrigin:r}=t.getState();return((n,e={nodeOrigin:[0,0]})=>{if("development"!==process.env.NODE_ENV||e.nodeLookup||console.warn("Please use `getNodesBounds` from `useReactFlow`/`useSvelteFlow` hook to ensure correct values for sub flows. If not possible, you have to provide a nodeLookup to support sub flows."),0===n.length)return{x:0,y:0,width:0,height:0};const t=n.reduce((n,t)=>{const r="string"==typeof t;let o=e.nodeLookup||r?void 0:t;e.nodeLookup&&(o=r?e.nodeLookup.get(t):Yl(t)?t:e.nodeLookup.get(t.id));const a=o?id(o,e.nodeOrigin):{x:0,y:0,x2:0,y2:0};return td(n,a)},{x:1/0,y:1/0,x2:-1/0,y2:-1/0});return od(t)})(n,{nodeLookup:e,nodeOrigin:r})},getHandleConnections:({type:n,id:e,nodeId:r})=>Array.from(t.getState().connectionLookup.get(`${r}-${n}${e?`-${e}`:""}`)?.values()??[]),getNodeConnections:({type:n,handleId:e,nodeId:r})=>Array.from(t.getState().connectionLookup.get(`${r}${n?e?`-${n}-${e}`:`-${n}`:""}`)?.values()??[]),fitView:async n=>{const e=t.getState().fitViewResolver??function(){let n,e;return{promise:new Promise((t,r)=>{n=t,e=r}),resolve:n,reject:e}}();return t.setState({fitViewQueued:!0,fitViewOptions:n,fitViewResolver:e}),r.nodeQueue.push(n=>[...n]),e.promise}}},[]);return e.useMemo(()=>({...a,...n,viewportInitialized:o}),[o])}const qp=n=>n.selected,Wp="undefined"!=typeof window?window:void 0;const Zp={position:"absolute",width:"100%",height:"100%",top:0,left:0},Kp=n=>({userSelectionActive:n.userSelectionActive,lib:n.lib});function Up({onPaneContextMenu:t,zoomOnScroll:r=!0,zoomOnPinch:o=!0,panOnScroll:a=!1,panOnScrollSpeed:i=.5,panOnScrollMode:s=Al.Free,zoomOnDoubleClick:l=!0,panOnDrag:d=!0,defaultViewport:c,translateExtent:p,minZoom:u,maxZoom:b,zoomActivationKeyCode:m,preventScrolling:f=!0,children:g,noWheelClassName:h,noPanClassName:v,onViewportChange:x,isControlledViewport:w,paneClickDistance:y}){const k=rp(),E=e.useRef(null),{userSelectionActive:_,lib:S}=tp(Kp,Qc),O=Np(m),C=e.useRef();!function(n){const t=rp();e.useEffect(()=>{const e=()=>{if(!n.current)return!1;const e=Sd(n.current);0!==e.height&&0!==e.width||t.getState().onError?.("004",yl()),t.setState({width:e.width||500,height:e.height||500})};if(n.current){e(),window.addEventListener("resize",e);const t=new ResizeObserver(()=>e());return t.observe(n.current),()=>{window.removeEventListener("resize",e),t&&n.current&&t.unobserve(n.current)}}},[])}(E);const N=e.useCallback(n=>{x?.({x:n[0],y:n[1],zoom:n[2]}),w||k.setState({transform:n})},[x,w]);return e.useEffect(()=>{if(E.current){C.current=yc({domNode:E.current,minZoom:u,maxZoom:b,translateExtent:p,viewport:c,paneClickDistance:y,onDraggingChange:n=>k.setState({paneDragging:n}),onPanZoomStart:(n,e)=>{const{onViewportChangeStart:t,onMoveStart:r}=k.getState();r?.(n,e),t?.(e)},onPanZoom:(n,e)=>{const{onViewportChange:t,onMove:r}=k.getState();r?.(n,e),t?.(e)},onPanZoomEnd:(n,e)=>{const{onViewportChangeEnd:t,onMoveEnd:r}=k.getState();r?.(n,e),t?.(e)}});const{x:n,y:e,zoom:t}=C.current.getViewport();return k.setState({panZoom:C.current,transform:[n,e,t],domNode:E.current.closest(".react-flow")}),()=>{C.current?.destroy()}}},[]),e.useEffect(()=>{C.current?.update({onPaneContextMenu:t,zoomOnScroll:r,zoomOnPinch:o,panOnScroll:a,panOnScrollSpeed:i,panOnScrollMode:s,zoomOnDoubleClick:l,panOnDrag:d,zoomActivationKeyPressed:O,preventScrolling:f,noPanClassName:v,userSelectionActive:_,noWheelClassName:h,lib:S,onTransformChange:N})},[t,r,o,a,i,s,l,d,O,f,v,_,h,S,N]),n.jsx("div",{className:"react-flow__renderer",ref:E,style:Zp,children:g})}const Qp=n=>({userSelectionActive:n.userSelectionActive,userSelectionRect:n.userSelectionRect});function Jp(){const{userSelectionActive:e,userSelectionRect:t}=tp(Qp,Qc);return e&&t?n.jsx("div",{className:"react-flow__selection react-flow__container",style:{width:t.width,height:t.height,transform:`translate(${t.x}px, ${t.y}px)`}}):null}const nu=(n,e)=>t=>{t.target===e.current&&n?.(t)},eu=n=>({userSelectionActive:n.userSelectionActive,elementsSelectable:n.elementsSelectable,connectionInProgress:n.connection.inProgress,dragging:n.paneDragging});function tu({isSelecting:t,selectionKeyPressed:r,selectionMode:o=Dl.Full,panOnDrag:a,selectionOnDrag:i,onSelectionStart:s,onSelectionEnd:l,onPaneClick:d,onPaneContextMenu:c,onPaneScroll:p,onPaneMouseEnter:u,onPaneMouseMove:b,onPaneMouseLeave:m,children:f}){const g=rp(),{userSelectionActive:h,elementsSelectable:v,dragging:x,connectionInProgress:w}=tp(eu,Qc),y=v&&(t||h),k=e.useRef(null),E=e.useRef(),_=e.useRef(new Set),S=e.useRef(new Set),O=e.useRef(!1),C=e.useRef(!1),N=n=>{O.current||w?O.current=!1:(d?.(n),g.getState().resetSelectedElements(),g.setState({nodesSelectionActive:!1}))},j=p?n=>p(n):void 0,z=!0===a||Array.isArray(a)&&a.includes(0);return n.jsxs("div",{className:No(["react-flow__pane",{draggable:z,dragging:x,selection:t}]),onClick:y?void 0:nu(N,k),onContextMenu:nu(n=>{Array.isArray(a)&&a?.includes(2)?n.preventDefault():c?.(n)},k),onWheel:nu(j,k),onPointerEnter:y?void 0:u,onPointerDown:y?n=>{const{resetSelectedElements:e,domNode:r}=g.getState();if(E.current=r?.getBoundingClientRect(),!v||!t||0!==n.button||n.target!==k.current||!E.current)return;n.target?.setPointerCapture?.(n.pointerId),C.current=!0,O.current=!1;const{x:o,y:a}=zd(n.nativeEvent,E.current);e(),g.setState({userSelectionRect:{width:0,height:0,startX:o,startY:a,x:o,y:a}}),s?.(n)}:b,onPointerMove:y?n=>{const{userSelectionRect:e,transform:t,nodeLookup:r,edgeLookup:a,connectionLookup:i,triggerNodeChanges:s,triggerEdgeChanges:l,defaultEdgeOptions:d}=g.getState();if(!E.current||!e)return;O.current=!0;const{x:c,y:p}=zd(n.nativeEvent,E.current),{startX:u,startY:b}=e,m={startX:u,startY:b,x:c<u?c:u,y:p<b?p:b,width:Math.abs(c-u),height:Math.abs(p-b)},f=_.current,h=S.current;_.current=new Set(ql(r,m,t,o===Dl.Partial,!0).map(n=>n.id)),S.current=new Set;const v=d?.selectable??!0;for(const n of _.current){const e=i.get(n);if(e)for(const{edgeId:n}of e.values()){const e=a.get(n);e&&(e.selectable??v)&&S.current.add(n)}}if(!kd(f,_.current)){s(Dp(r,_.current,!0))}if(!kd(h,S.current)){l(Dp(a,S.current))}g.setState({userSelectionRect:m,userSelectionActive:!0,nodesSelectionActive:!1})}:b,onPointerUp:y?n=>{if(0!==n.button||!C.current)return;n.target?.releasePointerCapture?.(n.pointerId);const{userSelectionRect:e}=g.getState();!h&&e&&n.target===k.current&&N?.(n),g.setState({userSelectionActive:!1,userSelectionRect:null,nodesSelectionActive:_.current.size>0}),l?.(n),(r||i)&&(O.current=!1),C.current=!1}:void 0,onPointerLeave:m,ref:k,style:Zp,children:[f,n.jsx(Jp,{})]})}function ru({id:n,store:e,unselect:t=!1,nodeRef:r}){const{addSelectedNodes:o,unselectNodesAndEdges:a,multiSelectionActive:i,nodeLookup:s,onError:l}=e.getState(),d=s.get(n);d?(e.setState({nodesSelectionActive:!1}),d.selected?(t||d.selected&&i)&&(a({nodes:[d],edges:[]}),requestAnimationFrame(()=>r?.current?.blur())):o([n])):l?.("012",Nl(n))}function ou({nodeRef:n,disabled:t=!1,noDragClassName:r,handleSelector:o,nodeId:a,isSelectable:i,nodeClickDistance:s}){const l=rp(),[d,c]=e.useState(!1),p=e.useRef();return e.useEffect(()=>{p.current=sc({getStoreItems:()=>l.getState(),onNodeMouseDown:e=>{ru({id:e,store:l,nodeRef:n})},onDragStart:()=>{c(!0)},onDragStop:()=>{c(!1)}})},[]),e.useEffect(()=>{if(t)p.current?.destroy();else if(n.current)return p.current?.update({noDragClassName:r,handleSelector:o,domNode:n.current,isSelectable:i,nodeId:a,nodeClickDistance:s}),()=>{p.current?.destroy()}},[r,o,t,i,n,a]),d}function au(){const n=rp();return e.useCallback(e=>{const{nodeExtent:t,snapToGrid:r,snapGrid:o,nodesDraggable:a,onError:i,updateNodePositions:s,nodeLookup:l,nodeOrigin:d}=n.getState(),c=new Map,p=(n=>e=>e.selected&&(e.draggable||n&&void 0===e.draggable))(a),u=r?o[0]:5,b=r?o[1]:5,m=e.direction.x*u*e.factor,f=e.direction.y*b*e.factor;for(const[,n]of l){if(!p(n))continue;let e={x:n.internals.positionAbsolute.x+m,y:n.internals.positionAbsolute.y+f};r&&(e=ud(e,o));const{position:a,positionAbsolute:s}=Zl({nodeId:n.id,nextPosition:e,nodeLookup:l,nodeExtent:t,nodeOrigin:d,onError:i});n.position=a,n.internals.positionAbsolute=s,c.set(n.id,n)}s(c)},[])}const iu=e.createContext(null),su=iu.Provider;iu.Consumer;const lu=()=>e.useContext(iu),du=n=>({connectOnClick:n.connectOnClick,noPanClassName:n.noPanClassName,rfId:n.rfId});const cu=e.memo(Vp(function({type:e="source",position:t=Vl.Top,isValidConnection:r,isConnectable:o=!0,isConnectableStart:a=!0,isConnectableEnd:i=!0,id:s,onConnect:l,children:d,className:c,onMouseDown:p,onTouchStart:u,...b},m){const f=s||null,g="target"===e,h=rp(),v=lu(),{connectOnClick:x,noPanClassName:w,rfId:y}=tp(du,Qc),{connectingFrom:k,connectingTo:E,clickConnecting:_,isPossibleEndHandle:S,connectionInProcess:O,clickConnectionInProcess:C,valid:N}=tp(((n,e,t)=>r=>{const{connectionClickStartHandle:o,connectionMode:a,connection:i}=r,{fromHandle:s,toHandle:l,isValid:d}=i,c=l?.nodeId===n&&l?.id===e&&l?.type===t;return{connectingFrom:s?.nodeId===n&&s?.id===e&&s?.type===t,connectingTo:c,clickConnecting:o?.nodeId===n&&o?.id===e&&o?.type===t,isPossibleEndHandle:a===Il.Strict?s?.type!==t:n!==s?.nodeId||e!==s?.id,connectionInProcess:!!s,clickConnectionInProcess:!!o,valid:c&&d}})(v,f,e),Qc);v||h.getState().onError?.("010",Ol());const j=n=>{const{defaultEdgeOptions:e,onConnect:t,hasDefaultEdges:r}=h.getState(),o={...e,...n};if(r){const{edges:n,setEdges:e}=h.getState();e(((n,e)=>{if(!n.source||!n.target)return pd("006",El()),e;let t;return t=Fl(n)?{...n}:{...n,id:Ld(n)},((n,e)=>e.some(e=>!(e.source!==n.source||e.target!==n.target||e.sourceHandle!==n.sourceHandle&&(e.sourceHandle||n.sourceHandle)||e.targetHandle!==n.targetHandle&&(e.targetHandle||n.targetHandle))))(t,e)?e:(null===t.sourceHandle&&delete t.sourceHandle,null===t.targetHandle&&delete t.targetHandle,e.concat(t))})(o,n))}t?.(o),l?.(o)},z=n=>{if(!v)return;const e=jd(n.nativeEvent);if(a&&(e&&0===n.button||!e)){const e=h.getState();bc.onPointerDown(n.nativeEvent,{autoPanOnConnect:e.autoPanOnConnect,connectionMode:e.connectionMode,connectionRadius:e.connectionRadius,domNode:e.domNode,nodeLookup:e.nodeLookup,lib:e.lib,isTarget:g,handleId:f,nodeId:v,flowId:e.rfId,panBy:e.panBy,cancelConnection:e.cancelConnection,onConnectStart:e.onConnectStart,onConnectEnd:e.onConnectEnd,updateConnection:e.updateConnection,onConnect:j,isValidConnection:r||e.isValidConnection,getTransform:()=>h.getState().transform,getFromHandle:()=>h.getState().connection.fromHandle,autoPanSpeed:e.autoPanSpeed,dragThreshold:e.connectionDragThreshold})}e?p?.(n):u?.(n)};return n.jsx("div",{"data-handleid":f,"data-nodeid":v,"data-handlepos":t,"data-id":`${y}-${v}-${f}-${e}`,className:No(["react-flow__handle",`react-flow__handle-${t}`,"nodrag",w,c,{source:!g,target:g,connectable:o,connectablestart:a,connectableend:i,clickconnecting:_,connectingfrom:k,connectingto:E,valid:N,connectionindicator:o&&(!O||S)&&(O||C?i:a)}]),onMouseDown:z,onTouchStart:z,onClick:x?n=>{const{onClickConnectStart:t,onClickConnectEnd:o,connectionClickStartHandle:i,connectionMode:s,isValidConnection:l,lib:d,rfId:c,nodeLookup:p,connection:u}=h.getState();if(!v||!i&&!a)return;if(!i)return t?.(n.nativeEvent,{nodeId:v,handleId:f,handleType:e}),void h.setState({connectionClickStartHandle:{nodeId:v,type:e,id:f}});const b=Od(n.target),m=r||l,{connection:g,isValid:x}=bc.isValid(n.nativeEvent,{handle:{nodeId:v,id:f,type:e},connectionMode:s,fromNodeId:i.nodeId,fromHandleId:i.id||null,fromType:i.type,isValidConnection:m,flowId:c,doc:b,lib:d,nodeLookup:p});x&&g&&j(g);const w=structuredClone(u);delete w.inProgress,w.toPosition=w.toHandle?w.toHandle.position:null,o?.(n,w),h.setState({connectionClickStartHandle:null})}:void 0,ref:m,...b,children:d})}));const pu={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}},uu={input:function({data:e,isConnectable:t,sourcePosition:r=Vl.Bottom}){return n.jsxs(n.Fragment,{children:[e?.label,n.jsx(cu,{type:"source",position:r,isConnectable:t})]})},default:function({data:e,isConnectable:t,targetPosition:r=Vl.Top,sourcePosition:o=Vl.Bottom}){return n.jsxs(n.Fragment,{children:[n.jsx(cu,{type:"target",position:r,isConnectable:t}),e?.label,n.jsx(cu,{type:"source",position:o,isConnectable:t})]})},output:function({data:e,isConnectable:t,targetPosition:r=Vl.Top}){return n.jsxs(n.Fragment,{children:[n.jsx(cu,{type:"target",position:r,isConnectable:t}),e?.label]})},group:function(){return null}};const bu=n=>{const{width:e,height:t,x:r,y:o}=Xl(n.nodeLookup,{filter:n=>!!n.selected});return{width:cd(e)?e:null,height:cd(t)?t:null,userSelectionActive:n.userSelectionActive,transformString:`translate(${n.transform[0]}px,${n.transform[1]}px) scale(${n.transform[2]}) translate(${r}px,${o}px)`}};function mu({onSelectionContextMenu:t,noPanClassName:r,disableKeyboardA11y:o}){const a=rp(),{width:i,height:s,transformString:l,userSelectionActive:d}=tp(bu,Qc),c=au(),p=e.useRef(null);if(e.useEffect(()=>{o||p.current?.focus({preventScroll:!0})},[o]),ou({nodeRef:p}),d||!i||!s)return null;const u=t?n=>{const e=a.getState().nodes.filter(n=>n.selected);t(n,e)}:void 0;return n.jsx("div",{className:No(["react-flow__nodesselection","react-flow__container",r]),style:{transform:l},children:n.jsx("div",{ref:p,className:"react-flow__nodesselection-rect",onContextMenu:u,tabIndex:o?void 0:-1,onKeyDown:o?void 0:n=>{Object.prototype.hasOwnProperty.call(pu,n.key)&&(n.preventDefault(),c({direction:pu[n.key],factor:n.shiftKey?4:1}))},style:{width:i,height:s}})})}const fu="undefined"!=typeof window?window:void 0,gu=n=>({nodesSelectionActive:n.nodesSelectionActive,userSelectionActive:n.userSelectionActive});function hu({children:t,onPaneClick:r,onPaneMouseEnter:o,onPaneMouseMove:a,onPaneMouseLeave:i,onPaneContextMenu:s,onPaneScroll:l,paneClickDistance:d,deleteKeyCode:c,selectionKeyCode:p,selectionOnDrag:u,selectionMode:b,onSelectionStart:m,onSelectionEnd:f,multiSelectionKeyCode:g,panActivationKeyCode:h,zoomActivationKeyCode:v,elementsSelectable:x,zoomOnScroll:w,zoomOnPinch:y,panOnScroll:k,panOnScrollSpeed:E,panOnScrollMode:_,zoomOnDoubleClick:S,panOnDrag:O,defaultViewport:C,translateExtent:N,minZoom:j,maxZoom:z,preventScrolling:M,onSelectionContextMenu:P,noWheelClassName:R,noPanClassName:I,disableKeyboardA11y:A,onViewportChange:D,isControlledViewport:T}){const{nodesSelectionActive:L,userSelectionActive:B}=tp(gu),V=Np(p,{target:fu}),$=Np(h,{target:fu}),H=$||O,F=$||k,Y=u&&!0!==H,G=V||B||Y;return function({deleteKeyCode:n,multiSelectionKeyCode:t}){const r=rp(),{deleteElements:o}=Xp(),a=Np(n,{actInsideInputWithModifier:!1}),i=Np(t,{target:Wp});e.useEffect(()=>{if(a){const{edges:n,nodes:e}=r.getState();o({nodes:e.filter(qp),edges:n.filter(qp)}),r.setState({nodesSelectionActive:!1})}},[a]),e.useEffect(()=>{r.setState({multiSelectionActive:i})},[i])}({deleteKeyCode:c,multiSelectionKeyCode:g}),n.jsx(Up,{onPaneContextMenu:s,elementsSelectable:x,zoomOnScroll:w,zoomOnPinch:y,panOnScroll:F,panOnScrollSpeed:E,panOnScrollMode:_,zoomOnDoubleClick:S,panOnDrag:!V&&H,defaultViewport:C,translateExtent:N,minZoom:j,maxZoom:z,zoomActivationKeyCode:v,preventScrolling:M,noWheelClassName:R,noPanClassName:I,onViewportChange:D,isControlledViewport:T,paneClickDistance:d,children:n.jsxs(tu,{onSelectionStart:m,onSelectionEnd:f,onPaneClick:r,onPaneMouseEnter:o,onPaneMouseMove:a,onPaneMouseLeave:i,onPaneContextMenu:s,onPaneScroll:l,panOnDrag:H,isSelecting:!!G,selectionMode:b,selectionKeyPressed:V,selectionOnDrag:Y,children:[t,L&&n.jsx(mu,{onSelectionContextMenu:P,noPanClassName:I,disableKeyboardA11y:A})]})})}hu.displayName="FlowRenderer";const vu=e.memo(hu);function xu(n){return tp(e.useCallback((n=>e=>n?ql(e.nodeLookup,{x:0,y:0,width:e.width,height:e.height},e.transform,!0).map(n=>n.id):Array.from(e.nodeLookup.keys()))(n),[n]),Qc)}const wu=n=>n.updateNodeInternals;function yu({id:t,onClick:r,onMouseEnter:o,onMouseMove:a,onMouseLeave:i,onContextMenu:s,onDoubleClick:l,nodesDraggable:d,elementsSelectable:c,nodesConnectable:p,nodesFocusable:u,resizeObserver:b,noDragClassName:m,noPanClassName:f,disableKeyboardA11y:g,rfId:h,nodeTypes:v,nodeClickDistance:x,onError:w}){const{node:y,internals:k,isParent:E}=tp(n=>{const e=n.nodeLookup.get(t),r=n.parentLookup.has(t);return{node:e,internals:e.internals,isParent:r}},Qc);let _=y.type||"default",S=v?.[_]||uu[_];void 0===S&&(w?.("003",wl(_)),_="default",S=v?.default||uu.default);const O=!!(y.draggable||d&&void 0===y.draggable),C=!!(y.selectable||c&&void 0===y.selectable),N=!!(y.connectable||p&&void 0===y.connectable),j=!!(y.focusable||u&&void 0===y.focusable),z=rp(),M=wd(y),P=function({node:n,nodeType:t,hasDimensions:r,resizeObserver:o}){const a=rp(),i=e.useRef(null),s=e.useRef(null),l=e.useRef(n.sourcePosition),d=e.useRef(n.targetPosition),c=e.useRef(t),p=r&&!!n.internals.handleBounds;return e.useEffect(()=>{!i.current||n.hidden||p&&s.current===i.current||(s.current&&o?.unobserve(s.current),o?.observe(i.current),s.current=i.current)},[p,n.hidden]),e.useEffect(()=>()=>{s.current&&(o?.unobserve(s.current),s.current=null)},[]),e.useEffect(()=>{if(i.current){const e=c.current!==t,r=l.current!==n.sourcePosition,o=d.current!==n.targetPosition;(e||r||o)&&(c.current=t,l.current=n.sourcePosition,d.current=n.targetPosition,a.getState().updateNodeInternals(new Map([[n.id,{id:n.id,nodeElement:i.current,force:!0}]])))}},[n.id,t,n.sourcePosition,n.targetPosition]),i}({node:y,nodeType:_,hasDimensions:M,resizeObserver:b}),R=ou({nodeRef:P,disabled:y.hidden||!O,noDragClassName:m,handleSelector:y.dragHandle,nodeId:t,isSelectable:C,nodeClickDistance:x}),I=au();if(y.hidden)return null;const A=xd(y),D=function(n){return void 0===n.internals.handleBounds?{width:n.width??n.initialWidth??n.style?.width,height:n.height??n.initialHeight??n.style?.height}:{width:n.width??n.style?.width,height:n.height??n.style?.height}}(y),T=C||O||r||o||a||i,L=o?n=>o(n,{...k.userNode}):void 0,B=a?n=>a(n,{...k.userNode}):void 0,V=i?n=>i(n,{...k.userNode}):void 0,$=s?n=>s(n,{...k.userNode}):void 0,H=l?n=>l(n,{...k.userNode}):void 0;return n.jsx("div",{className:No(["react-flow__node",`react-flow__node-${_}`,{[f]:O},y.className,{selected:y.selected,selectable:C,parent:E,draggable:O,dragging:R}]),ref:P,style:{zIndex:k.z,transform:`translate(${k.positionAbsolute.x}px,${k.positionAbsolute.y}px)`,pointerEvents:T?"all":"none",visibility:M?"visible":"hidden",...y.style,...D},"data-id":t,"data-testid":`rf__node-${t}`,onMouseEnter:L,onMouseMove:B,onMouseLeave:V,onContextMenu:$,onClick:n=>{const{selectNodesOnDrag:e,nodeDragThreshold:o}=z.getState();C&&(!e||!O||o>0)&&ru({id:t,store:z,nodeRef:P}),r&&r(n,{...k.userNode})},onDoubleClick:H,onKeyDown:j?n=>{if(!Nd(n.nativeEvent)&&!g)if(Pl.includes(n.key)&&C){const e="Escape"===n.key;ru({id:t,store:z,unselect:e,nodeRef:P})}else if(O&&y.selected&&Object.prototype.hasOwnProperty.call(pu,n.key)){n.preventDefault();const{ariaLabelConfig:e}=z.getState();z.setState({ariaLiveMessage:e["node.a11yDescription.ariaLiveMessage"]({direction:n.key.replace("Arrow","").toLowerCase(),x:~~k.positionAbsolute.x,y:~~k.positionAbsolute.y})}),I({direction:pu[n.key],factor:n.shiftKey?4:1})}}:void 0,tabIndex:j?0:void 0,onFocus:j?()=>{if(g||!P.current?.matches(":focus-visible"))return;const{transform:n,width:e,height:r,autoPanOnNodeFocus:o,setCenter:a}=z.getState();if(!o)return;ql(new Map([[t,y]]),{x:0,y:0,width:e,height:r},n,!0).length>0||a(y.position.x+A.width/2,y.position.y+A.height/2,{zoom:n[2]})}:void 0,role:y.ariaRole??(j?"group":void 0),"aria-roledescription":"node","aria-describedby":g?void 0:`${ip}-${h}`,"aria-label":y.ariaLabel,...y.domAttributes,children:n.jsx(su,{value:t,children:n.jsx(S,{id:t,data:y.data,type:_,positionAbsoluteX:k.positionAbsolute.x,positionAbsoluteY:k.positionAbsolute.y,selected:y.selected??!1,selectable:C,draggable:O,deletable:y.deletable??!0,isConnectable:N,sourcePosition:y.sourcePosition,targetPosition:y.targetPosition,dragging:R,dragHandle:y.dragHandle,zIndex:k.z,parentId:y.parentId,...A})})})}const ku=n=>({nodesDraggable:n.nodesDraggable,nodesConnectable:n.nodesConnectable,nodesFocusable:n.nodesFocusable,elementsSelectable:n.elementsSelectable,onError:n.onError});function Eu(t){const{nodesDraggable:r,nodesConnectable:o,nodesFocusable:a,elementsSelectable:i,onError:s}=tp(ku,Qc),l=xu(t.onlyRenderVisibleElements),d=function(){const n=tp(wu),[t]=e.useState(()=>"undefined"==typeof ResizeObserver?null:new ResizeObserver(e=>{const t=new Map;e.forEach(n=>{const e=n.target.getAttribute("data-id");t.set(e,{id:e,nodeElement:n.target,force:!0})}),n(t)}));return e.useEffect(()=>()=>{t?.disconnect()},[t]),t}();return n.jsx("div",{className:"react-flow__nodes",style:Zp,children:l.map(e=>n.jsx(yu,{id:e,nodeTypes:t.nodeTypes,nodeExtent:t.nodeExtent,onClick:t.onNodeClick,onMouseEnter:t.onNodeMouseEnter,onMouseMove:t.onNodeMouseMove,onMouseLeave:t.onNodeMouseLeave,onContextMenu:t.onNodeContextMenu,onDoubleClick:t.onNodeDoubleClick,noDragClassName:t.noDragClassName,noPanClassName:t.noPanClassName,rfId:t.rfId,disableKeyboardA11y:t.disableKeyboardA11y,resizeObserver:d,nodesDraggable:r,nodesConnectable:o,nodesFocusable:a,elementsSelectable:i,nodeClickDistance:t.nodeClickDistance,onError:s},e))})}Eu.displayName="NodeRenderer";const _u=e.memo(Eu);const Su={[Bl.Arrow]:({color:e="none",strokeWidth:t=1})=>n.jsx("polyline",{style:{stroke:e,strokeWidth:t},strokeLinecap:"round",strokeLinejoin:"round",fill:"none",points:"-5,-4 0,0 -5,4"}),[Bl.ArrowClosed]:({color:e="none",strokeWidth:t=1})=>n.jsx("polyline",{style:{stroke:e,fill:e,strokeWidth:t},strokeLinecap:"round",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4 -5,-4"})};const Ou=({id:t,type:r,color:o,width:a=12.5,height:i=12.5,markerUnits:s="strokeWidth",strokeWidth:l,orient:d="auto-start-reverse"})=>{const c=function(n){const t=rp();return e.useMemo(()=>Object.prototype.hasOwnProperty.call(Su,n)?Su[n]:(t.getState().onError?.("009",_l(n)),null),[n])}(r);return c?n.jsx("marker",{className:"react-flow__arrowhead",id:t,markerWidth:`${a}`,markerHeight:`${i}`,viewBox:"-10 -10 20 20",markerUnits:s,orient:d,refX:"0",refY:"0",children:n.jsx(c,{color:o,strokeWidth:l})}):null},Cu=({defaultColor:t,rfId:r})=>{const o=tp(n=>n.edges),a=tp(n=>n.defaultEdgeOptions),i=e.useMemo(()=>{const n=function(n,{id:e,defaultColor:t,defaultMarkerStart:r,defaultMarkerEnd:o}){const a=new Set;return n.reduce((n,i)=>([i.markerStart||r,i.markerEnd||o].forEach(r=>{if(r&&"object"==typeof r){const o=Wd(r,e);a.has(o)||(n.push({id:o,color:r.color||t,...r}),a.add(o))}}),n),[]).sort((n,e)=>n.id.localeCompare(e.id))}(o,{id:r,defaultColor:t,defaultMarkerStart:a?.markerStart,defaultMarkerEnd:a?.markerEnd});return n},[o,a,r,t]);return i.length?n.jsx("svg",{className:"react-flow__marker","aria-hidden":"true",children:n.jsx("defs",{children:i.map(e=>n.jsx(Ou,{id:e.id,type:e.type,color:e.color,width:e.width,height:e.height,markerUnits:e.markerUnits,strokeWidth:e.strokeWidth,orient:e.orient},e.id))})}):null};Cu.displayName="MarkerDefinitions";var Nu=e.memo(Cu);function ju({x:t,y:r,label:o,labelStyle:a,labelShowBg:i=!0,labelBgStyle:s,labelBgPadding:l=[2,4],labelBgBorderRadius:d=2,children:c,className:p,...u}){const[b,m]=e.useState({x:1,y:0,width:0,height:0}),f=No(["react-flow__edge-textwrapper",p]),g=e.useRef(null);return e.useEffect(()=>{if(g.current){const n=g.current.getBBox();m({x:n.x,y:n.y,width:n.width,height:n.height})}},[o]),o?n.jsxs("g",{transform:`translate(${t-b.width/2} ${r-b.height/2})`,className:f,visibility:b.width?"visible":"hidden",...u,children:[i&&n.jsx("rect",{width:b.width+2*l[0],x:-l[0],y:-l[1],height:b.height+2*l[1],className:"react-flow__edge-textbg",style:s,rx:d,ry:d}),n.jsx("text",{className:"react-flow__edge-text",y:b.height/2,dy:"0.3em",ref:g,style:a,children:o}),c]}):null}ju.displayName="EdgeText";const zu=e.memo(ju);function Mu({path:e,labelX:t,labelY:r,label:o,labelStyle:a,labelShowBg:i,labelBgStyle:s,labelBgPadding:l,labelBgBorderRadius:d,interactionWidth:c=20,...p}){return n.jsxs(n.Fragment,{children:[n.jsx("path",{...p,d:e,fill:"none",className:No(["react-flow__edge-path",p.className])}),c&&n.jsx("path",{d:e,fill:"none",strokeOpacity:0,strokeWidth:c,className:"react-flow__edge-interaction"}),o&&cd(t)&&cd(r)?n.jsx(zu,{x:t,y:r,label:o,labelStyle:a,labelShowBg:i,labelBgStyle:s,labelBgPadding:l,labelBgBorderRadius:d}):null]})}function Pu({pos:n,x1:e,y1:t,x2:r,y2:o}){return n===Vl.Left||n===Vl.Right?[.5*(e+r),t]:[e,.5*(t+o)]}function Ru({sourceX:n,sourceY:e,sourcePosition:t=Vl.Bottom,targetX:r,targetY:o,targetPosition:a=Vl.Top}){const[i,s]=Pu({pos:t,x1:n,y1:e,x2:r,y2:o}),[l,d]=Pu({pos:a,x1:r,y1:o,x2:n,y2:e}),[c,p,u,b]=Pd({sourceX:n,sourceY:e,targetX:r,targetY:o,sourceControlX:i,sourceControlY:s,targetControlX:l,targetControlY:d});return[`M${n},${e} C${i},${s} ${l},${d} ${r},${o}`,c,p,u,b]}function Iu(t){return e.memo(({id:e,sourceX:r,sourceY:o,targetX:a,targetY:i,sourcePosition:s,targetPosition:l,label:d,labelStyle:c,labelShowBg:p,labelBgStyle:u,labelBgPadding:b,labelBgBorderRadius:m,style:f,markerEnd:g,markerStart:h,interactionWidth:v})=>{const[x,w,y]=Ru({sourceX:r,sourceY:o,sourcePosition:s,targetX:a,targetY:i,targetPosition:l}),k=t.isInternal?void 0:e;return n.jsx(Mu,{id:k,path:x,labelX:w,labelY:y,label:d,labelStyle:c,labelShowBg:p,labelBgStyle:u,labelBgPadding:b,labelBgBorderRadius:m,style:f,markerEnd:g,markerStart:h,interactionWidth:v})})}const Au=Iu({isInternal:!1}),Du=Iu({isInternal:!0});function Tu(t){return e.memo(({id:e,sourceX:r,sourceY:o,targetX:a,targetY:i,label:s,labelStyle:l,labelShowBg:d,labelBgStyle:c,labelBgPadding:p,labelBgBorderRadius:u,style:b,sourcePosition:m=Vl.Bottom,targetPosition:f=Vl.Top,markerEnd:g,markerStart:h,pathOptions:v,interactionWidth:x})=>{const[w,y,k]=Fd({sourceX:r,sourceY:o,sourcePosition:m,targetX:a,targetY:i,targetPosition:f,borderRadius:v?.borderRadius,offset:v?.offset,stepPosition:v?.stepPosition}),E=t.isInternal?void 0:e;return n.jsx(Mu,{id:E,path:w,labelX:y,labelY:k,label:s,labelStyle:l,labelShowBg:d,labelBgStyle:c,labelBgPadding:p,labelBgBorderRadius:u,style:b,markerEnd:g,markerStart:h,interactionWidth:x})})}Au.displayName="SimpleBezierEdge",Du.displayName="SimpleBezierEdgeInternal";const Lu=Tu({isInternal:!1}),Bu=Tu({isInternal:!0});function Vu(t){return e.memo(({id:r,...o})=>{const a=t.isInternal?void 0:r;return n.jsx(Lu,{...o,id:a,pathOptions:e.useMemo(()=>({borderRadius:0,offset:o.pathOptions?.offset}),[o.pathOptions?.offset])})})}Lu.displayName="SmoothStepEdge",Bu.displayName="SmoothStepEdgeInternal";const $u=Vu({isInternal:!1}),Hu=Vu({isInternal:!0});function Fu(t){return e.memo(({id:e,sourceX:r,sourceY:o,targetX:a,targetY:i,label:s,labelStyle:l,labelShowBg:d,labelBgStyle:c,labelBgPadding:p,labelBgBorderRadius:u,style:b,markerEnd:m,markerStart:f,interactionWidth:g})=>{const[h,v,x]=Bd({sourceX:r,sourceY:o,targetX:a,targetY:i}),w=t.isInternal?void 0:e;return n.jsx(Mu,{id:w,path:h,labelX:v,labelY:x,label:s,labelStyle:l,labelShowBg:d,labelBgStyle:c,labelBgPadding:p,labelBgBorderRadius:u,style:b,markerEnd:m,markerStart:f,interactionWidth:g})})}$u.displayName="StepEdge",Hu.displayName="StepEdgeInternal";const Yu=Fu({isInternal:!1}),Gu=Fu({isInternal:!0});function Xu(t){return e.memo(({id:e,sourceX:r,sourceY:o,targetX:a,targetY:i,sourcePosition:s=Vl.Bottom,targetPosition:l=Vl.Top,label:d,labelStyle:c,labelShowBg:p,labelBgStyle:u,labelBgPadding:b,labelBgBorderRadius:m,style:f,markerEnd:g,markerStart:h,pathOptions:v,interactionWidth:x})=>{const[w,y,k]=Ad({sourceX:r,sourceY:o,sourcePosition:s,targetX:a,targetY:i,targetPosition:l,curvature:v?.curvature}),E=t.isInternal?void 0:e;return n.jsx(Mu,{id:E,path:w,labelX:y,labelY:k,label:d,labelStyle:c,labelShowBg:p,labelBgStyle:u,labelBgPadding:b,labelBgBorderRadius:m,style:f,markerEnd:g,markerStart:h,interactionWidth:x})})}Yu.displayName="StraightEdge",Gu.displayName="StraightEdgeInternal";const qu=Xu({isInternal:!1}),Wu=Xu({isInternal:!0});qu.displayName="BezierEdge",Wu.displayName="BezierEdgeInternal";const Zu={default:Wu,straight:Gu,step:Hu,smoothstep:Bu,simplebezier:Du},Ku={sourceX:null,sourceY:null,targetX:null,targetY:null,sourcePosition:null,targetPosition:null},Uu=(n,e,t)=>t===Vl.Left?n-e:t===Vl.Right?n+e:n,Qu=(n,e,t)=>t===Vl.Top?n-e:t===Vl.Bottom?n+e:n,Ju="react-flow__edgeupdater";function nb({position:e,centerX:t,centerY:r,radius:o=10,onMouseDown:a,onMouseEnter:i,onMouseOut:s,type:l}){return n.jsx("circle",{onMouseDown:a,onMouseEnter:i,onMouseOut:s,className:No([Ju,`${Ju}-${l}`]),cx:Uu(t,o,e),cy:Qu(r,o,e),r:o,stroke:"transparent",fill:"transparent"})}function eb({isReconnectable:e,reconnectRadius:t,edge:r,sourceX:o,sourceY:a,targetX:i,targetY:s,sourcePosition:l,targetPosition:d,onReconnect:c,onReconnectStart:p,onReconnectEnd:u,setReconnecting:b,setUpdateHover:m}){const f=rp(),g=(n,e)=>{if(0!==n.button)return;const{autoPanOnConnect:t,domNode:o,isValidConnection:a,connectionMode:i,connectionRadius:s,lib:l,onConnectStart:d,onConnectEnd:m,cancelConnection:g,nodeLookup:h,rfId:v,panBy:x,updateConnection:w}=f.getState(),y="target"===e.type;bc.onPointerDown(n.nativeEvent,{autoPanOnConnect:t,connectionMode:i,connectionRadius:s,domNode:o,handleId:e.id,nodeId:e.nodeId,nodeLookup:h,isTarget:y,edgeUpdaterType:e.type,lib:l,flowId:v,cancelConnection:g,panBy:x,isValidConnection:a,onConnect:n=>c?.(r,n),onConnectStart:(t,o)=>{b(!0),p?.(n,r,e.type),d?.(t,o)},onConnectEnd:m,onReconnectEnd:(n,t)=>{b(!1),u?.(n,r,e.type,t)},updateConnection:w,getTransform:()=>f.getState().transform,getFromHandle:()=>f.getState().connection.fromHandle,dragThreshold:f.getState().connectionDragThreshold})},h=()=>m(!0),v=()=>m(!1);return n.jsxs(n.Fragment,{children:[(!0===e||"source"===e)&&n.jsx(nb,{position:l,centerX:o,centerY:a,radius:t,onMouseDown:n=>g(n,{nodeId:r.target,id:r.targetHandle??null,type:"target"}),onMouseEnter:h,onMouseOut:v,type:"source"}),(!0===e||"target"===e)&&n.jsx(nb,{position:d,centerX:i,centerY:s,radius:t,onMouseDown:n=>g(n,{nodeId:r.source,id:r.sourceHandle??null,type:"source"}),onMouseEnter:h,onMouseOut:v,type:"target"})]})}function tb({id:t,edgesFocusable:r,edgesReconnectable:o,elementsSelectable:a,onClick:i,onDoubleClick:s,onContextMenu:l,onMouseEnter:d,onMouseMove:c,onMouseLeave:p,reconnectRadius:u,onReconnect:b,onReconnectStart:m,onReconnectEnd:f,rfId:g,edgeTypes:h,noPanClassName:v,onError:x,disableKeyboardA11y:w}){let y=tp(n=>n.edgeLookup.get(t));const k=tp(n=>n.defaultEdgeOptions);y=k?{...k,...y}:y;let E=y.type||"default",_=h?.[E]||Zu[E];void 0===_&&(x?.("011",Cl(E)),E="default",_=h?.default||Zu.default);const S=!!(y.focusable||r&&void 0===y.focusable),O=void 0!==b&&(y.reconnectable||o&&void 0===y.reconnectable),C=!!(y.selectable||a&&void 0===y.selectable),N=e.useRef(null),[j,z]=e.useState(!1),[M,P]=e.useState(!1),R=rp(),{zIndex:I,sourceX:A,sourceY:D,targetX:T,targetY:L,sourcePosition:B,targetPosition:V}=tp(e.useCallback(n=>{const e=n.nodeLookup.get(y.source),r=n.nodeLookup.get(y.target);if(!e||!r)return{zIndex:y.zIndex,...Ku};const o=function(n){const{sourceNode:e,targetNode:t}=n;if(!Yd(e)||!Yd(t))return null;const r=e.internals.handleBounds||Gd(e.handles),o=t.internals.handleBounds||Gd(t.handles),a=qd(r?.source??[],n.sourceHandle),i=qd(n.connectionMode===Il.Strict?o?.target??[]:(o?.target??[]).concat(o?.source??[]),n.targetHandle);if(!a||!i)return n.onError?.("008",Sl(a?"target":"source",{id:n.id,sourceHandle:n.sourceHandle,targetHandle:n.targetHandle})),null;const s=a?.position||Vl.Bottom,l=i?.position||Vl.Top,d=Xd(e,a,s),c=Xd(t,i,l);return{sourceX:d.x,sourceY:d.y,targetX:c.x,targetY:c.y,sourcePosition:s,targetPosition:l}}({id:t,sourceNode:e,targetNode:r,sourceHandle:y.sourceHandle||null,targetHandle:y.targetHandle||null,connectionMode:n.connectionMode,onError:x}),a=function({sourceNode:n,targetNode:e,selected:t=!1,zIndex:r,elevateOnSelect:o=!1}){return void 0!==r?r:(o&&t?1e3:0)+Math.max(n.parentId?n.internals.z:0,e.parentId?e.internals.z:0)}({selected:y.selected,zIndex:y.zIndex,sourceNode:e,targetNode:r,elevateOnSelect:n.elevateEdgesOnSelect});return{zIndex:a,...o||Ku}},[y.source,y.target,y.sourceHandle,y.targetHandle,y.selected,y.zIndex]),Qc),$=e.useMemo(()=>y.markerStart?`url('#${Wd(y.markerStart,g)}')`:void 0,[y.markerStart,g]),H=e.useMemo(()=>y.markerEnd?`url('#${Wd(y.markerEnd,g)}')`:void 0,[y.markerEnd,g]);if(y.hidden||null===A||null===D||null===T||null===L)return null;const F=s?n=>{s(n,{...y})}:void 0,Y=l?n=>{l(n,{...y})}:void 0,G=d?n=>{d(n,{...y})}:void 0,X=c?n=>{c(n,{...y})}:void 0,q=p?n=>{p(n,{...y})}:void 0;return n.jsx("svg",{style:{zIndex:I},children:n.jsxs("g",{className:No(["react-flow__edge",`react-flow__edge-${E}`,y.className,v,{selected:y.selected,animated:y.animated,inactive:!C&&!i,updating:j,selectable:C}]),onClick:n=>{const{addSelectedEdges:e,unselectNodesAndEdges:r,multiSelectionActive:o}=R.getState();C&&(R.setState({nodesSelectionActive:!1}),y.selected&&o?(r({nodes:[],edges:[y]}),N.current?.blur()):e([t])),i&&i(n,y)},onDoubleClick:F,onContextMenu:Y,onMouseEnter:G,onMouseMove:X,onMouseLeave:q,onKeyDown:S?n=>{if(!w&&Pl.includes(n.key)&&C){const{unselectNodesAndEdges:e,addSelectedEdges:r}=R.getState();"Escape"===n.key?(N.current?.blur(),e({edges:[y]})):r([t])}}:void 0,tabIndex:S?0:void 0,role:y.ariaRole??(S?"group":"img"),"aria-roledescription":"edge","data-id":t,"data-testid":`rf__edge-${t}`,"aria-label":null===y.ariaLabel?void 0:y.ariaLabel||`Edge from ${y.source} to ${y.target}`,"aria-describedby":S?`${sp}-${g}`:void 0,ref:N,...y.domAttributes,children:[!M&&n.jsx(_,{id:t,source:y.source,target:y.target,type:y.type,selected:y.selected,animated:y.animated,selectable:C,deletable:y.deletable??!0,label:y.label,labelStyle:y.labelStyle,labelShowBg:y.labelShowBg,labelBgStyle:y.labelBgStyle,labelBgPadding:y.labelBgPadding,labelBgBorderRadius:y.labelBgBorderRadius,sourceX:A,sourceY:D,targetX:T,targetY:L,sourcePosition:B,targetPosition:V,data:y.data,style:y.style,sourceHandleId:y.sourceHandle,targetHandleId:y.targetHandle,markerStart:$,markerEnd:H,pathOptions:"pathOptions"in y?y.pathOptions:void 0,interactionWidth:y.interactionWidth}),O&&n.jsx(eb,{edge:y,isReconnectable:O,reconnectRadius:u,onReconnect:b,onReconnectStart:m,onReconnectEnd:f,sourceX:A,sourceY:D,targetX:T,targetY:L,sourcePosition:B,targetPosition:V,setUpdateHover:z,setReconnecting:P})]})})}const rb=n=>({edgesFocusable:n.edgesFocusable,edgesReconnectable:n.edgesReconnectable,elementsSelectable:n.elementsSelectable,connectionMode:n.connectionMode,onError:n.onError});function ob({defaultMarkerColor:t,onlyRenderVisibleElements:r,rfId:o,edgeTypes:a,noPanClassName:i,onReconnect:s,onEdgeContextMenu:l,onEdgeMouseEnter:d,onEdgeMouseMove:c,onEdgeMouseLeave:p,onEdgeClick:u,reconnectRadius:b,onEdgeDoubleClick:m,onReconnectStart:f,onReconnectEnd:g,disableKeyboardA11y:h}){const{edgesFocusable:v,edgesReconnectable:x,elementsSelectable:w,onError:y}=tp(rb,Qc),k=(E=r,tp(e.useCallback(n=>{if(!E)return n.edges.map(n=>n.id);const e=[];if(n.width&&n.height)for(const t of n.edges){const r=n.nodeLookup.get(t.source),o=n.nodeLookup.get(t.target);r&&o&&Td({sourceNode:r,targetNode:o,width:n.width,height:n.height,transform:n.transform})&&e.push(t.id)}return e},[E]),Qc));var E;return n.jsxs("div",{className:"react-flow__edges",children:[n.jsx(Nu,{defaultColor:t,rfId:o}),k.map(e=>n.jsx(tb,{id:e,edgesFocusable:v,edgesReconnectable:x,elementsSelectable:w,noPanClassName:i,onReconnect:s,onContextMenu:l,onMouseEnter:d,onMouseMove:c,onMouseLeave:p,onClick:u,reconnectRadius:b,onDoubleClick:m,onReconnectStart:f,onReconnectEnd:g,rfId:o,onError:y,edgeTypes:a,disableKeyboardA11y:h},e))]})}ob.displayName="EdgeRenderer";const ab=e.memo(ob),ib=n=>`translate(${n.transform[0]}px,${n.transform[1]}px) scale(${n.transform[2]})`;function sb({children:e}){const t=tp(ib);return n.jsx("div",{className:"react-flow__viewport xyflow__viewport react-flow__container",style:{transform:t},children:e})}const lb=n=>n.panZoom?.syncViewport;function db(n){return n.connection.inProgress?{...n.connection,to:bd(n.connection.to,n.transform)}:{...n.connection}}function cb(n){return tp(db,Qc)}const pb=n=>({nodesConnectable:n.nodesConnectable,isValid:n.connection.isValid,inProgress:n.connection.inProgress,width:n.width,height:n.height});function ub({containerStyle:e,style:t,type:r,component:o}){const{nodesConnectable:a,width:i,height:s,isValid:l,inProgress:d}=tp(pb,Qc);return!!(i&&a&&d)?n.jsx("svg",{style:e,width:i,height:s,className:"react-flow__connectionline react-flow__container",children:n.jsx("g",{className:No(["react-flow__connection",Hl(l)]),children:n.jsx(bb,{style:t,type:r,CustomComponent:o,isValid:l})})}):null}const bb=({style:e,type:t=Ll.Bezier,CustomComponent:r,isValid:o})=>{const{inProgress:a,from:i,fromNode:s,fromHandle:l,fromPosition:d,to:c,toNode:p,toHandle:u,toPosition:b}=cb();if(!a)return;if(r)return n.jsx(r,{connectionLineType:t,connectionLineStyle:e,fromNode:s,fromHandle:l,fromX:i.x,fromY:i.y,toX:c.x,toY:c.y,fromPosition:d,toPosition:b,connectionStatus:Hl(o),toNode:p,toHandle:u});let m="";const f={sourceX:i.x,sourceY:i.y,sourcePosition:d,targetX:c.x,targetY:c.y,targetPosition:b};switch(t){case Ll.Bezier:[m]=Ad(f);break;case Ll.SimpleBezier:[m]=Ru(f);break;case Ll.Step:[m]=Fd({...f,borderRadius:0});break;case Ll.SmoothStep:[m]=Fd(f);break;default:[m]=Bd(f)}return n.jsx("path",{d:m,fill:"none",className:"react-flow__connection-path",style:e})};bb.displayName="ConnectionLine";const mb={};function fb(n=mb){const t=e.useRef(n),r=rp();e.useEffect(()=>{if("development"===process.env.NODE_ENV){const e=new Set([...Object.keys(t.current),...Object.keys(n)]);for(const o of e)if(t.current[o]!==n[o]){r.getState().onError?.("002",xl());break}t.current=n}},[n])}function gb({nodeTypes:t,edgeTypes:r,onInit:o,onNodeClick:a,onEdgeClick:i,onNodeDoubleClick:s,onEdgeDoubleClick:l,onNodeMouseEnter:d,onNodeMouseMove:c,onNodeMouseLeave:p,onNodeContextMenu:u,onSelectionContextMenu:b,onSelectionStart:m,onSelectionEnd:f,connectionLineType:g,connectionLineStyle:h,connectionLineComponent:v,connectionLineContainerStyle:x,selectionKeyCode:w,selectionOnDrag:y,selectionMode:k,multiSelectionKeyCode:E,panActivationKeyCode:_,zoomActivationKeyCode:S,deleteKeyCode:O,onlyRenderVisibleElements:C,elementsSelectable:N,defaultViewport:j,translateExtent:z,minZoom:M,maxZoom:P,preventScrolling:R,defaultMarkerColor:I,zoomOnScroll:A,zoomOnPinch:D,panOnScroll:T,panOnScrollSpeed:L,panOnScrollMode:B,zoomOnDoubleClick:V,panOnDrag:$,onPaneClick:H,onPaneMouseEnter:F,onPaneMouseMove:Y,onPaneMouseLeave:G,onPaneScroll:X,onPaneContextMenu:q,paneClickDistance:W,nodeClickDistance:Z,onEdgeContextMenu:K,onEdgeMouseEnter:U,onEdgeMouseMove:Q,onEdgeMouseLeave:J,reconnectRadius:nn,onReconnect:en,onReconnectStart:tn,onReconnectEnd:rn,noDragClassName:on,noWheelClassName:an,noPanClassName:sn,disableKeyboardA11y:ln,nodeExtent:dn,rfId:cn,viewport:pn,onViewportChange:un}){return fb(t),fb(r),function(){const n=rp(),t=e.useRef(!1);e.useEffect(()=>{if("development"===process.env.NODE_ENV&&!t.current){const e=document.querySelector(".react-flow__pane");e&&"1"!==window.getComputedStyle(e).zIndex&&n.getState().onError?.("013",jl("react")),t.current=!0}},[])}(),function(n){const t=Xp(),r=e.useRef(!1);e.useEffect(()=>{!r.current&&t.viewportInitialized&&n&&(setTimeout(()=>n(t),1),r.current=!0)},[n,t.viewportInitialized])}(o),function(n){const t=tp(lb),r=rp();e.useEffect(()=>{n&&(t?.(n),r.setState({transform:[n.x,n.y,n.zoom]}))},[n,t])}(pn),n.jsx(vu,{onPaneClick:H,onPaneMouseEnter:F,onPaneMouseMove:Y,onPaneMouseLeave:G,onPaneContextMenu:q,onPaneScroll:X,paneClickDistance:W,deleteKeyCode:O,selectionKeyCode:w,selectionOnDrag:y,selectionMode:k,onSelectionStart:m,onSelectionEnd:f,multiSelectionKeyCode:E,panActivationKeyCode:_,zoomActivationKeyCode:S,elementsSelectable:N,zoomOnScroll:A,zoomOnPinch:D,zoomOnDoubleClick:V,panOnScroll:T,panOnScrollSpeed:L,panOnScrollMode:B,panOnDrag:$,defaultViewport:j,translateExtent:z,minZoom:M,maxZoom:P,onSelectionContextMenu:b,preventScrolling:R,noDragClassName:on,noWheelClassName:an,noPanClassName:sn,disableKeyboardA11y:ln,onViewportChange:un,isControlledViewport:!!pn,children:n.jsxs(sb,{children:[n.jsx(ab,{edgeTypes:r,onEdgeClick:i,onEdgeDoubleClick:l,onReconnect:en,onReconnectStart:tn,onReconnectEnd:rn,onlyRenderVisibleElements:C,onEdgeContextMenu:K,onEdgeMouseEnter:U,onEdgeMouseMove:Q,onEdgeMouseLeave:J,reconnectRadius:nn,defaultMarkerColor:I,noPanClassName:sn,disableKeyboardA11y:ln,rfId:cn}),n.jsx(ub,{style:h,type:g,component:v,containerStyle:x}),n.jsx("div",{className:"react-flow__edgelabel-renderer"}),n.jsx(_u,{nodeTypes:t,onNodeClick:a,onNodeDoubleClick:s,onNodeMouseEnter:d,onNodeMouseMove:c,onNodeMouseLeave:p,onNodeContextMenu:u,nodeClickDistance:Z,onlyRenderVisibleElements:C,noPanClassName:sn,noDragClassName:on,disableKeyboardA11y:ln,nodeExtent:dn,rfId:cn}),n.jsx("div",{className:"react-flow__viewport-portal"})]})})}gb.displayName="GraphView";const hb=e.memo(gb),vb=({nodes:n,edges:e,defaultNodes:t,defaultEdges:r,width:o,height:a,fitView:i,fitViewOptions:s,minZoom:l=.5,maxZoom:d=2,nodeOrigin:c,nodeExtent:p}={})=>{const u=new Map,b=new Map,m=new Map,f=new Map,g=r??e??[],h=t??n??[],v=c??[0,0],x=p??Ml;rc(m,f,g);const w=Qd(h,u,b,{nodeOrigin:v,nodeExtent:x,elevateNodesOnSelect:!1});let y=[0,0,1];if(i&&o&&a){const n=Xl(u,{filter:n=>!(!n.width&&!n.initialWidth||!n.height&&!n.initialHeight)}),{x:e,y:t,zoom:r}=gd(n,o,a,l,d,s?.padding??.1);y=[e,t,r]}return{rfId:"1",width:0,height:0,transform:y,nodes:h,nodesInitialized:w,nodeLookup:u,parentLookup:b,edges:g,edgeLookup:f,connectionLookup:m,onNodesChange:null,onEdgesChange:null,hasDefaultNodes:void 0!==t,hasDefaultEdges:void 0!==r,panZoom:null,minZoom:l,maxZoom:d,translateExtent:Ml,nodeExtent:x,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionMode:Il.Strict,domNode:null,paneDragging:!1,noPanClassName:"nopan",nodeOrigin:v,nodeDragThreshold:1,connectionDragThreshold:1,snapGrid:[15,15],snapToGrid:!1,nodesDraggable:!0,nodesConnectable:!0,nodesFocusable:!0,edgesFocusable:!0,edgesReconnectable:!0,elementsSelectable:!0,elevateNodesOnSelect:!0,elevateEdgesOnSelect:!1,selectNodesOnDrag:!0,multiSelectionActive:!1,fitViewQueued:i??!1,fitViewOptions:s,fitViewResolver:null,connection:{...Tl},connectionClickStartHandle:null,connectOnClick:!0,ariaLiveMessage:"",autoPanOnConnect:!0,autoPanOnNodeDrag:!0,autoPanOnNodeFocus:!0,autoPanSpeed:15,connectionRadius:20,onError:pd,isValidConnection:void 0,onSelectionChangeHandlers:[],lib:"react",debug:!1,ariaLabelConfig:Rl}},xb=({nodes:n,edges:e,defaultNodes:t,defaultEdges:r,width:o,height:a,fitView:i,fitViewOptions:s,minZoom:l,maxZoom:d,nodeOrigin:c,nodeExtent:p})=>{return u=(u,b)=>{async function m(){const{nodeLookup:n,panZoom:e,fitViewOptions:t,fitViewResolver:r,width:o,height:a,minZoom:i,maxZoom:s}=b();e&&(await Wl({nodes:n,width:o,height:a,panZoom:e,minZoom:i,maxZoom:s},t),r?.resolve(!0),u({fitViewResolver:null}))}return{...vb({nodes:n,edges:e,width:o,height:a,fitView:i,fitViewOptions:s,minZoom:l,maxZoom:d,nodeOrigin:c,nodeExtent:p,defaultNodes:t,defaultEdges:r}),setNodes:n=>{const{nodeLookup:e,parentLookup:t,nodeOrigin:r,elevateNodesOnSelect:o,fitViewQueued:a}=b(),i=Qd(n,e,t,{nodeOrigin:r,nodeExtent:p,elevateNodesOnSelect:o,checkEquality:!0});a&&i?(m(),u({nodes:n,nodesInitialized:i,fitViewQueued:!1,fitViewOptions:void 0})):u({nodes:n,nodesInitialized:i})},setEdges:n=>{const{connectionLookup:e,edgeLookup:t}=b();rc(e,t,n),u({edges:n})},setDefaultNodesAndEdges:(n,e)=>{if(n){const{setNodes:e}=b();e(n),u({hasDefaultNodes:!0})}if(e){const{setEdges:n}=b();n(e),u({hasDefaultEdges:!0})}},updateNodeInternals:n=>{const{triggerNodeChanges:e,nodeLookup:t,parentLookup:r,domNode:o,nodeOrigin:a,nodeExtent:i,debug:s,fitViewQueued:l}=b(),{changes:d,updatedInternals:c}=function(n,e,t,r,o,a){const i=r?.querySelector(".xyflow__viewport");let s=!1;if(!i)return{changes:[],updatedInternals:s};const l=[],d=window.getComputedStyle(i),{m22:c}=new window.DOMMatrixReadOnly(d.transform),p=[];for(const r of n.values()){const n=e.get(r.id);if(!n)continue;if(n.hidden){e.set(n.id,{...n,internals:{...n.internals,handleBounds:void 0}}),s=!0;continue}const i=Sd(r.nodeElement),d=n.measured.width!==i.width||n.measured.height!==i.height;if(i.width&&i.height&&(d||!n.internals.handleBounds||r.force)){const u=r.nodeElement.getBoundingClientRect(),b=vd(n.extent)?n.extent:a;let{positionAbsolute:m}=n.internals;n.parentId&&"parent"===n.extent?m=Jl(m,i,e.get(n.parentId)):b&&(m=Ql(m,b,i));const f={...n,measured:i,internals:{...n.internals,positionAbsolute:m,handleBounds:{source:Md("source",r.nodeElement,u,c,n.id),target:Md("target",r.nodeElement,u,c,n.id)}}};e.set(n.id,f),n.parentId&&Jd(f,e,t,{nodeOrigin:o}),s=!0,d&&(l.push({id:n.id,type:"dimensions",dimensions:i}),n.expandParent&&n.parentId&&p.push({id:n.id,parentId:n.parentId,rect:ad(f,o)}))}}if(p.length>0){const n=ec(p,e,t,o);l.push(...n)}return{changes:l,updatedInternals:s}}(n,t,r,o,a,i);c&&(function(n,e,t){const r=Ud(Zd,t);for(const t of n.values())if(t.parentId)Jd(t,n,e,r);else{const n=Gl(t,r.nodeOrigin),e=vd(t.extent)?t.extent:r.nodeExtent,o=Ql(n,e,xd(t));t.internals.positionAbsolute=o}}(t,r,{nodeOrigin:a,nodeExtent:i}),l?(m(),u({fitViewQueued:!1,fitViewOptions:void 0})):u({}),d?.length>0&&(s&&console.log("React Flow: trigger node changes",d),e?.(d)))},updateNodePositions:(n,e=!1)=>{const t=[],r=[],{nodeLookup:o,triggerNodeChanges:a}=b();for(const[a,i]of n){const n=o.get(a),s=!!(n?.expandParent&&n?.parentId&&i?.position),l={id:a,type:"position",position:s?{x:Math.max(0,i.position.x),y:Math.max(0,i.position.y)}:i.position,dragging:e};s&&n.parentId&&t.push({id:a,parentId:n.parentId,rect:{...i.internals.positionAbsolute,width:i.measured.width??0,height:i.measured.height??0}}),r.push(l)}if(t.length>0){const{parentLookup:n,nodeOrigin:e}=b(),a=ec(t,o,n,e);r.push(...a)}a(r)},triggerNodeChanges:n=>{const{onNodesChange:e,setNodes:t,nodes:r,hasDefaultNodes:o,debug:a}=b();n?.length&&(o&&t(Rp(n,r)),a&&console.log("React Flow: trigger node changes",n),e?.(n))},triggerEdgeChanges:n=>{const{onEdgesChange:e,setEdges:t,edges:r,hasDefaultEdges:o,debug:a}=b();n?.length&&(o&&t(Ip(n,r)),a&&console.log("React Flow: trigger edge changes",n),e?.(n))},addSelectedNodes:n=>{const{multiSelectionActive:e,edgeLookup:t,nodeLookup:r,triggerNodeChanges:o,triggerEdgeChanges:a}=b();e?o(n.map(n=>Ap(n,!0))):(o(Dp(r,new Set([...n]),!0)),a(Dp(t)))},addSelectedEdges:n=>{const{multiSelectionActive:e,edgeLookup:t,nodeLookup:r,triggerNodeChanges:o,triggerEdgeChanges:a}=b();e?a(n.map(n=>Ap(n,!0))):(a(Dp(t,new Set([...n]))),o(Dp(r,new Set,!0)))},unselectNodesAndEdges:({nodes:n,edges:e}={})=>{const{edges:t,nodes:r,nodeLookup:o,triggerNodeChanges:a,triggerEdgeChanges:i}=b(),s=e||t,l=(n||r).map(n=>{const e=o.get(n.id);return e&&(e.selected=!1),Ap(n.id,!1)}),d=s.map(n=>Ap(n.id,!1));a(l),i(d)},setMinZoom:n=>{const{panZoom:e,maxZoom:t}=b();e?.setScaleExtent([n,t]),u({minZoom:n})},setMaxZoom:n=>{const{panZoom:e,minZoom:t}=b();e?.setScaleExtent([t,n]),u({maxZoom:n})},setTranslateExtent:n=>{b().panZoom?.setTranslateExtent(n),u({translateExtent:n})},setPaneClickDistance:n=>{b().panZoom?.setClickDistance(n)},resetSelectedElements:()=>{const{edges:n,nodes:e,triggerNodeChanges:t,triggerEdgeChanges:r,elementsSelectable:o}=b();if(!o)return;const a=e.reduce((n,e)=>e.selected?[...n,Ap(e.id,!1)]:n,[]),i=n.reduce((n,e)=>e.selected?[...n,Ap(e.id,!1)]:n,[]);t(a),r(i)},setNodeExtent:n=>{const{nodes:e,nodeLookup:t,parentLookup:r,nodeOrigin:o,elevateNodesOnSelect:a,nodeExtent:i}=b();n[0][0]===i[0][0]&&n[0][1]===i[0][1]&&n[1][0]===i[1][0]&&n[1][1]===i[1][1]||(Qd(e,t,r,{nodeOrigin:o,nodeExtent:n,elevateNodesOnSelect:a,checkEquality:!1}),u({nodeExtent:n}))},panBy:n=>{const{transform:e,width:t,height:r,panZoom:o,translateExtent:a}=b();return async function({delta:n,panZoom:e,transform:t,translateExtent:r,width:o,height:a}){if(!e||!n.x&&!n.y)return Promise.resolve(!1);const i=await e.setViewportConstrained({x:t[0]+n.x,y:t[1]+n.y,zoom:t[2]},[[0,0],[o,a]],r),s=!!i&&(i.x!==t[0]||i.y!==t[1]||i.k!==t[2]);return Promise.resolve(s)}({delta:n,panZoom:o,transform:e,translateExtent:a,width:t,height:r})},setCenter:async(n,e,t)=>{const{width:r,height:o,maxZoom:a,panZoom:i}=b();if(!i)return Promise.resolve(!1);const s=void 0!==t?.zoom?t.zoom:a;return await i.setViewport({x:r/2-n*s,y:o/2-e*s,zoom:s},{duration:t?.duration,ease:t?.ease,interpolate:t?.interpolate}),Promise.resolve(!0)},cancelConnection:()=>{u({connection:{...Tl}})},updateConnection:n=>{u({connection:n})},reset:()=>u({...vb()})}},b=Object.is,u?Uc(u,b):Uc;var u,b};function wb({initialNodes:t,initialEdges:r,defaultNodes:o,defaultEdges:a,initialWidth:i,initialHeight:s,initialMinZoom:l,initialMaxZoom:d,initialFitViewOptions:c,fitView:p,nodeOrigin:u,nodeExtent:b,children:m}){const[f]=e.useState(()=>xb({nodes:t,edges:r,defaultNodes:o,defaultEdges:a,width:i,height:s,fitView:p,minZoom:l,maxZoom:d,fitViewOptions:c,nodeOrigin:u,nodeExtent:b}));return n.jsx(np,{value:f,children:n.jsx(Yp,{children:m})})}function yb({children:t,nodes:r,edges:o,defaultNodes:a,defaultEdges:i,width:s,height:l,fitView:d,fitViewOptions:c,minZoom:p,maxZoom:u,nodeOrigin:b,nodeExtent:m}){return e.useContext(Jc)?n.jsx(n.Fragment,{children:t}):n.jsx(wb,{initialNodes:r,initialEdges:o,defaultNodes:a,defaultEdges:i,initialWidth:s,initialHeight:l,fitView:d,initialFitViewOptions:c,initialMinZoom:p,initialMaxZoom:u,nodeOrigin:b,nodeExtent:m,children:t})}const kb={width:"100%",height:"100%",overflow:"hidden",position:"relative",zIndex:0};var Eb,_b=Vp(function({nodes:t,edges:r,defaultNodes:o,defaultEdges:a,className:i,nodeTypes:s,edgeTypes:l,onNodeClick:d,onEdgeClick:c,onInit:p,onMove:u,onMoveStart:b,onMoveEnd:m,onConnect:f,onConnectStart:g,onConnectEnd:h,onClickConnectStart:v,onClickConnectEnd:x,onNodeMouseEnter:w,onNodeMouseMove:y,onNodeMouseLeave:k,onNodeContextMenu:E,onNodeDoubleClick:_,onNodeDragStart:S,onNodeDrag:O,onNodeDragStop:C,onNodesDelete:N,onEdgesDelete:j,onDelete:z,onSelectionChange:M,onSelectionDragStart:P,onSelectionDrag:R,onSelectionDragStop:I,onSelectionContextMenu:A,onSelectionStart:D,onSelectionEnd:T,onBeforeDelete:L,connectionMode:B,connectionLineType:V=Ll.Bezier,connectionLineStyle:$,connectionLineComponent:H,connectionLineContainerStyle:F,deleteKeyCode:Y="Backspace",selectionKeyCode:G="Shift",selectionOnDrag:X=!1,selectionMode:q=Dl.Full,panActivationKeyCode:W="Space",multiSelectionKeyCode:Z=(hd()?"Meta":"Control"),zoomActivationKeyCode:K=(hd()?"Meta":"Control"),snapToGrid:U,snapGrid:Q,onlyRenderVisibleElements:J=!1,selectNodesOnDrag:nn,nodesDraggable:en,autoPanOnNodeFocus:tn,nodesConnectable:rn,nodesFocusable:on,nodeOrigin:an=wp,edgesFocusable:sn,edgesReconnectable:ln,elementsSelectable:dn=!0,defaultViewport:cn=yp,minZoom:pn=.5,maxZoom:un=2,translateExtent:bn=Ml,preventScrolling:mn=!0,nodeExtent:fn,defaultMarkerColor:gn="#b1b1b7",zoomOnScroll:hn=!0,zoomOnPinch:vn=!0,panOnScroll:xn=!1,panOnScrollSpeed:wn=.5,panOnScrollMode:yn=Al.Free,zoomOnDoubleClick:kn=!0,panOnDrag:En=!0,onPaneClick:_n,onPaneMouseEnter:Sn,onPaneMouseMove:On,onPaneMouseLeave:Cn,onPaneScroll:Nn,onPaneContextMenu:jn,paneClickDistance:zn=0,nodeClickDistance:Mn=0,children:Pn,onReconnect:Rn,onReconnectStart:In,onReconnectEnd:An,onEdgeContextMenu:Dn,onEdgeDoubleClick:Tn,onEdgeMouseEnter:Ln,onEdgeMouseMove:Bn,onEdgeMouseLeave:Vn,reconnectRadius:$n=10,onNodesChange:Hn,onEdgesChange:Fn,noDragClassName:Yn="nodrag",noWheelClassName:Gn="nowheel",noPanClassName:Xn="nopan",fitView:qn,fitViewOptions:Wn,connectOnClick:Zn,attributionPosition:Kn,proOptions:Un,defaultEdgeOptions:Qn,elevateNodesOnSelect:Jn,elevateEdgesOnSelect:ne,disableKeyboardA11y:ee=!1,autoPanOnConnect:te,autoPanOnNodeDrag:re,autoPanSpeed:oe,connectionRadius:ae,isValidConnection:ie,onError:se,style:le,id:de,nodeDragThreshold:ce,connectionDragThreshold:pe,viewport:ue,onViewportChange:be,width:me,height:fe,colorMode:ge="light",debug:he,onScroll:ve,ariaLabelConfig:xe,...we},ye){const ke=de||"1",Ee=function(n){const[t,r]=e.useState("system"===n?null:n);return e.useEffect(()=>{if("system"!==n)return void r(n);const e=Op(),t=()=>r(e?.matches?"dark":"light");return t(),e?.addEventListener("change",t),()=>{e?.removeEventListener("change",t)}},[n]),null!==t?t:Op()?.matches?"dark":"light"}(ge),_e=e.useCallback(n=>{n.currentTarget.scrollTo({top:0,left:0,behavior:"instant"}),ve?.(n)},[ve]);return n.jsx("div",{"data-testid":"rf__wrapper",...we,onScroll:_e,style:{...le,...kb},ref:ye,className:No(["react-flow",i,Ee]),id:de,role:"application",children:n.jsxs(yb,{nodes:t,edges:r,width:me,height:fe,fitView:qn,fitViewOptions:Wn,minZoom:pn,maxZoom:un,nodeOrigin:an,nodeExtent:fn,children:[n.jsx(hb,{onInit:p,onNodeClick:d,onEdgeClick:c,onNodeMouseEnter:w,onNodeMouseMove:y,onNodeMouseLeave:k,onNodeContextMenu:E,onNodeDoubleClick:_,nodeTypes:s,edgeTypes:l,connectionLineType:V,connectionLineStyle:$,connectionLineComponent:H,connectionLineContainerStyle:F,selectionKeyCode:G,selectionOnDrag:X,selectionMode:q,deleteKeyCode:Y,multiSelectionKeyCode:Z,panActivationKeyCode:W,zoomActivationKeyCode:K,onlyRenderVisibleElements:J,defaultViewport:cn,translateExtent:bn,minZoom:pn,maxZoom:un,preventScrolling:mn,zoomOnScroll:hn,zoomOnPinch:vn,zoomOnDoubleClick:kn,panOnScroll:xn,panOnScrollSpeed:wn,panOnScrollMode:yn,panOnDrag:En,onPaneClick:_n,onPaneMouseEnter:Sn,onPaneMouseMove:On,onPaneMouseLeave:Cn,onPaneScroll:Nn,onPaneContextMenu:jn,paneClickDistance:zn,nodeClickDistance:Mn,onSelectionContextMenu:A,onSelectionStart:D,onSelectionEnd:T,onReconnect:Rn,onReconnectStart:In,onReconnectEnd:An,onEdgeContextMenu:Dn,onEdgeDoubleClick:Tn,onEdgeMouseEnter:Ln,onEdgeMouseMove:Bn,onEdgeMouseLeave:Vn,reconnectRadius:$n,defaultMarkerColor:gn,noDragClassName:Yn,noWheelClassName:Gn,noPanClassName:Xn,rfId:ke,disableKeyboardA11y:ee,nodeExtent:fn,viewport:ue,onViewportChange:be}),n.jsx(Sp,{nodes:t,edges:r,defaultNodes:o,defaultEdges:a,onConnect:f,onConnectStart:g,onConnectEnd:h,onClickConnectStart:v,onClickConnectEnd:x,nodesDraggable:en,autoPanOnNodeFocus:tn,nodesConnectable:rn,nodesFocusable:on,edgesFocusable:sn,edgesReconnectable:ln,elementsSelectable:dn,elevateNodesOnSelect:Jn,elevateEdgesOnSelect:ne,minZoom:pn,maxZoom:un,nodeExtent:fn,onNodesChange:Hn,onEdgesChange:Fn,snapToGrid:U,snapGrid:Q,connectionMode:B,translateExtent:bn,connectOnClick:Zn,defaultEdgeOptions:Qn,fitView:qn,fitViewOptions:Wn,onNodesDelete:N,onEdgesDelete:j,onDelete:z,onNodeDragStart:S,onNodeDrag:O,onNodeDragStop:C,onSelectionDrag:R,onSelectionDragStart:P,onSelectionDragStop:I,onMove:u,onMoveStart:b,onMoveEnd:m,noPanClassName:Xn,nodeOrigin:an,rfId:ke,autoPanOnConnect:te,autoPanOnNodeDrag:re,autoPanSpeed:oe,onError:se,connectionRadius:ae,isValidConnection:ie,selectNodesOnDrag:nn,nodeDragThreshold:ce,connectionDragThreshold:pe,onBeforeDelete:L,paneClickDistance:zn,debug:he,ariaLabelConfig:xe}),n.jsx(xp,{onSelectionChange:M}),Pn,n.jsx(bp,{proOptions:Un,position:Kn}),n.jsx(pp,{rfId:ke,disableKeyboardA11y:ee})]})})});function Sb({dimensions:e,lineWidth:t,variant:r,className:o}){return n.jsx("path",{strokeWidth:t,d:`M${e[0]/2} 0 V${e[1]} M0 ${e[1]/2} H${e[0]}`,className:No(["react-flow__background-pattern",r,o])})}function Ob({radius:e,className:t}){return n.jsx("circle",{cx:e,cy:e,r:e,className:No(["react-flow__background-pattern","dots",t])})}!function(n){n.Lines="lines",n.Dots="dots",n.Cross="cross"}(Eb||(Eb={}));const Cb={[Eb.Dots]:1,[Eb.Lines]:1,[Eb.Cross]:6},Nb=n=>({transform:n.transform,patternId:`pattern-${n.rfId}`});function jb({id:t,variant:r=Eb.Dots,gap:o=20,size:a,lineWidth:i=1,offset:s=0,color:l,bgColor:d,style:c,className:p,patternClassName:u}){const b=e.useRef(null),{transform:m,patternId:f}=tp(Nb,Qc),g=a||Cb[r],h=r===Eb.Dots,v=r===Eb.Cross,x=Array.isArray(o)?o:[o,o],w=[x[0]*m[2]||1,x[1]*m[2]||1],y=g*m[2],k=Array.isArray(s)?s:[s,s],E=v?[y,y]:w,_=[k[0]*m[2]||1+E[0]/2,k[1]*m[2]||1+E[1]/2],S=`${f}${t||""}`;return n.jsxs("svg",{className:No(["react-flow__background",p]),style:{...c,...Zp,"--xy-background-color-props":d,"--xy-background-pattern-color-props":l},ref:b,"data-testid":"rf__background",children:[n.jsx("pattern",{id:S,x:m[0]%w[0],y:m[1]%w[1],width:w[0],height:w[1],patternUnits:"userSpaceOnUse",patternTransform:`translate(-${_[0]},-${_[1]})`,children:h?n.jsx(Ob,{radius:y/2,className:u}):n.jsx(Sb,{dimensions:E,lineWidth:i,variant:r,className:u})}),n.jsx("rect",{x:"0",y:"0",width:"100%",height:"100%",fill:`url(#${S})`})]})}function zb(){return n.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",children:n.jsx("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"})})}function Mb(){return n.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5",children:n.jsx("path",{d:"M0 0h32v4.2H0z"})})}function Pb(){return n.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30",children:n.jsx("path",{d:"M3.692 4.63c0-.53.4-.938.939-.938h5.215V0H4.708C2.13 0 0 2.054 0 4.63v5.216h3.692V4.631zM27.354 0h-5.2v3.692h5.17c.53 0 .984.4.984.939v5.215H32V4.631A4.624 4.624 0 0027.354 0zm.954 24.83c0 .532-.4.94-.939.94h-5.215v3.768h5.215c2.577 0 4.631-2.13 4.631-4.707v-5.139h-3.692v5.139zm-23.677.94c-.531 0-.939-.4-.939-.94v-5.138H0v5.139c0 2.577 2.13 4.707 4.708 4.707h5.138V25.77H4.631z"})})}function Rb(){return n.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:n.jsx("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0 8 0 4.571 3.429 4.571 7.619v3.048H3.048A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047zm4.724-13.866H7.467V7.619c0-2.59 2.133-4.724 4.723-4.724 2.591 0 4.724 2.133 4.724 4.724v3.048z"})})}function Ib(){return n.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:n.jsx("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0c-4.114 1.828-1.37 2.133.305 2.438 1.676.305 4.42 2.59 4.42 5.181v3.048H3.047A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047z"})})}function Ab({children:e,className:t,...r}){return n.jsx("button",{type:"button",className:No(["react-flow__controls-button",t]),...r,children:e})}jb.displayName="Background",e.memo(jb);const Db=n=>({isInteractive:n.nodesDraggable||n.nodesConnectable||n.elementsSelectable,minZoomReached:n.transform[2]<=n.minZoom,maxZoomReached:n.transform[2]>=n.maxZoom,ariaLabelConfig:n.ariaLabelConfig});function Tb({style:e,showZoom:t=!0,showFitView:r=!0,showInteractive:o=!0,fitViewOptions:a,onZoomIn:i,onZoomOut:s,onFitView:l,onInteractiveChange:d,className:c,children:p,position:u="bottom-left",orientation:b="vertical","aria-label":m}){const f=rp(),{isInteractive:g,minZoomReached:h,maxZoomReached:v,ariaLabelConfig:x}=tp(Db,Qc),{zoomIn:w,zoomOut:y,fitView:k}=Xp(),E="horizontal"===b?"horizontal":"vertical";return n.jsxs(up,{className:No(["react-flow__controls",E,c]),position:u,style:e,"data-testid":"rf__controls","aria-label":m??x["controls.ariaLabel"],children:[t&&n.jsxs(n.Fragment,{children:[n.jsx(Ab,{onClick:()=>{w(),i?.()},className:"react-flow__controls-zoomin",title:x["controls.zoomIn.ariaLabel"],"aria-label":x["controls.zoomIn.ariaLabel"],disabled:v,children:n.jsx(zb,{})}),n.jsx(Ab,{onClick:()=>{y(),s?.()},className:"react-flow__controls-zoomout",title:x["controls.zoomOut.ariaLabel"],"aria-label":x["controls.zoomOut.ariaLabel"],disabled:h,children:n.jsx(Mb,{})})]}),r&&n.jsx(Ab,{className:"react-flow__controls-fitview",onClick:()=>{k(a),l?.()},title:x["controls.fitView.ariaLabel"],"aria-label":x["controls.fitView.ariaLabel"],children:n.jsx(Pb,{})}),o&&n.jsx(Ab,{className:"react-flow__controls-interactive",onClick:()=>{f.setState({nodesDraggable:!g,nodesConnectable:!g,elementsSelectable:!g}),d?.(!g)},title:x["controls.interactive.ariaLabel"],"aria-label":x["controls.interactive.ariaLabel"],children:g?n.jsx(Ib,{}):n.jsx(Rb,{})}),p]})}Tb.displayName="Controls";const Lb=e.memo(Tb);const Bb=e.memo(function({id:e,x:t,y:r,width:o,height:a,style:i,color:s,strokeColor:l,strokeWidth:d,className:c,borderRadius:p,shapeRendering:u,selected:b,onClick:m}){const{background:f,backgroundColor:g}=i||{},h=s||f||g;return n.jsx("rect",{className:No(["react-flow__minimap-node",{selected:b},c]),x:t,y:r,rx:p,ry:p,width:o,height:a,style:{fill:h,stroke:l,strokeWidth:d},shapeRendering:u,onClick:m?n=>m(n,e):void 0})}),Vb=n=>n.nodes.map(n=>n.id),$b=n=>n instanceof Function?n:()=>n;const Hb=e.memo(function({id:e,nodeColorFunc:t,nodeStrokeColorFunc:r,nodeClassNameFunc:o,nodeBorderRadius:a,nodeStrokeWidth:i,shapeRendering:s,NodeComponent:l,onClick:d}){const{node:c,x:p,y:u,width:b,height:m}=tp(n=>{const{internals:t}=n.nodeLookup.get(e),r=t.userNode,{x:o,y:a}=t.positionAbsolute,{width:i,height:s}=xd(r);return{node:r,x:o,y:a,width:i,height:s}},Qc);return c&&!c.hidden&&wd(c)?n.jsx(l,{x:p,y:u,width:b,height:m,style:c.style,selected:!!c.selected,className:o(c),color:t(c),borderRadius:a,strokeColor:r(c),strokeWidth:i,shapeRendering:s,onClick:d,id:c.id}):null});var Fb=e.memo(function({nodeStrokeColor:e,nodeColor:t,nodeClassName:r="",nodeBorderRadius:o=5,nodeStrokeWidth:a,nodeComponent:i=Bb,onClick:s}){const l=tp(Vb,Qc),d=$b(t),c=$b(e),p=$b(r),u="undefined"==typeof window||window.chrome?"crispEdges":"geometricPrecision";return n.jsx(n.Fragment,{children:l.map(e=>n.jsx(Hb,{id:e,nodeColorFunc:d,nodeStrokeColorFunc:c,nodeClassNameFunc:p,nodeBorderRadius:o,nodeStrokeWidth:a,NodeComponent:i,onClick:s,shapeRendering:u},e))})});const Yb=n=>!n.hidden,Gb=n=>{const e={x:-n.transform[0]/n.transform[2],y:-n.transform[1]/n.transform[2],width:n.width/n.transform[2],height:n.height/n.transform[2]};return{viewBB:e,boundingRect:n.nodeLookup.size>0?sd(Xl(n.nodeLookup,{filter:Yb}),e):e,rfId:n.rfId,panZoom:n.panZoom,translateExtent:n.translateExtent,flowWidth:n.width,flowHeight:n.height,ariaLabelConfig:n.ariaLabelConfig}};function Xb({style:t,className:r,nodeStrokeColor:o,nodeColor:a,nodeClassName:i="",nodeBorderRadius:s=5,nodeStrokeWidth:l,nodeComponent:d,bgColor:c,maskColor:p,maskStrokeColor:u,maskStrokeWidth:b,position:m="bottom-right",onClick:f,onNodeClick:g,pannable:h=!1,zoomable:v=!1,ariaLabel:x,inversePan:w,zoomStep:y=10,offsetScale:k=5}){const E=rp(),_=e.useRef(null),{boundingRect:S,viewBB:O,rfId:C,panZoom:N,translateExtent:j,flowWidth:z,flowHeight:M,ariaLabelConfig:P}=tp(Gb,Qc),R=t?.width??200,I=t?.height??150,A=S.width/R,D=S.height/I,T=Math.max(A,D),L=T*R,B=T*I,V=k*T,$=S.x-(L-S.width)/2-V,H=S.y-(B-S.height)/2-V,F=L+2*V,Y=B+2*V,G=`react-flow__minimap-desc-${C}`,X=e.useRef(0),q=e.useRef();X.current=T,e.useEffect(()=>{if(_.current&&N)return q.current=function({domNode:n,panZoom:e,getTransform:t,getViewScale:r}){const o=Xa(n);return{update:function({translateExtent:n,width:a,height:i,zoomStep:s=10,pannable:l=!0,zoomable:d=!0,inversePan:c=!1}){let p=[0,0];const u=hl().on("start",n=>{"mousedown"!==n.sourceEvent.type&&"touchstart"!==n.sourceEvent.type||(p=[n.sourceEvent.clientX??n.sourceEvent.touches[0].clientX,n.sourceEvent.clientY??n.sourceEvent.touches[0].clientY])}).on("zoom",l?o=>{const s=t();if("mousemove"!==o.sourceEvent.type&&"touchmove"!==o.sourceEvent.type||!e)return;const l=[o.sourceEvent.clientX??o.sourceEvent.touches[0].clientX,o.sourceEvent.clientY??o.sourceEvent.touches[0].clientY],d=[l[0]-p[0],l[1]-p[1]];p=l;const u=r()*Math.max(s[2],Math.log(s[2]))*(c?-1:1),b={x:s[0]-d[0]*u,y:s[1]-d[1]*u},m=[[0,0],[a,i]];e.setViewportConstrained({x:b.x,y:b.y,zoom:s[2]},m,n)}:null).on("zoom.wheel",d?n=>{const r=t();if("wheel"!==n.sourceEvent.type||!e)return;const o=-n.sourceEvent.deltaY*(1===n.sourceEvent.deltaMode?.05:n.sourceEvent.deltaMode?1:.002)*s,a=r[2]*Math.pow(2,o);e.scaleTo(a)}:null);o.call(u,{})},destroy:function(){o.on("zoom",null)},pointer:qa}}({domNode:_.current,panZoom:N,getTransform:()=>E.getState().transform,getViewScale:()=>X.current}),()=>{q.current?.destroy()}},[N]),e.useEffect(()=>{q.current?.update({translateExtent:j,width:z,height:M,inversePan:w,pannable:h,zoomStep:y,zoomable:v})},[h,v,w,y,j,z,M]);const W=f?n=>{const[e,t]=q.current?.pointer(n)||[0,0];f(n,{x:e,y:t})}:void 0,Z=g?e.useCallback((n,e)=>{const t=E.getState().nodeLookup.get(e).internals.userNode;g(n,t)},[]):void 0,K=x??P["minimap.ariaLabel"];return n.jsx(up,{position:m,style:{...t,"--xy-minimap-background-color-props":"string"==typeof c?c:void 0,"--xy-minimap-mask-background-color-props":"string"==typeof p?p:void 0,"--xy-minimap-mask-stroke-color-props":"string"==typeof u?u:void 0,"--xy-minimap-mask-stroke-width-props":"number"==typeof b?b*T:void 0,"--xy-minimap-node-background-color-props":"string"==typeof a?a:void 0,"--xy-minimap-node-stroke-color-props":"string"==typeof o?o:void 0,"--xy-minimap-node-stroke-width-props":"number"==typeof l?l:void 0},className:No(["react-flow__minimap",r]),"data-testid":"rf__minimap",children:n.jsxs("svg",{width:R,height:I,viewBox:`${$} ${H} ${F} ${Y}`,className:"react-flow__minimap-svg",role:"img","aria-labelledby":G,ref:_,onClick:W,children:[K&&n.jsx("title",{id:G,children:K}),n.jsx(Fb,{onClick:Z,nodeColor:a,nodeStrokeColor:o,nodeBorderRadius:s,nodeClassName:i,nodeStrokeWidth:l,nodeComponent:d}),n.jsx("path",{className:"react-flow__minimap-mask",d:`M${$-V},${H-V}h${F+2*V}v${Y+2*V}h${-F-2*V}z\n M${O.x},${O.y}h${O.width}v${O.height}h${-O.width}z`,fillRule:"evenodd",pointerEvents:"none"})]})})}Xb.displayName="MiniMap",e.memo(Xb);const qb={[kc.Line]:"right",[kc.Handle]:"bottom-right"};e.memo(function({nodeId:t,position:r,variant:o=kc.Handle,className:a,style:i,children:s,color:l,minWidth:d=10,minHeight:c=10,maxWidth:p=Number.MAX_VALUE,maxHeight:u=Number.MAX_VALUE,keepAspectRatio:b=!1,resizeDirection:m,autoScale:f=!0,shouldResize:g,onResizeStart:h,onResize:v,onResizeEnd:x}){const w=lu(),y="string"==typeof t?t:w,k=rp(),E=e.useRef(null),_=o===kc.Handle,S=tp(e.useCallback((O=_&&f,n=>O?`${Math.max(1/n.transform[2],1)}`:void 0),[_,f]),Qc);var O;const C=e.useRef(null),N=r??qb[o];e.useEffect(()=>{if(E.current&&y)return C.current||(C.current=zc({domNode:E.current,nodeId:y,getStoreItems:()=>{const{nodeLookup:n,transform:e,snapGrid:t,snapToGrid:r,nodeOrigin:o,domNode:a}=k.getState();return{nodeLookup:n,transform:e,snapGrid:t,snapToGrid:r,nodeOrigin:o,paneDomNode:a}},onChange:(n,e)=>{const{triggerNodeChanges:t,nodeLookup:r,parentLookup:o,nodeOrigin:a}=k.getState(),i=[],s={x:n.x,y:n.y},l=r.get(y);if(l&&l.expandParent&&l.parentId){const e=l.origin??a,t=n.width??l.measured.width??0,d=n.height??l.measured.height??0,c=ec([{id:l.id,parentId:l.parentId,rect:{width:t,height:d,...yd({x:n.x??l.position.x,y:n.y??l.position.y},{width:t,height:d},l.parentId,r,e)}}],r,o,a);i.push(...c),s.x=n.x?Math.max(e[0]*t,n.x):void 0,s.y=n.y?Math.max(e[1]*d,n.y):void 0}if(void 0!==s.x&&void 0!==s.y){const n={id:y,type:"position",position:{...s}};i.push(n)}if(void 0!==n.width&&void 0!==n.height){const e={id:y,type:"dimensions",resizing:!0,setAttributes:!m||("horizontal"===m?"width":"height"),dimensions:{width:n.width,height:n.height}};i.push(e)}for(const n of e){const e={...n,type:"position"};i.push(e)}t(i)},onEnd:({width:n,height:e})=>{const t={id:y,type:"dimensions",resizing:!1,dimensions:{width:n,height:e}};k.getState().triggerNodeChanges([t])}})),C.current.update({controlPosition:N,boundaries:{minWidth:d,minHeight:c,maxWidth:p,maxHeight:u},keepAspectRatio:b,resizeDirection:m,onResizeStart:h,onResize:v,onResizeEnd:x,shouldResize:g}),()=>{C.current?.destroy()}},[N,d,c,p,u,b,h,v,x,g]);const j=N.split("-");return n.jsx("div",{className:No(["react-flow__resize-control","nodrag",...j,o,a]),ref:E,style:{...i,scale:S,...l&&{[_?"backgroundColor":"borderColor"]:l}},children:s})});var Wb,Zb,Kb,Ub,Qb,Jb,nm,em,tm,rm,om,am,im,sm,lm,dm,cm,pm,um,bm,mm,fm,gm,hm,vm,xm,wm,ym,km,Em,_m,Sm,Om,Cm,Nm,jm,zm,Mm,Pm,Rm,Im,Am,Dm,Tm,Lm,Bm,Vm,$m,Hm,Fm,Ym,Gm,Xm,qm,Wm,Zm,Km,Um,Qm,Jm,nf,ef,tf,rf,of,af,sf,lf,df,cf,pf,uf,bf,mf,ff,gf,hf,vf,xf,wf,yf,kf,Ef,_f,Sf,Of,Cf,Nf,jf,zf,Mf,Pf,Rf,If;function Af(){if(Zb)return Wb;Zb=1;var n="\0";function e(n,e){n[e]?n[e]++:n[e]=1}function t(n,e){--n[e]||delete n[e]}function r(n,e,t,r){var o=""+e,a=""+t;if(!n&&o>a){var i=o;o=a,a=i}return o+""+a+""+(void 0===r?"\0":r)}function o(n,e){return r(n,e.v,e.w,e.name)}return Wb=class{_isDirected=!0;_isMultigraph=!1;_isCompound=!1;_label;_defaultNodeLabelFn=()=>{};_defaultEdgeLabelFn=()=>{};_nodes={};_in={};_preds={};_out={};_sucs={};_edgeObjs={};_edgeLabels={};_nodeCount=0;_edgeCount=0;_parent;_children;constructor(e){e&&(this._isDirected=!Object.hasOwn(e,"directed")||e.directed,this._isMultigraph=!!Object.hasOwn(e,"multigraph")&&e.multigraph,this._isCompound=!!Object.hasOwn(e,"compound")&&e.compound),this._isCompound&&(this._parent={},this._children={},this._children[n]={})}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(n){return this._label=n,this}graph(){return this._label}setDefaultNodeLabel(n){return this._defaultNodeLabelFn=n,"function"!=typeof n&&(this._defaultNodeLabelFn=()=>n),this}nodeCount(){return this._nodeCount}nodes(){return Object.keys(this._nodes)}sources(){var n=this;return this.nodes().filter(e=>0===Object.keys(n._in[e]).length)}sinks(){var n=this;return this.nodes().filter(e=>0===Object.keys(n._out[e]).length)}setNodes(n,e){var t=arguments,r=this;return n.forEach(function(n){t.length>1?r.setNode(n,e):r.setNode(n)}),this}setNode(e,t){return Object.hasOwn(this._nodes,e)?(arguments.length>1&&(this._nodes[e]=t),this):(this._nodes[e]=arguments.length>1?t:this._defaultNodeLabelFn(e),this._isCompound&&(this._parent[e]=n,this._children[e]={},this._children[n][e]=!0),this._in[e]={},this._preds[e]={},this._out[e]={},this._sucs[e]={},++this._nodeCount,this)}node(n){return this._nodes[n]}hasNode(n){return Object.hasOwn(this._nodes,n)}removeNode(n){var e=this;if(Object.hasOwn(this._nodes,n)){var t=n=>e.removeEdge(e._edgeObjs[n]);delete this._nodes[n],this._isCompound&&(this._removeFromParentsChildList(n),delete this._parent[n],this.children(n).forEach(function(n){e.setParent(n)}),delete this._children[n]),Object.keys(this._in[n]).forEach(t),delete this._in[n],delete this._preds[n],Object.keys(this._out[n]).forEach(t),delete this._out[n],delete this._sucs[n],--this._nodeCount}return this}setParent(e,t){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(void 0===t)t=n;else{for(var r=t+="";void 0!==r;r=this.parent(r))if(r===e)throw new Error("Setting "+t+" as parent of "+e+" would create a cycle");this.setNode(t)}return this.setNode(e),this._removeFromParentsChildList(e),this._parent[e]=t,this._children[t][e]=!0,this}_removeFromParentsChildList(n){delete this._children[this._parent[n]][n]}parent(e){if(this._isCompound){var t=this._parent[e];if(t!==n)return t}}children(e=n){if(this._isCompound){var t=this._children[e];if(t)return Object.keys(t)}else{if(e===n)return this.nodes();if(this.hasNode(e))return[]}}predecessors(n){var e=this._preds[n];if(e)return Object.keys(e)}successors(n){var e=this._sucs[n];if(e)return Object.keys(e)}neighbors(n){var e=this.predecessors(n);if(e){const r=new Set(e);for(var t of this.successors(n))r.add(t);return Array.from(r.values())}}isLeaf(n){return 0===(this.isDirected()?this.successors(n):this.neighbors(n)).length}filterNodes(n){var e=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});e.setGraph(this.graph());var t=this;Object.entries(this._nodes).forEach(function([t,r]){n(t)&&e.setNode(t,r)}),Object.values(this._edgeObjs).forEach(function(n){e.hasNode(n.v)&&e.hasNode(n.w)&&e.setEdge(n,t.edge(n))});var r={};function o(n){var a=t.parent(n);return void 0===a||e.hasNode(a)?(r[n]=a,a):a in r?r[a]:o(a)}return this._isCompound&&e.nodes().forEach(n=>e.setParent(n,o(n))),e}setDefaultEdgeLabel(n){return this._defaultEdgeLabelFn=n,"function"!=typeof n&&(this._defaultEdgeLabelFn=()=>n),this}edgeCount(){return this._edgeCount}edges(){return Object.values(this._edgeObjs)}setPath(n,e){var t=this,r=arguments;return n.reduce(function(n,o){return r.length>1?t.setEdge(n,o,e):t.setEdge(n,o),o}),this}setEdge(){var n,t,o,a,i=!1,s=arguments[0];"object"==typeof s&&null!==s&&"v"in s?(n=s.v,t=s.w,o=s.name,2===arguments.length&&(a=arguments[1],i=!0)):(n=s,t=arguments[1],o=arguments[3],arguments.length>2&&(a=arguments[2],i=!0)),n=""+n,t=""+t,void 0!==o&&(o=""+o);var l=r(this._isDirected,n,t,o);if(Object.hasOwn(this._edgeLabels,l))return i&&(this._edgeLabels[l]=a),this;if(void 0!==o&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(n),this.setNode(t),this._edgeLabels[l]=i?a:this._defaultEdgeLabelFn(n,t,o);var d=function(n,e,t,r){var o=""+e,a=""+t;if(!n&&o>a){var i=o;o=a,a=i}var s={v:o,w:a};r&&(s.name=r);return s}(this._isDirected,n,t,o);return n=d.v,t=d.w,Object.freeze(d),this._edgeObjs[l]=d,e(this._preds[t],n),e(this._sucs[n],t),this._in[t][l]=d,this._out[n][l]=d,this._edgeCount++,this}edge(n,e,t){var a=1===arguments.length?o(this._isDirected,arguments[0]):r(this._isDirected,n,e,t);return this._edgeLabels[a]}edgeAsObj(){const n=this.edge(...arguments);return"object"!=typeof n?{label:n}:n}hasEdge(n,e,t){var a=1===arguments.length?o(this._isDirected,arguments[0]):r(this._isDirected,n,e,t);return Object.hasOwn(this._edgeLabels,a)}removeEdge(n,e,a){var i=1===arguments.length?o(this._isDirected,arguments[0]):r(this._isDirected,n,e,a),s=this._edgeObjs[i];return s&&(n=s.v,e=s.w,delete this._edgeLabels[i],delete this._edgeObjs[i],t(this._preds[e],n),t(this._sucs[n],e),delete this._in[e][i],delete this._out[n][i],this._edgeCount--),this}inEdges(n,e){var t=this._in[n];if(t){var r=Object.values(t);return e?r.filter(n=>n.v===e):r}}outEdges(n,e){var t=this._out[n];if(t){var r=Object.values(t);return e?r.filter(n=>n.w===e):r}}nodeEdges(n,e){var t=this.inEdges(n,e);if(t)return t.concat(this.outEdges(n,e))}},Wb}function Df(){return Jb?Qb:(Jb=1,Qb={Graph:Af(),version:Ub?Kb:(Ub=1,Kb="2.2.4")})}function Tf(){if(em)return nm;em=1;var n=Af();function e(n){return n.nodes().map(function(e){var t=n.node(e),r=n.parent(e),o={v:e};return void 0!==t&&(o.value=t),void 0!==r&&(o.parent=r),o})}function t(n){return n.edges().map(function(e){var t=n.edge(e),r={v:e.v,w:e.w};return void 0!==e.name&&(r.name=e.name),void 0!==t&&(r.value=t),r})}return nm={write:function(n){var r={options:{directed:n.isDirected(),multigraph:n.isMultigraph(),compound:n.isCompound()},nodes:e(n),edges:t(n)};void 0!==n.graph()&&(r.value=structuredClone(n.graph()));return r},read:function(e){var t=new n(e.options).setGraph(e.value);return e.nodes.forEach(function(n){t.setNode(n.v,n.value),n.parent&&t.setParent(n.v,n.parent)}),e.edges.forEach(function(n){t.setEdge({v:n.v,w:n.w,name:n.name},n.value)}),t}}}function Lf(){if(rm)return tm;return rm=1,tm=function(n){var e,t={},r=[];function o(r){Object.hasOwn(t,r)||(t[r]=!0,e.push(r),n.successors(r).forEach(o),n.predecessors(r).forEach(o))}return n.nodes().forEach(function(n){e=[],o(n),e.length&&r.push(e)}),r},tm}function Bf(){if(am)return om;am=1;return om=class{_arr=[];_keyIndices={};size(){return this._arr.length}keys(){return this._arr.map(function(n){return n.key})}has(n){return Object.hasOwn(this._keyIndices,n)}priority(n){var e=this._keyIndices[n];if(void 0!==e)return this._arr[e].priority}min(){if(0===this.size())throw new Error("Queue underflow");return this._arr[0].key}add(n,e){var t=this._keyIndices;if(n=String(n),!Object.hasOwn(t,n)){var r=this._arr,o=r.length;return t[n]=o,r.push({key:n,priority:e}),this._decrease(o),!0}return!1}removeMin(){this._swap(0,this._arr.length-1);var n=this._arr.pop();return delete this._keyIndices[n.key],this._heapify(0),n.key}decrease(n,e){var t=this._keyIndices[n];if(e>this._arr[t].priority)throw new Error("New priority is greater than current priority. Key: "+n+" Old: "+this._arr[t].priority+" New: "+e);this._arr[t].priority=e,this._decrease(t)}_heapify(n){var e=this._arr,t=2*n,r=t+1,o=n;t<e.length&&(o=e[t].priority<e[o].priority?t:o,r<e.length&&(o=e[r].priority<e[o].priority?r:o),o!==n&&(this._swap(n,o),this._heapify(o)))}_decrease(n){for(var e,t=this._arr,r=t[n].priority;0!==n&&!(t[e=n>>1].priority<r);)this._swap(n,e),n=e}_swap(n,e){var t=this._arr,r=this._keyIndices,o=t[n],a=t[e];t[n]=a,t[e]=o,r[a.key]=n,r[o.key]=e}},om}function Vf(){if(sm)return im;sm=1;var n=Bf();im=function(t,r,o,a){return function(e,t,r,o){var a,i,s={},l=new n,d=function(n){var e=n.v!==a?n.v:n.w,t=s[e],o=r(n),d=i.distance+o;if(o<0)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+n+" Weight: "+o);d<t.distance&&(t.distance=d,t.predecessor=a,l.decrease(e,d))};e.nodes().forEach(function(n){var e=n===t?0:Number.POSITIVE_INFINITY;s[n]={distance:e},l.add(n,e)});for(;l.size()>0&&(a=l.removeMin(),(i=s[a]).distance!==Number.POSITIVE_INFINITY);)o(a).forEach(d);return s}(t,String(r),o||e,a||function(n){return t.outEdges(n)})};var e=()=>1;return im}function $f(){if(dm)return lm;dm=1;var n=Vf();return lm=function(e,t,r){return e.nodes().reduce(function(o,a){return o[a]=n(e,a,t,r),o},{})},lm}function Hf(){if(pm)return cm;return pm=1,cm=function(n){var e=0,t=[],r={},o=[];function a(i){var s=r[i]={onStack:!0,lowlink:e,index:e++};if(t.push(i),n.successors(i).forEach(function(n){Object.hasOwn(r,n)?r[n].onStack&&(s.lowlink=Math.min(s.lowlink,r[n].index)):(a(n),s.lowlink=Math.min(s.lowlink,r[n].lowlink))}),s.lowlink===s.index){var l,d=[];do{l=t.pop(),r[l].onStack=!1,d.push(l)}while(i!==l);o.push(d)}}return n.nodes().forEach(function(n){Object.hasOwn(r,n)||a(n)}),o},cm}function Ff(){if(bm)return um;bm=1;var n=Hf();return um=function(e){return n(e).filter(function(n){return n.length>1||1===n.length&&e.hasEdge(n[0],n[0])})}}function Yf(){if(fm)return mm;fm=1,mm=function(e,t,r){return function(n,e,t){var r={},o=n.nodes();return o.forEach(function(n){r[n]={},r[n][n]={distance:0},o.forEach(function(e){n!==e&&(r[n][e]={distance:Number.POSITIVE_INFINITY})}),t(n).forEach(function(t){var o=t.v===n?t.w:t.v,a=e(t);r[n][o]={distance:a,predecessor:n}})}),o.forEach(function(n){var e=r[n];o.forEach(function(t){var a=r[t];o.forEach(function(t){var r=a[n],o=e[t],i=a[t],s=r.distance+o.distance;s<i.distance&&(i.distance=s,i.predecessor=o.predecessor)})})}),r}(e,t||n,r||function(n){return e.outEdges(n)})};var n=()=>1;return mm}function Gf(){if(hm)return gm;function n(n){var t={},r={},o=[];if(n.sinks().forEach(function a(i){if(Object.hasOwn(r,i))throw new e;Object.hasOwn(t,i)||(r[i]=!0,t[i]=!0,n.predecessors(i).forEach(a),delete r[i],o.push(i))}),Object.keys(t).length!==n.nodeCount())throw new e;return o}hm=1;class e extends Error{constructor(){super(...arguments)}}return gm=n,n.CycleException=e,gm}function Xf(){if(xm)return vm;xm=1;var n=Gf();return vm=function(e){try{n(e)}catch(e){if(e instanceof n.CycleException)return!1;throw e}return!0}}function qf(){if(ym)return wm;function n(n,e,r,o){for(var a=[[n,!1]];a.length>0;){var i=a.pop();i[1]?o.push(i[0]):Object.hasOwn(r,i[0])||(r[i[0]]=!0,a.push([i[0],!0]),t(e(i[0]),n=>a.push([n,!1])))}}function e(n,e,r,o){for(var a=[n];a.length>0;){var i=a.pop();Object.hasOwn(r,i)||(r[i]=!0,o.push(i),t(e(i),n=>a.push(n)))}}function t(n,e){for(var t=n.length;t--;)e(n[t],t,n);return n}return ym=1,wm=function(t,r,o){Array.isArray(r)||(r=[r]);var a=t.isDirected()?n=>t.successors(n):n=>t.neighbors(n),i="post"===o?n:e,s=[],l={};return r.forEach(n=>{if(!t.hasNode(n))throw new Error("Graph does not have node: "+n);i(n,a,l,s)}),s},wm}function Wf(){if(Em)return km;Em=1;var n=qf();return km=function(e,t){return n(e,t,"post")}}function Zf(){if(Sm)return _m;Sm=1;var n=qf();return _m=function(e,t){return n(e,t,"pre")}}function Kf(){if(Cm)return Om;Cm=1;var n=Af(),e=Bf();return Om=function(t,r){var o,a=new n,i={},s=new e;function l(n){var e=n.v===o?n.w:n.v,t=s.priority(e);if(void 0!==t){var a=r(n);a<t&&(i[e]=o,s.decrease(e,a))}}if(0===t.nodeCount())return a;t.nodes().forEach(function(n){s.add(n,Number.POSITIVE_INFINITY),a.setNode(n)}),s.decrease(t.nodes()[0],0);var d=!1;for(;s.size()>0;){if(o=s.removeMin(),Object.hasOwn(i,o))a.setEdge(o,i[o]);else{if(d)throw new Error("Input graph is not connected: "+t);d=!0}t.nodeEdges(o).forEach(l)}return a},Om}function Uf(){if(Mm)return zm;Mm=1;var n=Df();return zm={Graph:n.Graph,json:Tf(),alg:jm?Nm:(jm=1,Nm={components:Lf(),dijkstra:Vf(),dijkstraAll:$f(),findCycles:Ff(),floydWarshall:Yf(),isAcyclic:Xf(),postorder:Wf(),preorder:Zf(),prim:Kf(),tarjan:Hf(),topsort:Gf()}),version:n.version}}function Qf(){if(Am)return Im;Am=1;let n=Uf().Graph,e=function(){if(Rm)return Pm;function n(n){n._prev._next=n._next,n._next._prev=n._prev,delete n._next,delete n._prev}function e(n,e){if("_next"!==n&&"_prev"!==n)return e}return Rm=1,Pm=class{constructor(){let n={};n._next=n._prev=n,this._sentinel=n}dequeue(){let e=this._sentinel,t=e._prev;if(t!==e)return n(t),t}enqueue(e){let t=this._sentinel;e._prev&&e._next&&n(e),e._next=t._next,t._next._prev=e,t._next=e,e._prev=t}toString(){let n=[],t=this._sentinel,r=t._prev;for(;r!==t;)n.push(JSON.stringify(r,e)),r=r._prev;return"["+n.join(", ")+"]"}}}();Im=function(a,i){if(a.nodeCount()<=1)return[];let s=function(t,r){let a=new n,i=0,s=0;t.nodes().forEach(n=>{a.setNode(n,{v:n,in:0,out:0})}),t.edges().forEach(n=>{let e=a.edge(n.v,n.w)||0,t=r(n),o=e+t;a.setEdge(n.v,n.w,o),s=Math.max(s,a.node(n.v).out+=t),i=Math.max(i,a.node(n.w).in+=t)});let l=function(n){const e=[];for(let t=0;t<n;t++)e.push(t);return e}(s+i+3).map(()=>new e),d=i+1;return a.nodes().forEach(n=>{o(l,d,a.node(n))}),{graph:a,buckets:l,zeroIdx:d}}(a,i||t);return function(n,e,t){let o,a=[],i=e[e.length-1],s=e[0];for(;n.nodeCount();){for(;o=s.dequeue();)r(n,e,t,o);for(;o=i.dequeue();)r(n,e,t,o);if(n.nodeCount())for(let i=e.length-2;i>0;--i)if(o=e[i].dequeue(),o){a=a.concat(r(n,e,t,o,!0));break}}return a}(s.graph,s.buckets,s.zeroIdx).flatMap(n=>a.outEdges(n.v,n.w))};let t=()=>1;function r(n,e,t,r,a){let i=a?[]:void 0;return n.inEdges(r.v).forEach(r=>{let s=n.edge(r),l=n.node(r.v);a&&i.push({v:r.v,w:r.w}),l.out-=s,o(e,t,l)}),n.outEdges(r.v).forEach(r=>{let a=n.edge(r),i=r.w,s=n.node(i);s.in-=a,o(e,t,s)}),n.removeNode(r.v),i}function o(n,e,t){t.out?t.in?n[t.out-t.in+e].enqueue(t):n[n.length-1].enqueue(t):n[0].enqueue(t)}return Im}function Jf(){if(Tm)return Dm;Tm=1;let n=Uf().Graph;function e(n,e,t,r){for(var o=r;n.hasNode(o);)o=i(r);return t.dummy=e,n.setNode(o,t),o}Dm={addBorderNode:function(n,t,r,o){let a={width:0,height:0};arguments.length>=4&&(a.rank=r,a.order=o);return e(n,"border",a,t)},addDummyNode:e,applyWithChunking:r,asNonCompoundGraph:function(e){let t=new n({multigraph:e.isMultigraph()}).setGraph(e.graph());return e.nodes().forEach(n=>{e.children(n).length||t.setNode(n,e.node(n))}),e.edges().forEach(n=>{t.setEdge(n,e.edge(n))}),t},buildLayerMatrix:function(n){let e=s(o(n)+1).map(()=>[]);return n.nodes().forEach(t=>{let r=n.node(t),o=r.rank;void 0!==o&&(e[o][r.order]=t)}),e},intersectRect:function(n,e){let t,r,o=n.x,a=n.y,i=e.x-o,s=e.y-a,l=n.width/2,d=n.height/2;if(!i&&!s)throw new Error("Not possible to find intersection inside of the rectangle");Math.abs(s)*l>Math.abs(i)*d?(s<0&&(d=-d),t=d*i/s,r=d):(i<0&&(l=-l),t=l,r=l*s/i);return{x:o+t,y:a+r}},mapValues:function(n,e){let t=e;"string"==typeof e&&(t=n=>n[e]);return Object.entries(n).reduce((n,[e,r])=>(n[e]=t(r,e),n),{})},maxRank:o,normalizeRanks:function(n){let e=n.nodes().map(e=>{let t=n.node(e).rank;return void 0===t?Number.MAX_VALUE:t}),t=r(Math.min,e);n.nodes().forEach(e=>{let r=n.node(e);Object.hasOwn(r,"rank")&&(r.rank-=t)})},notime:function(n,e){return e()},partition:function(n,e){let t={lhs:[],rhs:[]};return n.forEach(n=>{e(n)?t.lhs.push(n):t.rhs.push(n)}),t},pick:function(n,e){const t={};for(const r of e)void 0!==n[r]&&(t[r]=n[r]);return t},predecessorWeights:function(n){let e=n.nodes().map(e=>{let t={};return n.inEdges(e).forEach(e=>{t[e.v]=(t[e.v]||0)+n.edge(e).weight}),t});return l(n.nodes(),e)},range:s,removeEmptyRanks:function(n){let e=n.nodes().map(e=>n.node(e).rank),t=r(Math.min,e),o=[];n.nodes().forEach(e=>{let r=n.node(e).rank-t;o[r]||(o[r]=[]),o[r].push(e)});let a=0,i=n.graph().nodeRankFactor;Array.from(o).forEach((e,t)=>{void 0===e&&t%i!==0?--a:void 0!==e&&a&&e.forEach(e=>n.node(e).rank+=a)})},simplify:function(e){let t=(new n).setGraph(e.graph());return e.nodes().forEach(n=>t.setNode(n,e.node(n))),e.edges().forEach(n=>{let r=t.edge(n.v,n.w)||{weight:0,minlen:1},o=e.edge(n);t.setEdge(n.v,n.w,{weight:r.weight+o.weight,minlen:Math.max(r.minlen,o.minlen)})}),t},successorWeights:function(n){let e=n.nodes().map(e=>{let t={};return n.outEdges(e).forEach(e=>{t[e.w]=(t[e.w]||0)+n.edge(e).weight}),t});return l(n.nodes(),e)},time:function(n,e){let t=Date.now();try{return e()}finally{console.log(n+" time: "+(Date.now()-t)+"ms")}},uniqueId:i,zipObject:l};const t=65535;function r(n,e){if(e.length>t){const r=function(n,e=t){const r=[];for(let t=0;t<n.length;t+=e){const o=n.slice(t,t+e);r.push(o)}return r}(e);return n.apply(null,r.map(e=>n.apply(null,e)))}return n.apply(null,e)}function o(n){const e=n.nodes().map(e=>{let t=n.node(e).rank;return void 0===t?Number.MIN_VALUE:t});return r(Math.max,e)}let a=0;function i(n){return n+""+ ++a}function s(n,e,t=1){null==e&&(e=n,n=0);let r=n=>n<e;t<0&&(r=n=>e<n);const o=[];for(let e=n;r(e);e+=t)o.push(e);return o}function l(n,e){return n.reduce((n,t,r)=>(n[t]=e[r],n),{})}return Dm}function ng(){if(Bm)return Lm;Bm=1;let n=Qf(),e=Jf().uniqueId;return Lm={run:function(t){("greedy"===t.graph().acyclicer?n(t,function(n){return e=>n.edge(e).weight}(t)):function(n){let e=[],t={},r={};function o(a){Object.hasOwn(r,a)||(r[a]=!0,t[a]=!0,n.outEdges(a).forEach(n=>{Object.hasOwn(t,n.w)?e.push(n):o(n.w)}),delete t[a])}return n.nodes().forEach(o),e}(t)).forEach(n=>{let r=t.edge(n);t.removeEdge(n),r.forwardName=n.name,r.reversed=!0,t.setEdge(n.w,n.v,r,e("rev"))})},undo:function(n){n.edges().forEach(e=>{let t=n.edge(e);if(t.reversed){n.removeEdge(e);let r=t.forwardName;delete t.reversed,delete t.forwardName,n.setEdge(e.w,e.v,t,r)}})}},Lm}function eg(){if($m)return Vm;$m=1;let n=Jf();return Vm={run:function(e){e.graph().dummyChains=[],e.edges().forEach(t=>function(e,t){let r,o,a,i=t.v,s=e.node(i).rank,l=t.w,d=e.node(l).rank,c=t.name,p=e.edge(t),u=p.labelRank;if(d===s+1)return;for(e.removeEdge(t),a=0,++s;s<d;++a,++s)p.points=[],o={width:0,height:0,edgeLabel:p,edgeObj:t,rank:s},r=n.addDummyNode(e,"edge",o,"_d"),s===u&&(o.width=p.width,o.height=p.height,o.dummy="edge-label",o.labelpos=p.labelpos),e.setEdge(i,r,{weight:p.weight},c),0===a&&e.graph().dummyChains.push(r),i=r;e.setEdge(i,l,{weight:p.weight},c)}(e,t))},undo:function(n){n.graph().dummyChains.forEach(e=>{let t,r=n.node(e),o=r.edgeLabel;for(n.setEdge(r.edgeObj,o);r.dummy;)t=n.successors(e)[0],n.removeNode(e),o.points.push({x:r.x,y:r.y}),"edge-label"===r.dummy&&(o.x=r.x,o.y=r.y,o.width=r.width,o.height=r.height),e=t,r=n.node(e)})}},Vm}function tg(){if(Fm)return Hm;Fm=1;const{applyWithChunking:n}=Jf();return Hm={longestPath:function(e){var t={};e.sources().forEach(function r(o){var a=e.node(o);if(Object.hasOwn(t,o))return a.rank;t[o]=!0;let i=e.outEdges(o).map(n=>null==n?Number.POSITIVE_INFINITY:r(n.w)-e.edge(n).minlen);var s=n(Math.min,i);return s===Number.POSITIVE_INFINITY&&(s=0),a.rank=s})},slack:function(n,e){return n.node(e.w).rank-n.node(e.v).rank-n.edge(e).minlen}},Hm}function rg(){if(Gm)return Ym;Gm=1;var n=Uf().Graph,e=tg().slack;function t(n,t){return n.nodes().forEach(function r(o){t.nodeEdges(o).forEach(a=>{var i=a.v,s=o===i?a.w:i;n.hasNode(s)||e(t,a)||(n.setNode(s,{}),n.setEdge(o,s,{}),r(s))})}),n.nodeCount()}function r(n,t){return t.edges().reduce((r,o)=>{let a=Number.POSITIVE_INFINITY;return n.hasNode(o.v)!==n.hasNode(o.w)&&(a=e(t,o)),a<r[0]?[a,o]:r},[Number.POSITIVE_INFINITY,null])[1]}function o(n,e,t){n.nodes().forEach(n=>e.node(n).rank+=t)}return Ym=function(a){var i,s,l=new n({directed:!1}),d=a.nodes()[0],c=a.nodeCount();l.setNode(d,{});for(;t(l,a)<c;)i=r(l,a),s=l.hasNode(i.v)?e(a,i):-e(a,i),o(l,a,s);return l},Ym}function og(){if(qm)return Xm;qm=1;var n=rg(),e=tg().slack,t=tg().longestPath,r=Uf().alg.preorder,o=Uf().alg.postorder,a=Jf().simplify;function i(e){e=a(e),t(e);var r,o=n(e);for(d(o),s(o,e);r=p(o);)b(o,e,r,u(o,e,r))}function s(n,e){var t=o(n,n.nodes());(t=t.slice(0,t.length-1)).forEach(t=>function(n,e,t){var r=n.node(t),o=r.parent;n.edge(t,o).cutvalue=l(n,e,t)}(n,e,t))}function l(n,e,t){var r=n.node(t).parent,o=!0,a=e.edge(t,r),i=0;return a||(o=!1,a=e.edge(r,t)),i=a.weight,e.nodeEdges(t).forEach(a=>{var s=a.v===t,l=s?a.w:a.v;if(l!==r){var d=s===o,c=e.edge(a).weight;if(i+=d?c:-c,function(n,e,t){return n.hasEdge(e,t)}(n,t,l)){var p=n.edge(t,l).cutvalue;i+=d?-p:p}}}),i}function d(n,e){arguments.length<2&&(e=n.nodes()[0]),c(n,{},1,e)}function c(n,e,t,r,o){var a=t,i=n.node(r);return e[r]=!0,n.neighbors(r).forEach(o=>{Object.hasOwn(e,o)||(t=c(n,e,t,o,r))}),i.low=a,i.lim=t++,o?i.parent=o:delete i.parent,t}function p(n){return n.edges().find(e=>n.edge(e).cutvalue<0)}function u(n,t,r){var o=r.v,a=r.w;t.hasEdge(o,a)||(o=r.w,a=r.v);var i=n.node(o),s=n.node(a),l=i,d=!1;i.lim>s.lim&&(l=s,d=!0);var c=t.edges().filter(e=>d===m(n,n.node(e.v),l)&&d!==m(n,n.node(e.w),l));return c.reduce((n,r)=>e(t,r)<e(t,n)?r:n)}function b(n,e,t,o){var a=t.v,i=t.w;n.removeEdge(a,i),n.setEdge(o.v,o.w,{}),d(n),s(n,e),function(n,e){var t=n.nodes().find(n=>!e.node(n).parent),o=r(n,t);(o=o.slice(1)).forEach(t=>{var r=n.node(t).parent,o=e.edge(t,r),a=!1;o||(o=e.edge(r,t),a=!0),e.node(t).rank=e.node(r).rank+(a?o.minlen:-o.minlen)})}(n,e)}function m(n,e,t){return t.low<=e.lim&&e.lim<=t.lim}return Xm=i,i.initLowLimValues=d,i.initCutValues=s,i.calcCutValue=l,i.leaveEdge=p,i.enterEdge=u,i.exchangeEdges=b,Xm}function ag(){if(Zm)return Wm;Zm=1;var n=tg().longestPath,e=rg(),t=og();Wm=function(t){var a=t.graph().ranker;if(a instanceof Function)return a(t);switch(t.graph().ranker){case"network-simplex":default:o(t);break;case"tight-tree":!function(t){n(t),e(t)}(t);break;case"longest-path":r(t);case"none":}};var r=n;function o(n){t(n)}return Wm}function ig(){if(Um)return Km;return Um=1,Km=function(n){let e=function(n){let e={},t=0;function r(o){let a=t;n.children(o).forEach(r),e[o]={low:a,lim:t++}}return n.children().forEach(r),e}(n);n.graph().dummyChains.forEach(t=>{let r=n.node(t),o=r.edgeObj,a=function(n,e,t,r){let o,a,i=[],s=[],l=Math.min(e[t].low,e[r].low),d=Math.max(e[t].lim,e[r].lim);o=t;do{o=n.parent(o),i.push(o)}while(o&&(e[o].low>l||d>e[o].lim));a=o,o=r;for(;(o=n.parent(o))!==a;)s.push(o);return{path:i.concat(s.reverse()),lca:a}}(n,e,o.v,o.w),i=a.path,s=a.lca,l=0,d=i[l],c=!0;for(;t!==o.w;){if(r=n.node(t),c){for(;(d=i[l])!==s&&n.node(d).maxRank<r.rank;)l++;d===s&&(c=!1)}if(!c){for(;l<i.length-1&&n.node(d=i[l+1]).minRank<=r.rank;)l++;d=i[l]}n.setParent(t,d),t=n.successors(t)[0]}})},Km}function sg(){if(Jm)return Qm;Jm=1;let n=Jf();function e(t,r,o,a,i,s,l){let d=t.children(l);if(!d.length)return void(l!==r&&t.setEdge(r,l,{weight:0,minlen:o}));let c=n.addBorderNode(t,"_bt"),p=n.addBorderNode(t,"_bb"),u=t.node(l);t.setParent(c,l),u.borderTop=c,t.setParent(p,l),u.borderBottom=p,d.forEach(n=>{e(t,r,o,a,i,s,n);let d=t.node(n),u=d.borderTop?d.borderTop:n,b=d.borderBottom?d.borderBottom:n,m=d.borderTop?a:2*a,f=u!==b?1:i-s[l]+1;t.setEdge(c,u,{weight:m,minlen:f,nestingEdge:!0}),t.setEdge(b,p,{weight:m,minlen:f,nestingEdge:!0})}),t.parent(l)||t.setEdge(r,c,{weight:0,minlen:i+s[l]})}return Qm={run:function(t){let r=n.addDummyNode(t,"root",{},"_root"),o=function(n){var e={};function t(r,o){var a=n.children(r);a&&a.length&&a.forEach(n=>t(n,o+1)),e[r]=o}return n.children().forEach(n=>t(n,1)),e}(t),a=Object.values(o),i=n.applyWithChunking(Math.max,a)-1,s=2*i+1;t.graph().nestingRoot=r,t.edges().forEach(n=>t.edge(n).minlen*=s);let l=function(n){return n.edges().reduce((e,t)=>e+n.edge(t).weight,0)}(t)+1;t.children().forEach(n=>e(t,r,s,l,i,o,n)),t.graph().nodeRankFactor=s},cleanup:function(n){var e=n.graph();n.removeNode(e.nestingRoot),delete e.nestingRoot,n.edges().forEach(e=>{n.edge(e).nestingEdge&&n.removeEdge(e)})}},Qm}function lg(){if(rf)return tf;function n(n){n.nodes().forEach(t=>e(n.node(t))),n.edges().forEach(t=>e(n.edge(t)))}function e(n){let e=n.width;n.width=n.height,n.height=e}function t(n){n.y=-n.y}function r(n){let e=n.x;n.x=n.y,n.y=e}return rf=1,tf={adjust:function(e){let t=e.graph().rankdir.toLowerCase();"lr"!==t&&"rl"!==t||n(e)},undo:function(e){let o=e.graph().rankdir.toLowerCase();"bt"!==o&&"rl"!==o||function(n){n.nodes().forEach(e=>t(n.node(e))),n.edges().forEach(e=>{let r=n.edge(e);r.points.forEach(t),Object.hasOwn(r,"y")&&t(r)})}(e);"lr"!==o&&"rl"!==o||(!function(n){n.nodes().forEach(e=>r(n.node(e))),n.edges().forEach(e=>{let t=n.edge(e);t.points.forEach(r),Object.hasOwn(t,"x")&&r(t)})}(e),n(e))}},tf}function dg(){if(uf)return pf;uf=1;let n=Jf();return pf=function(e,t){let r={};return e.forEach((n,e)=>{let t=r[n.v]={indegree:0,in:[],out:[],vs:[n.v],i:e};void 0!==n.barycenter&&(t.barycenter=n.barycenter,t.weight=n.weight)}),t.edges().forEach(n=>{let e=r[n.v],t=r[n.w];void 0!==e&&void 0!==t&&(t.indegree++,e.out.push(r[n.w]))}),function(e){let t=[];function r(n){return e=>{e.merged||(void 0===e.barycenter||void 0===n.barycenter||e.barycenter>=n.barycenter)&&function(n,e){let t=0,r=0;n.weight&&(t+=n.barycenter*n.weight,r+=n.weight);e.weight&&(t+=e.barycenter*e.weight,r+=e.weight);n.vs=e.vs.concat(n.vs),n.barycenter=t/r,n.weight=r,n.i=Math.min(e.i,n.i),e.merged=!0}(n,e)}}function o(n){return t=>{t.in.push(n),0===--t.indegree&&e.push(t)}}for(;e.length;){let n=e.pop();t.push(n),n.in.reverse().forEach(r(n)),n.out.forEach(o(n))}return t.filter(n=>!n.merged).map(e=>n.pick(e,["vs","i","barycenter","weight"]))}(Object.values(r).filter(n=>!n.indegree))},pf}function cg(){if(gf)return ff;gf=1;let n=(cf||(cf=1,df=function(n,e=[]){return e.map(e=>{let t=n.inEdges(e);if(t.length){let r=t.reduce((e,t)=>{let r=n.edge(t),o=n.node(t.v);return{sum:e.sum+r.weight*o.order,weight:e.weight+r.weight}},{sum:0,weight:0});return{v:e,barycenter:r.sum/r.weight,weight:r.weight}}return{v:e}})}),df),e=dg(),t=function(){if(mf)return bf;mf=1;let n=Jf();function e(n,e,t){let r;for(;e.length&&(r=e[e.length-1]).i<=t;)e.pop(),n.push(r.vs),t++;return t}return bf=function(t,r){let o=n.partition(t,n=>Object.hasOwn(n,"barycenter")),a=o.lhs,i=o.rhs.sort((n,e)=>e.i-n.i),s=[],l=0,d=0,c=0;var p;a.sort((p=!!r,(n,e)=>n.barycenter<e.barycenter?-1:n.barycenter>e.barycenter?1:p?e.i-n.i:n.i-e.i)),c=e(s,i,c),a.forEach(n=>{c+=n.vs.length,s.push(n.vs),l+=n.barycenter*n.weight,d+=n.weight,c=e(s,i,c)});let u={vs:s.flat(!0)};return d&&(u.barycenter=l/d,u.weight=d),u}}();return ff=function r(o,a,i,s){let l=o.children(a),d=o.node(a),c=d?d.borderLeft:void 0,p=d?d.borderRight:void 0,u={};c&&(l=l.filter(n=>n!==c&&n!==p));let b=n(o,l);b.forEach(n=>{if(o.children(n.v).length){let a=r(o,n.v,i,s);u[n.v]=a,Object.hasOwn(a,"barycenter")&&(t=a,void 0!==(e=n).barycenter?(e.barycenter=(e.barycenter*e.weight+t.barycenter*t.weight)/(e.weight+t.weight),e.weight+=t.weight):(e.barycenter=t.barycenter,e.weight=t.weight))}var e,t});let m=e(b,i);!function(n,e){n.forEach(n=>{n.vs=n.vs.flatMap(n=>e[n]?e[n].vs:n)})}(m,u);let f=t(m,s);if(c&&(f.vs=[c,f.vs,p].flat(!0),o.predecessors(c).length)){let n=o.node(o.predecessors(c)[0]),e=o.node(o.predecessors(p)[0]);Object.hasOwn(f,"barycenter")||(f.barycenter=0,f.weight=0),f.barycenter=(f.barycenter*f.weight+n.order+e.order)/(f.weight+2),f.weight+=2}return f},ff}function pg(){if(vf)return hf;vf=1;let n=Uf().Graph,e=Jf();return hf=function(t,r,o){let a=function(n){var t;for(;n.hasNode(t=e.uniqueId("_root")););return t}(t),i=new n({compound:!0}).setGraph({root:a}).setDefaultNodeLabel(n=>t.node(n));return t.nodes().forEach(n=>{let e=t.node(n),s=t.parent(n);(e.rank===r||e.minRank<=r&&r<=e.maxRank)&&(i.setNode(n),i.setParent(n,s||a),t[o](n).forEach(e=>{let r=e.v===n?e.w:e.v,o=i.edge(r,n),a=void 0!==o?o.weight:0;i.setEdge(r,n,{weight:t.edge(e).weight+a})}),Object.hasOwn(e,"minRank")&&i.setNode(n,{borderLeft:e.borderLeft[r],borderRight:e.borderRight[r]}))}),i},hf}function ug(){if(kf)return yf;kf=1;let n=function(){if(af)return of;af=1;let n=Jf();return of=function(e){let t={},r=e.nodes().filter(n=>!e.children(n).length),o=r.map(n=>e.node(n).rank),a=n.applyWithChunking(Math.max,o),i=n.range(a+1).map(()=>[]);return r.sort((n,t)=>e.node(n).rank-e.node(t).rank).forEach(function n(r){if(t[r])return;t[r]=!0;let o=e.node(r);i[o.rank].push(r),e.successors(r).forEach(n)}),i},of}(),e=function(){if(lf)return sf;lf=1;let n=Jf().zipObject;function e(e,t,r){let o=n(r,r.map((n,e)=>e)),a=t.flatMap(n=>e.outEdges(n).map(n=>({pos:o[n.w],weight:e.edge(n).weight})).sort((n,e)=>n.pos-e.pos)),i=1;for(;i<r.length;)i<<=1;let s=2*i-1;i-=1;let l=new Array(s).fill(0),d=0;return a.forEach(n=>{let e=n.pos+i;l[e]+=n.weight;let t=0;for(;e>0;)e%2&&(t+=l[e+1]),e=e-1>>1,l[e]+=n.weight;d+=n.weight*t}),d}return sf=function(n,t){let r=0;for(let o=1;o<t.length;++o)r+=e(n,t[o-1],t[o]);return r},sf}(),t=cg(),r=pg(),o=(wf||(wf=1,xf=function(n,e,t){let r,o={};t.forEach(t=>{let a,i,s=n.parent(t);for(;s;){if(a=n.parent(s),a?(i=o[a],o[a]=s):(i=r,r=s),i&&i!==s)return void e.setEdge(i,s);s=a}})}),xf),a=Uf().Graph,i=Jf();function s(n,e,t){return e.map(function(e){return r(n,e,t)})}function l(n,e){let r=new a;n.forEach(function(n){let a=n.graph().root,i=t(n,a,r,e);i.vs.forEach((e,t)=>n.node(e).order=t),o(n,r,i.vs)})}function d(n,e){Object.values(e).forEach(e=>e.forEach((e,t)=>n.node(e).order=t))}return yf=function t(r,o){if(o&&"function"==typeof o.customOrder)return void o.customOrder(r,t);let a=i.maxRank(r),c=s(r,i.range(1,a+1),"inEdges"),p=s(r,i.range(a-1,-1,-1),"outEdges"),u=n(r);if(d(r,u),o&&o.disableOptimalOrderHeuristic)return;let b,m=Number.POSITIVE_INFINITY;for(let n=0,t=0;t<4;++n,++t){l(n%2?c:p,n%4>=2),u=i.buildLayerMatrix(r);let o=e(r,u);o<m&&(t=0,b=Object.assign({},u),m=o)}d(r,b)},yf}function bg(){if(_f)return Ef;_f=1;let n=Uf().Graph,e=Jf();function t(n,e){let t={};return e.length&&e.reduce(function(e,r){let a=0,i=0,s=e.length,l=r[r.length-1];return r.forEach((e,d)=>{let c=function(n,e){if(n.node(e).dummy)return n.predecessors(e).find(e=>n.node(e).dummy)}(n,e),p=c?n.node(c).order:s;(c||e===l)&&(r.slice(i,d+1).forEach(e=>{n.predecessors(e).forEach(r=>{let i=n.node(r),s=i.order;!(s<a||p<s)||i.dummy&&n.node(e).dummy||o(t,r,e)})}),i=d+1,a=p)}),r}),t}function r(n,t){let r={};function a(t,a,i,s,l){let d;e.range(a,i).forEach(e=>{d=t[e],n.node(d).dummy&&n.predecessors(d).forEach(e=>{let t=n.node(e);t.dummy&&(t.order<s||t.order>l)&&o(r,e,d)})})}return t.length&&t.reduce(function(e,t){let r,o=-1,i=0;return t.forEach((s,l)=>{if("border"===n.node(s).dummy){let e=n.predecessors(s);e.length&&(r=n.node(e[0]).order,a(t,i,l,o,r),i=l,o=r)}a(t,i,t.length,r,e.length)}),t}),r}function o(n,e,t){if(e>t){let n=e;e=t,t=n}let r=n[e];r||(n[e]=r={}),r[t]=!0}function a(n,e,t){if(e>t){let n=e;e=t,t=n}return!!n[e]&&Object.hasOwn(n[e],t)}function i(n,e,t,r){let o={},i={},s={};return e.forEach(n=>{n.forEach((n,e)=>{o[n]=n,i[n]=n,s[n]=e})}),e.forEach(n=>{let e=-1;n.forEach(n=>{let l=r(n);if(l.length){l=l.sort((n,e)=>s[n]-s[e]);let r=(l.length-1)/2;for(let d=Math.floor(r),c=Math.ceil(r);d<=c;++d){let r=l[d];i[n]===n&&e<s[r]&&!a(t,n,r)&&(i[r]=n,i[n]=o[n]=o[r],e=s[r])}}})}),{root:o,align:i}}function s(e,t,r,o,a){let i={},s=function(e,t,r,o){let a=new n,i=e.graph(),s=function(n,e,t){return(r,o,a)=>{let i,s=r.node(o),l=r.node(a),d=0;if(d+=s.width/2,Object.hasOwn(s,"labelpos"))switch(s.labelpos.toLowerCase()){case"l":i=-s.width/2;break;case"r":i=s.width/2}if(i&&(d+=t?i:-i),i=0,d+=(s.dummy?e:n)/2,d+=(l.dummy?e:n)/2,d+=l.width/2,Object.hasOwn(l,"labelpos"))switch(l.labelpos.toLowerCase()){case"l":i=l.width/2;break;case"r":i=-l.width/2}return i&&(d+=t?i:-i),i=0,d}}(i.nodesep,i.edgesep,o);return t.forEach(n=>{let t;n.forEach(n=>{let o=r[n];if(a.setNode(o),t){var i=r[t],l=a.edge(i,o);a.setEdge(i,o,Math.max(s(e,n,t),l||0))}t=n})}),a}(e,t,r,a),l=a?"borderLeft":"borderRight";function d(n,e){let t=s.nodes(),r=t.pop(),o={};for(;r;)o[r]?n(r):(o[r]=!0,t.push(r),t=t.concat(e(r))),r=t.pop()}return d(function(n){i[n]=s.inEdges(n).reduce((n,e)=>Math.max(n,i[e.v]+s.edge(e)),0)},s.predecessors.bind(s)),d(function(n){let t=s.outEdges(n).reduce((n,e)=>Math.min(n,i[e.w]-s.edge(e)),Number.POSITIVE_INFINITY),r=e.node(n);t!==Number.POSITIVE_INFINITY&&r.borderType!==l&&(i[n]=Math.max(i[n],t))},s.successors.bind(s)),Object.keys(o).forEach(n=>i[n]=i[r[n]]),i}function l(n,e){return Object.values(e).reduce((e,t)=>{let r=Number.NEGATIVE_INFINITY,o=Number.POSITIVE_INFINITY;Object.entries(t).forEach(([e,t])=>{let a=function(n,e){return n.node(e).width}(n,e)/2;r=Math.max(t+a,r),o=Math.min(t-a,o)});const a=r-o;return a<e[0]&&(e=[a,t]),e},[Number.POSITIVE_INFINITY,null])[1]}function d(n,t){let r=Object.values(t),o=e.applyWithChunking(Math.min,r),a=e.applyWithChunking(Math.max,r);["u","d"].forEach(r=>{["l","r"].forEach(i=>{let s=r+i,l=n[s];if(l===t)return;let d=Object.values(l),c=o-e.applyWithChunking(Math.min,d);"l"!==i&&(c=a-e.applyWithChunking(Math.max,d)),c&&(n[s]=e.mapValues(l,n=>n+c))})})}function c(n,t){return e.mapValues(n.ul,(e,r)=>{if(t)return n[t.toLowerCase()][r];{let e=Object.values(n).map(n=>n[r]).sort((n,e)=>n-e);return(e[1]+e[2])/2}})}return Ef={positionX:function(n){let o,a=e.buildLayerMatrix(n),p=Object.assign(t(n,a),r(n,a)),u={};["u","d"].forEach(t=>{o="u"===t?a:Object.values(a).reverse(),["l","r"].forEach(r=>{"r"===r&&(o=o.map(n=>Object.values(n).reverse()));let a=("u"===t?n.predecessors:n.successors).bind(n),l=i(n,o,p,a),d=s(n,o,l.root,l.align,"r"===r);"r"===r&&(d=e.mapValues(d,n=>-n)),u[t+r]=d})});let b=l(n,u);return d(u,b),c(u,n.graph().align)},findType1Conflicts:t,findType2Conflicts:r,addConflict:o,hasConflict:a,verticalAlignment:i,horizontalCompaction:s,alignCoordinates:d,findSmallestWidthAlignment:l,balance:c}}function mg(){if(Of)return Sf;Of=1;let n=Jf(),e=bg().positionX;return Sf=function(t){(function(e){let t=n.buildLayerMatrix(e),r=e.graph().ranksep,o=0;t.forEach(n=>{const t=n.reduce((n,t)=>{const r=e.node(t).height;return n>r?n:r},0);n.forEach(n=>e.node(n).y=o+t/2),o+=t+r})})(t=n.asNonCompoundGraph(t)),Object.entries(e(t)).forEach(([n,e])=>t.node(n).x=e)},Sf}function fg(){if(Nf)return Cf;Nf=1;let n=ng(),e=eg(),t=ag(),r=Jf().normalizeRanks,o=ig(),a=Jf().removeEmptyRanks,i=sg(),s=function(){if(ef)return nf;ef=1;let n=Jf();function e(e,t,r,o,a,i){let s={width:0,height:0,rank:i,borderType:t},l=a[t][i-1],d=n.addDummyNode(e,"border",s,r);a[t][i]=d,e.setParent(d,o),l&&e.setEdge(l,d,{weight:1})}return nf=function(n){n.children().forEach(function t(r){let o=n.children(r),a=n.node(r);if(o.length&&o.forEach(t),Object.hasOwn(a,"minRank")){a.borderLeft=[],a.borderRight=[];for(let t=a.minRank,o=a.maxRank+1;t<o;++t)e(n,"borderLeft","_bl",r,a,t),e(n,"borderRight","_br",r,a,t)}})},nf}(),l=lg(),d=ug(),c=mg(),p=Jf(),u=Uf().Graph;Cf=function(E,_){let S=_&&_.debugTiming?p.time:p.notime;S("layout",()=>{let O=S(" buildLayoutGraph",()=>function(n){let e=new u({multigraph:!0,compound:!0}),t=k(n.graph());return e.setGraph(Object.assign({},m,y(t,b),p.pick(t,f))),n.nodes().forEach(t=>{const r=y(k(n.node(t)),g);Object.keys(h).forEach(n=>{void 0===r[n]&&(r[n]=h[n])}),e.setNode(t,r),e.setParent(t,n.parent(t))}),n.edges().forEach(t=>{let r=k(n.edge(t));e.setEdge(t,Object.assign({},x,y(r,v),p.pick(r,w)))}),e}(E));S(" runLayout",()=>function(u,b,m){b(" makeSpaceForEdgeLabels",()=>function(n){let e=n.graph();e.ranksep/=2,n.edges().forEach(t=>{let r=n.edge(t);r.minlen*=2,"c"!==r.labelpos.toLowerCase()&&("TB"===e.rankdir||"BT"===e.rankdir?r.width+=r.labeloffset:r.height+=r.labeloffset)})}(u)),b(" removeSelfEdges",()=>function(n){n.edges().forEach(e=>{if(e.v===e.w){var t=n.node(e.v);t.selfEdges||(t.selfEdges=[]),t.selfEdges.push({e:e,label:n.edge(e)}),n.removeEdge(e)}})}(u)),b(" acyclic",()=>n.run(u)),b(" nestingGraph.run",()=>i.run(u)),b(" rank",()=>t(p.asNonCompoundGraph(u))),b(" injectEdgeLabelProxies",()=>function(n){n.edges().forEach(e=>{let t=n.edge(e);if(t.width&&t.height){let t=n.node(e.v),r={rank:(n.node(e.w).rank-t.rank)/2+t.rank,e:e};p.addDummyNode(n,"edge-proxy",r,"_ep")}})}(u)),b(" removeEmptyRanks",()=>a(u)),b(" nestingGraph.cleanup",()=>i.cleanup(u)),b(" normalizeRanks",()=>r(u)),b(" assignRankMinMax",()=>function(n){let e=0;n.nodes().forEach(t=>{let r=n.node(t);r.borderTop&&(r.minRank=n.node(r.borderTop).rank,r.maxRank=n.node(r.borderBottom).rank,e=Math.max(e,r.maxRank))}),n.graph().maxRank=e}(u)),b(" removeEdgeLabelProxies",()=>function(n){n.nodes().forEach(e=>{let t=n.node(e);"edge-proxy"===t.dummy&&(n.edge(t.e).labelRank=t.rank,n.removeNode(e))})}(u)),b(" normalize.run",()=>e.run(u)),b(" parentDummyChains",()=>o(u)),b(" addBorderSegments",()=>s(u)),b(" order",()=>d(u,m)),b(" insertSelfEdges",()=>function(n){var e=p.buildLayerMatrix(n);e.forEach(e=>{var t=0;e.forEach((e,r)=>{var o=n.node(e);o.order=r+t,(o.selfEdges||[]).forEach(e=>{p.addDummyNode(n,"selfedge",{width:e.label.width,height:e.label.height,rank:o.rank,order:r+ ++t,e:e.e,label:e.label},"_se")}),delete o.selfEdges})})}(u)),b(" adjustCoordinateSystem",()=>l.adjust(u)),b(" position",()=>c(u)),b(" positionSelfEdges",()=>function(n){n.nodes().forEach(e=>{var t=n.node(e);if("selfedge"===t.dummy){var r=n.node(t.e.v),o=r.x+r.width/2,a=r.y,i=t.x-o,s=r.height/2;n.setEdge(t.e,t.label),n.removeNode(e),t.label.points=[{x:o+2*i/3,y:a-s},{x:o+5*i/6,y:a-s},{x:o+i,y:a},{x:o+5*i/6,y:a+s},{x:o+2*i/3,y:a+s}],t.label.x=t.x,t.label.y=t.y}})}(u)),b(" removeBorderNodes",()=>function(n){n.nodes().forEach(e=>{if(n.children(e).length){let t=n.node(e),r=n.node(t.borderTop),o=n.node(t.borderBottom),a=n.node(t.borderLeft[t.borderLeft.length-1]),i=n.node(t.borderRight[t.borderRight.length-1]);t.width=Math.abs(i.x-a.x),t.height=Math.abs(o.y-r.y),t.x=a.x+t.width/2,t.y=r.y+t.height/2}}),n.nodes().forEach(e=>{"border"===n.node(e).dummy&&n.removeNode(e)})}(u)),b(" normalize.undo",()=>e.undo(u)),b(" fixupEdgeLabelCoords",()=>function(n){n.edges().forEach(e=>{let t=n.edge(e);if(Object.hasOwn(t,"x"))switch("l"!==t.labelpos&&"r"!==t.labelpos||(t.width-=t.labeloffset),t.labelpos){case"l":t.x-=t.width/2+t.labeloffset;break;case"r":t.x+=t.width/2+t.labeloffset}})}(u)),b(" undoCoordinateSystem",()=>l.undo(u)),b(" translateGraph",()=>function(n){let e=Number.POSITIVE_INFINITY,t=0,r=Number.POSITIVE_INFINITY,o=0,a=n.graph(),i=a.marginx||0,s=a.marginy||0;function l(n){let a=n.x,i=n.y,s=n.width,l=n.height;e=Math.min(e,a-s/2),t=Math.max(t,a+s/2),r=Math.min(r,i-l/2),o=Math.max(o,i+l/2)}n.nodes().forEach(e=>l(n.node(e))),n.edges().forEach(e=>{let t=n.edge(e);Object.hasOwn(t,"x")&&l(t)}),e-=i,r-=s,n.nodes().forEach(t=>{let o=n.node(t);o.x-=e,o.y-=r}),n.edges().forEach(t=>{let o=n.edge(t);o.points.forEach(n=>{n.x-=e,n.y-=r}),Object.hasOwn(o,"x")&&(o.x-=e),Object.hasOwn(o,"y")&&(o.y-=r)}),a.width=t-e+i,a.height=o-r+s}(u)),b(" assignNodeIntersects",()=>function(n){n.edges().forEach(e=>{let t,r,o=n.edge(e),a=n.node(e.v),i=n.node(e.w);o.points?(t=o.points[0],r=o.points[o.points.length-1]):(o.points=[],t=i,r=a),o.points.unshift(p.intersectRect(a,t)),o.points.push(p.intersectRect(i,r))})}(u)),b(" reversePoints",()=>function(n){n.edges().forEach(e=>{let t=n.edge(e);t.reversed&&t.points.reverse()})}(u)),b(" acyclic.undo",()=>n.undo(u))}(O,S,_)),S(" updateInputGraph",()=>function(n,e){n.nodes().forEach(t=>{let r=n.node(t),o=e.node(t);r&&(r.x=o.x,r.y=o.y,r.rank=o.rank,e.children(t).length&&(r.width=o.width,r.height=o.height))}),n.edges().forEach(t=>{let r=n.edge(t),o=e.edge(t);r.points=o.points,Object.hasOwn(o,"x")&&(r.x=o.x,r.y=o.y)}),n.graph().width=e.graph().width,n.graph().height=e.graph().height}(E,O))})};let b=["nodesep","edgesep","ranksep","marginx","marginy"],m={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},f=["acyclicer","ranker","rankdir","align"],g=["width","height","rank"],h={width:0,height:0},v=["minlen","weight","width","height","labeloffset"],x={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},w=["labelpos"];function y(n,e){return p.mapValues(p.pick(n,e),Number)}function k(n){var e={};return n&&Object.entries(n).forEach(([n,t])=>{"string"==typeof n&&(n=n.toLowerCase()),e[n]=t}),e}return Cf}function gg(){if(zf)return jf;zf=1;let n=Jf(),e=Uf().Graph;return jf={debugOrdering:function(t){let r=n.buildLayerMatrix(t),o=new e({compound:!0,multigraph:!0}).setGraph({});return t.nodes().forEach(n=>{o.setNode(n,{label:n}),o.setParent(n,"layer"+t.node(n).rank)}),t.edges().forEach(n=>o.setEdge(n.v,n.w,{},n.name)),r.forEach((n,e)=>{let t="layer"+e;o.setNode(t,{rank:"same"}),n.reduce((n,e)=>(o.setEdge(n,e,{style:"invis"}),e))}),o}},jf}a("/* this gets exported as style.css and can be used for the default theming */\n/* these are the necessary styles for React/Svelte Flow, they get used by base.css and style.css */\n.react-flow {\n direction: ltr;\n\n --xy-edge-stroke-default: #b1b1b7;\n --xy-edge-stroke-width-default: 1;\n --xy-edge-stroke-selected-default: #555;\n\n --xy-connectionline-stroke-default: #b1b1b7;\n --xy-connectionline-stroke-width-default: 1;\n\n --xy-attribution-background-color-default: rgba(255, 255, 255, 0.5);\n\n --xy-minimap-background-color-default: #fff;\n --xy-minimap-mask-background-color-default: rgba(240, 240, 240, 0.6);\n --xy-minimap-mask-stroke-color-default: transparent;\n --xy-minimap-mask-stroke-width-default: 1;\n --xy-minimap-node-background-color-default: #e2e2e2;\n --xy-minimap-node-stroke-color-default: transparent;\n --xy-minimap-node-stroke-width-default: 2;\n\n --xy-background-color-default: transparent;\n --xy-background-pattern-dots-color-default: #91919a;\n --xy-background-pattern-lines-color-default: #eee;\n --xy-background-pattern-cross-color-default: #e2e2e2;\n background-color: var(--xy-background-color, var(--xy-background-color-default));\n --xy-node-color-default: inherit;\n --xy-node-border-default: 1px solid #1a192b;\n --xy-node-background-color-default: #fff;\n --xy-node-group-background-color-default: rgba(240, 240, 240, 0.25);\n --xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, 0.08);\n --xy-node-boxshadow-selected-default: 0 0 0 0.5px #1a192b;\n --xy-node-border-radius-default: 3px;\n\n --xy-handle-background-color-default: #1a192b;\n --xy-handle-border-color-default: #fff;\n\n --xy-selection-background-color-default: rgba(0, 89, 220, 0.08);\n --xy-selection-border-default: 1px dotted rgba(0, 89, 220, 0.8);\n\n --xy-controls-button-background-color-default: #fefefe;\n --xy-controls-button-background-color-hover-default: #f4f4f4;\n --xy-controls-button-color-default: inherit;\n --xy-controls-button-color-hover-default: inherit;\n --xy-controls-button-border-color-default: #eee;\n --xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, 0.08);\n\n --xy-edge-label-background-color-default: #ffffff;\n --xy-edge-label-color-default: inherit;\n --xy-resize-background-color-default: #3367d9;\n}\n.react-flow.dark {\n --xy-edge-stroke-default: #3e3e3e;\n --xy-edge-stroke-width-default: 1;\n --xy-edge-stroke-selected-default: #727272;\n\n --xy-connectionline-stroke-default: #b1b1b7;\n --xy-connectionline-stroke-width-default: 1;\n\n --xy-attribution-background-color-default: rgba(150, 150, 150, 0.25);\n\n --xy-minimap-background-color-default: #141414;\n --xy-minimap-mask-background-color-default: rgba(60, 60, 60, 0.6);\n --xy-minimap-mask-stroke-color-default: transparent;\n --xy-minimap-mask-stroke-width-default: 1;\n --xy-minimap-node-background-color-default: #2b2b2b;\n --xy-minimap-node-stroke-color-default: transparent;\n --xy-minimap-node-stroke-width-default: 2;\n\n --xy-background-color-default: #141414;\n --xy-background-pattern-dots-color-default: #777;\n --xy-background-pattern-lines-color-default: #777;\n --xy-background-pattern-cross-color-default: #777;\n --xy-node-color-default: #f8f8f8;\n --xy-node-border-default: 1px solid #3c3c3c;\n --xy-node-background-color-default: #1e1e1e;\n --xy-node-group-background-color-default: rgba(240, 240, 240, 0.25);\n --xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, 0.08);\n --xy-node-boxshadow-selected-default: 0 0 0 0.5px #999;\n\n --xy-handle-background-color-default: #bebebe;\n --xy-handle-border-color-default: #1e1e1e;\n\n --xy-selection-background-color-default: rgba(200, 200, 220, 0.08);\n --xy-selection-border-default: 1px dotted rgba(200, 200, 220, 0.8);\n\n --xy-controls-button-background-color-default: #2b2b2b;\n --xy-controls-button-background-color-hover-default: #3e3e3e;\n --xy-controls-button-color-default: #f8f8f8;\n --xy-controls-button-color-hover-default: #fff;\n --xy-controls-button-border-color-default: #5b5b5b;\n --xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, 0.08);\n\n --xy-edge-label-background-color-default: #141414;\n --xy-edge-label-color-default: #f8f8f8;\n}\n.react-flow__background {\n background-color: var(--xy-background-color-props, var(--xy-background-color, var(--xy-background-color-default)));\n pointer-events: none;\n z-index: -1;\n}\n.react-flow__container {\n position: absolute;\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n}\n.react-flow__pane {\n z-index: 1;\n}\n.react-flow__pane.draggable {\n cursor: grab;\n }\n.react-flow__pane.dragging {\n cursor: grabbing;\n }\n.react-flow__pane.selection {\n cursor: pointer;\n }\n.react-flow__viewport {\n transform-origin: 0 0;\n z-index: 2;\n pointer-events: none;\n}\n.react-flow__renderer {\n z-index: 4;\n}\n.react-flow__selection {\n z-index: 6;\n}\n.react-flow__nodesselection-rect:focus,\n.react-flow__nodesselection-rect:focus-visible {\n outline: none;\n}\n.react-flow__edge-path {\n stroke: var(--xy-edge-stroke, var(--xy-edge-stroke-default));\n stroke-width: var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));\n fill: none;\n}\n.react-flow__connection-path {\n stroke: var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));\n stroke-width: var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));\n fill: none;\n}\n.react-flow .react-flow__edges {\n position: absolute;\n}\n.react-flow .react-flow__edges svg {\n overflow: visible;\n position: absolute;\n pointer-events: none;\n }\n.react-flow__edge {\n pointer-events: visibleStroke;\n}\n.react-flow__edge.selectable {\n cursor: pointer;\n }\n.react-flow__edge.animated path {\n stroke-dasharray: 5;\n animation: dashdraw 0.5s linear infinite;\n }\n.react-flow__edge.animated path.react-flow__edge-interaction {\n stroke-dasharray: none;\n animation: none;\n }\n.react-flow__edge.inactive {\n pointer-events: none;\n }\n.react-flow__edge.selected,\n .react-flow__edge:focus,\n .react-flow__edge:focus-visible {\n outline: none;\n }\n.react-flow__edge.selected .react-flow__edge-path,\n .react-flow__edge.selectable:focus .react-flow__edge-path,\n .react-flow__edge.selectable:focus-visible .react-flow__edge-path {\n stroke: var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default));\n }\n.react-flow__edge-textwrapper {\n pointer-events: all;\n }\n.react-flow__edge .react-flow__edge-text {\n pointer-events: none;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n }\n.react-flow__connection {\n pointer-events: none;\n}\n.react-flow__connection .animated {\n stroke-dasharray: 5;\n animation: dashdraw 0.5s linear infinite;\n }\nsvg.react-flow__connectionline {\n z-index: 1001;\n overflow: visible;\n position: absolute;\n}\n.react-flow__nodes {\n pointer-events: none;\n transform-origin: 0 0;\n}\n.react-flow__node {\n position: absolute;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n pointer-events: all;\n transform-origin: 0 0;\n box-sizing: border-box;\n cursor: default;\n}\n.react-flow__node.selectable {\n cursor: pointer;\n }\n.react-flow__node.draggable {\n cursor: grab;\n pointer-events: all;\n }\n.react-flow__node.draggable.dragging {\n cursor: grabbing;\n }\n.react-flow__nodesselection {\n z-index: 3;\n transform-origin: left top;\n pointer-events: none;\n}\n.react-flow__nodesselection-rect {\n position: absolute;\n pointer-events: all;\n cursor: grab;\n }\n.react-flow__handle {\n position: absolute;\n pointer-events: none;\n min-width: 5px;\n min-height: 5px;\n width: 6px;\n height: 6px;\n background-color: var(--xy-handle-background-color, var(--xy-handle-background-color-default));\n border: 1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));\n border-radius: 100%;\n}\n.react-flow__handle.connectingfrom {\n pointer-events: all;\n }\n.react-flow__handle.connectionindicator {\n pointer-events: all;\n cursor: crosshair;\n }\n.react-flow__handle-bottom {\n top: auto;\n left: 50%;\n bottom: 0;\n transform: translate(-50%, 50%);\n }\n.react-flow__handle-top {\n top: 0;\n left: 50%;\n transform: translate(-50%, -50%);\n }\n.react-flow__handle-left {\n top: 50%;\n left: 0;\n transform: translate(-50%, -50%);\n }\n.react-flow__handle-right {\n top: 50%;\n right: 0;\n transform: translate(50%, -50%);\n }\n.react-flow__edgeupdater {\n cursor: move;\n pointer-events: all;\n}\n.react-flow__pane.selection .react-flow__panel {\n pointer-events: none;\n}\n.react-flow__panel {\n position: absolute;\n z-index: 5;\n margin: 15px;\n}\n.react-flow__panel.top {\n top: 0;\n }\n.react-flow__panel.bottom {\n bottom: 0;\n }\n.react-flow__panel.top.center, .react-flow__panel.bottom.center {\n left: 50%;\n transform: translateX(-15px) translateX(-50%);\n }\n.react-flow__panel.left {\n left: 0;\n }\n.react-flow__panel.right {\n right: 0;\n }\n.react-flow__panel.left.center, .react-flow__panel.right.center {\n top: 50%;\n transform: translateY(-15px) translateY(-50%);\n }\n.react-flow__attribution {\n font-size: 10px;\n background: var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));\n padding: 2px 3px;\n margin: 0;\n}\n.react-flow__attribution a {\n text-decoration: none;\n color: #999;\n }\n@keyframes dashdraw {\n from {\n stroke-dashoffset: 10;\n }\n}\n.react-flow__edgelabel-renderer {\n position: absolute;\n width: 100%;\n height: 100%;\n pointer-events: none;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n left: 0;\n top: 0;\n}\n.react-flow__viewport-portal {\n position: absolute;\n width: 100%;\n height: 100%;\n left: 0;\n top: 0;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n}\n.react-flow__minimap {\n background: var(\n --xy-minimap-background-color-props,\n var(--xy-minimap-background-color, var(--xy-minimap-background-color-default))\n );\n}\n.react-flow__minimap-svg {\n display: block;\n }\n.react-flow__minimap-mask {\n fill: var(\n --xy-minimap-mask-background-color-props,\n var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default))\n );\n stroke: var(\n --xy-minimap-mask-stroke-color-props,\n var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default))\n );\n stroke-width: var(\n --xy-minimap-mask-stroke-width-props,\n var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default))\n );\n }\n.react-flow__minimap-node {\n fill: var(\n --xy-minimap-node-background-color-props,\n var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default))\n );\n stroke: var(\n --xy-minimap-node-stroke-color-props,\n var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default))\n );\n stroke-width: var(\n --xy-minimap-node-stroke-width-props,\n var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default))\n );\n }\n.react-flow__background-pattern.dots {\n fill: var(\n --xy-background-pattern-color-props,\n var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default))\n );\n }\n.react-flow__background-pattern.lines {\n stroke: var(\n --xy-background-pattern-color-props,\n var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default))\n );\n }\n.react-flow__background-pattern.cross {\n stroke: var(\n --xy-background-pattern-color-props,\n var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default))\n );\n }\n.react-flow__controls {\n display: flex;\n flex-direction: column;\n box-shadow: var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default));\n}\n.react-flow__controls.horizontal {\n flex-direction: row;\n }\n.react-flow__controls-button {\n display: flex;\n justify-content: center;\n align-items: center;\n height: 26px;\n width: 26px;\n padding: 4px;\n border: none;\n background: var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));\n border-bottom: 1px solid\n var(\n --xy-controls-button-border-color-props,\n var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default))\n );\n color: var(\n --xy-controls-button-color-props,\n var(--xy-controls-button-color, var(--xy-controls-button-color-default))\n );\n cursor: pointer;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n }\n.react-flow__controls-button svg {\n width: 100%;\n max-width: 12px;\n max-height: 12px;\n fill: currentColor;\n }\n.react-flow__edge.updating .react-flow__edge-path {\n stroke: #777;\n }\n.react-flow__edge-text {\n font-size: 10px;\n }\n.react-flow__node.selectable:focus,\n .react-flow__node.selectable:focus-visible {\n outline: none;\n }\n.react-flow__node-input,\n.react-flow__node-default,\n.react-flow__node-output,\n.react-flow__node-group {\n padding: 10px;\n border-radius: var(--xy-node-border-radius, var(--xy-node-border-radius-default));\n width: 150px;\n font-size: 12px;\n color: var(--xy-node-color, var(--xy-node-color-default));\n text-align: center;\n border: var(--xy-node-border, var(--xy-node-border-default));\n background-color: var(--xy-node-background-color, var(--xy-node-background-color-default));\n}\n.react-flow__node-input.selectable:hover, .react-flow__node-default.selectable:hover, .react-flow__node-output.selectable:hover, .react-flow__node-group.selectable:hover {\n box-shadow: var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default));\n }\n.react-flow__node-input.selectable.selected,\n .react-flow__node-input.selectable:focus,\n .react-flow__node-input.selectable:focus-visible,\n .react-flow__node-default.selectable.selected,\n .react-flow__node-default.selectable:focus,\n .react-flow__node-default.selectable:focus-visible,\n .react-flow__node-output.selectable.selected,\n .react-flow__node-output.selectable:focus,\n .react-flow__node-output.selectable:focus-visible,\n .react-flow__node-group.selectable.selected,\n .react-flow__node-group.selectable:focus,\n .react-flow__node-group.selectable:focus-visible {\n box-shadow: var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default));\n }\n.react-flow__node-group {\n background-color: var(--xy-node-group-background-color, var(--xy-node-group-background-color-default));\n}\n.react-flow__nodesselection-rect,\n.react-flow__selection {\n background: var(--xy-selection-background-color, var(--xy-selection-background-color-default));\n border: var(--xy-selection-border, var(--xy-selection-border-default));\n}\n.react-flow__nodesselection-rect:focus,\n .react-flow__nodesselection-rect:focus-visible,\n .react-flow__selection:focus,\n .react-flow__selection:focus-visible {\n outline: none;\n }\n.react-flow__controls-button:hover {\n background: var(\n --xy-controls-button-background-color-hover-props,\n var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default))\n );\n color: var(\n --xy-controls-button-color-hover-props,\n var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default))\n );\n }\n.react-flow__controls-button:disabled {\n pointer-events: none;\n }\n.react-flow__controls-button:disabled svg {\n fill-opacity: 0.4;\n }\n.react-flow__controls-button:last-child {\n border-bottom: none;\n }\n.react-flow__controls.horizontal .react-flow__controls-button {\n border-bottom: none;\n border-right: 1px solid\n var(\n --xy-controls-button-border-color-props,\n var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default))\n );\n }\n.react-flow__controls.horizontal .react-flow__controls-button:last-child {\n border-right: none;\n }\n.react-flow__resize-control {\n position: absolute;\n}\n.react-flow__resize-control.left,\n.react-flow__resize-control.right {\n cursor: ew-resize;\n}\n.react-flow__resize-control.top,\n.react-flow__resize-control.bottom {\n cursor: ns-resize;\n}\n.react-flow__resize-control.top.left,\n.react-flow__resize-control.bottom.right {\n cursor: nwse-resize;\n}\n.react-flow__resize-control.bottom.left,\n.react-flow__resize-control.top.right {\n cursor: nesw-resize;\n}\n/* handle styles */\n.react-flow__resize-control.handle {\n width: 5px;\n height: 5px;\n border: 1px solid #fff;\n border-radius: 1px;\n background-color: var(--xy-resize-background-color, var(--xy-resize-background-color-default));\n translate: -50% -50%;\n}\n.react-flow__resize-control.handle.left {\n left: 0;\n top: 50%;\n}\n.react-flow__resize-control.handle.right {\n left: 100%;\n top: 50%;\n}\n.react-flow__resize-control.handle.top {\n left: 50%;\n top: 0;\n}\n.react-flow__resize-control.handle.bottom {\n left: 50%;\n top: 100%;\n}\n.react-flow__resize-control.handle.top.left {\n left: 0;\n}\n.react-flow__resize-control.handle.bottom.left {\n left: 0;\n}\n.react-flow__resize-control.handle.top.right {\n left: 100%;\n}\n.react-flow__resize-control.handle.bottom.right {\n left: 100%;\n}\n/* line styles */\n.react-flow__resize-control.line {\n border-color: var(--xy-resize-background-color, var(--xy-resize-background-color-default));\n border-width: 0;\n border-style: solid;\n}\n.react-flow__resize-control.line.left,\n.react-flow__resize-control.line.right {\n width: 1px;\n transform: translate(-50%, 0);\n top: 0;\n height: 100%;\n}\n.react-flow__resize-control.line.left {\n left: 0;\n border-left-width: 1px;\n}\n.react-flow__resize-control.line.right {\n left: 100%;\n border-right-width: 1px;\n}\n.react-flow__resize-control.line.top,\n.react-flow__resize-control.line.bottom {\n height: 1px;\n transform: translate(0, -50%);\n left: 0;\n width: 100%;\n}\n.react-flow__resize-control.line.top {\n top: 0;\n border-top-width: 1px;\n}\n.react-flow__resize-control.line.bottom {\n border-bottom-width: 1px;\n top: 100%;\n}\n.react-flow__edge-textbg {\n fill: var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default));\n}\n.react-flow__edge-text {\n fill: var(--xy-edge-label-color, var(--xy-edge-label-color-default));\n}\n");var hg=i(If?Rf:(If=1,Rf={graphlib:Uf(),layout:fg(),debug:gg(),util:{time:Jf().time,notime:Jf().notime},version:Pf?Mf:(Pf=1,Mf="1.1.5")})),vg={type:Bl.ArrowClosed,width:20,height:20,color:"#FF0072"},xg={strokeWidth:2,stroke:"#FF0072"},wg=function(t){var r=t.tree,o=Xp().fitView,a=function(n){const[t,r]=e.useState(n),o=e.useCallback(n=>r(e=>Rp(n,e)),[]);return[t,r,o]}([]),i=G(a,3),s=i[0],l=i[1],d=i[2],c=function(n){const[t,r]=e.useState(n),o=e.useCallback(n=>r(e=>Ip(n,e)),[]);return[t,r,o]}([]),p=G(c,3),u=p[0],b=p[1],m=p[2];return e.useEffect(function(){if(r){var n,e=function(n,e){var t=[],r=[];return Object.keys(n).forEach(function(o,a){n[o].forEach(function(n,a){var i={id:n,flowId:n,position:{x:250,y:200*a},data:{label:String(n)}};if(0==a&&(i.type="input"),a>0){var s=r[r.length-1],l={id:s.flowId+"-"+o+"-"+a+"-"+i.flowId,source:s.flowId,target:i.flowId,animated:e,markerEnd:vg,style:xg};t.push(l)}r.push(i)})}),{nodes:r,edges:t}}(r.data,null!==(n=r.animated)&&void 0!==n&&n),t=function(n,e,t){var r=(new hg.graphlib.Graph).setDefaultEdgeLabel(function(){return{}});return r.setGraph({rankdir:t.direction,ranksep:100,nodesep:170}),e.forEach(function(n){return r.setEdge(n.source,n.target)}),n.forEach(function(n){var e,t,o,a;return r.setNode(n.id,Y(Y({},n),{},{width:null!==(e=null===(t=n.measured)||void 0===t?void 0:t.width)&&void 0!==e?e:0,height:null!==(o=null===(a=n.measured)||void 0===a?void 0:a.height)&&void 0!==o?o:0}))}),hg.layout(r),{nodes:n.map(function(n){var e,t,o,a,i=r.node(n.id),s=i.x-(null!==(e=null===(t=n.measured)||void 0===t?void 0:t.width)&&void 0!==e?e:0)/2,l=i.y-(null!==(o=null===(a=n.measured)||void 0===a?void 0:a.height)&&void 0!==o?o:0)/2;return Y(Y({},n),{},{position:{x:s,y:l}})}),edges:e}}(e.nodes,e.edges,{direction:r.orientation});l(X(t.nodes)),b(X(t.edges)),o()}},[r]),n.jsx(_b,{nodes:s,edges:u,onNodesChange:d,onEdgesChange:m,colorMode:"dark",fitView:!0,children:n.jsx(Lb,{})})};a('.file-browser {\n width: 100%;\n height: 100%;\n padding: 5px;\n color: white;\n}\n\n.file-node-row {\n width: 100%;\n min-width: 200px;\n display: flex;\n padding: 5px 0;\n font-size: 13px;\n font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;\n cursor: pointer;\n}\n\n.indent {\n height: 100%;\n}\n\n.center {\n display: flex;\n align-self: center;\n}\n\n.folder-icon {\n display: flex;\n margin-right: 5px;\n}\n\n.file-icon {\n margin-right: 5px;\n font-size: 16px;\n}\n\n.file-name {\n color: #CCC;\n}');var yg=function(n,e){e||(e=0);for(var t=[],r=0;r<n.length;r++){var o=n[r];o.level=e,t.push(o),null!=o&&o.children&&(t=t.concat(yg(o.children,e+1)))}return t};var kg=function(e){var r=e.id,o=e.node,a=e.onRowClick,i=t.useDraggable({id:r}),s=i.attributes,l=i.listeners,d=i.setNodeRef;i.transform;return n.jsxs("div",Y(Y(Y({className:"file-node-row",ref:d},l),s),{},{style:function(){if(o.selected)return{backgroundColor:"#00426b"}}(),onClick:function(){return a(o)},children:[n.jsx("div",{className:"indent",style:{width:20*o.level+"px"}}),"folder"===o.type?n.jsx("span",{className:"center folder-icon",children:o.collapsed?n.jsx(ee,{}):n.jsx(Qn,{})}):n.jsx("span",{className:"center file-icon",children:function(){switch(o.name.split(".").pop()){case"js":return n.jsx(se,{color:"#f1e05a"});case"json":return n.jsx(Zn,{color:"#fffb00"});case"scss":return n.jsx(be,{color:"#f12727"});case"py":return n.jsx(ce,{color:"#686affbd"});default:return n.jsx(oe,{color:"#ffffff"})}}()}),n.jsx("span",{className:"center file-name",children:o.name})]}))};a(".editorContainer {\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n}\n\n.tabContainer {\n width: 100%;\n height: 40px;\n}\n\n.monacoContainer {\n flex-grow: 1;\n}");a("");var Eg=function(t){var r=t.editorContent,o=e.useRef(null),a=e.useRef();return e.useEffect(function(){a.current=r,null!=o&&o.current&&a.current&&o.current.setValue(a.current)},[r]),n.jsx(Gn,{defaultLanguage:"python",defaultValue:"",onMount:function(n,e){o.current=n,null!=a&&a.current&&o.current.setValue(a.current)},theme:"vs-dark",options:{scrollBeyondLastLine:!1,fontSize:"12px",minimap:{enabled:!1}}})};Eg.propTypes={editorContent:A.string};function _g(e){var r=e.id,o=e.label,a=e.onSelectTab,i=t.useDraggable({id:r}),s=i.attributes,l=i.listeners,d=i.setNodeRef;return i.transform,n.jsx("div",Y(Y(Y({ref:d,id:r,onClick:a,className:"tab"},l),s),{},{children:o}))}function Sg(e){var r=e.id,o=t.useDroppable({id:r}),a=o.setNodeRef,i=o.isOver;return n.jsx("div",{className:"gutter",ref:a,style:{background:i?"white":"#4da3ff33"}})}a(".tabs {\n display: flex;\n flex-direction: row;\n background-color: #1e1e1e;\n height: 100%;\n width: 100%;\n}\n\n.tab {\n padding: 0px 20px;\n background-color: #2d2d2d;\n color: #fff;\n cursor: pointer;\n height: 40px;\n display: flex;\n align-items: center;\n}\n\n.gutter {\n height: 40px;\n width: 1px;\n}");var Og=function(t){t.activeTab;var r=t.tabs,o=t.selectTab,a=G(e.useState(),2),i=a[0],s=a[1];return e.useEffect(function(){if(r){var e=[];r.forEach(function(t,r){e.push(n.jsxs(n.Fragment,{children:[n.jsx(Sg,{id:t.id}),n.jsx(_g,Y({onSelectTab:o},t),t.id)]}))}),s(e)}},[r]),n.jsx("div",{style:{display:"flex",background:"#222425"},children:i})};Og.propTypes={};var Cg=function(t){t.systemTree,t.onFileSelect;var r=G(e.useState("asdf"),2),o=r[0],a=r[1],i=G(e.useState(),2),s=i[0],l=i[1],d=G(e.useState([{id:"tab1",label:"Tab 1"},{id:"tab2",label:"Tab 2"},{id:"tab3",label:"Tab 3"}]),2),c=d[0];d[1],e.useEffect(function(){s&&a(c[s-1].label)},[s]),e.useEffect(function(){c&&(s&&s>c.length||null==s)&&l(c.length)},[c]);return n.jsxs("div",{className:"editorContainer",children:[n.jsx("div",{className:"tabContainer",children:n.jsx(Og,{activeTab:1,tabs:c,selectTab:function(n){var e=c.findIndex(function(e){return e.id===n.target.id});l(e+1)}})}),n.jsx("div",{className:"monacoContainer",children:n.jsx(Eg,{editorContent:o})})]})};Cg.propTypes={systemTree:A.object,onFileSelect:A.func},exports.Editor=Cg,exports.FileBrowser=function(t){var r=t.tree,o=t.onNodeSelect,a=G(e.useState([]),2),i=a[0],s=a[1],l=e.useRef(),d=function(n){var t=e.useRef(n);return e.useLayoutEffect(function(){t.current=n}),e.useCallback(function(){return t.current.apply(t,arguments)},[])}(function(n){!function(n,e){n.forEach(function(n){n.selected=!1}),e.selected=!0,e.collapsed=!e.collapsed}(l.current,n),c(),o&&o(n)});e.useEffect(function(){l.current=yg(r),function(n){n.forEach(function(n){n.collapsed=!1})}(l.current),c()},[]);var c=function(){var e=function(n){for(var e,t,r=[],o=0;o<n.length;o++){if(e){if(!(n[o].level<=t))continue;e=!1}n[o].collapsed&&(e=!0,t=n[o].level),r.push(n[o])}return r}(l.current),t=[];e.forEach(function(e){t.push(n.jsx(kg,{node:e,id:e.name,onRowClick:d},e.id))}),s(t)};return n.jsx("div",{className:"file-browser",children:i})},exports.FlowDiagram=function(t){var r=t.treeInfo,o=G(e.useState(),2),a=o[0],i=o[1];return e.useEffect(function(){i(r)},[r]),n.jsx(wb,{children:n.jsx(wg,{tree:a})})},exports.StackList=V,exports.Viewer=Co;
47
47
  //# sourceMappingURL=index.js.map